1. 程式人生 > >自動化運維之部署Puppet

自動化運維之部署Puppet

也會 出錯 小時 軟件 term ast 周期 分享 image

  • PUPPET簡介
  • puppet是一種Linux、Unix、windows平臺的集中配置管理系統,使用自有的puppet描述語言,可管理配置文件、用戶、cron任務、軟件包、系統服務等。puppet把這些系統實體稱之為資源,puppet的設計目標是簡化對這些資源的管理以及妥善處理資源間的依賴關系。
    puppet采用C/S星狀的結構,所有的客戶端和一個或幾個服務器交互。每個客戶端周期的(默認半個小時)向服務器發送請求,獲得其最新的配置信息,保證和該配置信息同步。每個puppet客戶端每半小時(可以設置)連接一次服務器端, 下載最新的配置文件,並且嚴格按照配置文件來配置客戶端. 配置完成以後,puppet客戶端可以反饋給服務器端一個消息. 如果出錯,也會給服務器端反饋一個消息.

    ?
    ?

    • 部署環境

    技術分享圖片

    ?

    主機名 IP 主要服務
    master.test.cn 192.168.200.128 puppet 、ntpd
    client129.test.cn 192.168.200.129 puppet 、ntpd
    client130.test.cn 192.168.200.130 puppet 、ntpd
    NTP server 192.168.200.131 ntpd

    ?
    安裝步驟
    ?

    • 1:配置NTP 服務器時間同步

      # systemctl stop firewalld
      # setenforce 0
      
      # vim /etc/ntp.conf   //末尾添加 根據自己網段更改
      server 127.127.200.0
      fudge 127.127.200.0 stratum 8
      
      # systemctl start ntpd   

    ?

    • 2:Master服務器

      # setenforce 0
      # systemctl stop firewalld
    • 修改主機名

      # vim /etc/hostname
       master.test.cn
    • 修改host文件

      # vim /etc/hosts
      192.168.200.128 master.test.cn
      192.168.200.129 client129.test.cn
      192.168.200.130 client130.test.cn
    • 時間同步

      # yum -y install ntpdate
      # ntpdate 192.168.200.131
    • 安裝puppet控制端

      # yum -y install puppet-server
      # systemctl enable puppetmaster.service
      # systemctl start puppetmaster.service

    ?
    ?

    • 3:client服務器(兩臺配置相同)

      # setenforce 0
      # systemctl stop firewalld
    • 修改主機名

      # vim /etc/hostname
      兩臺分別為:
      client129.test.cn
      client130.test.cn
    • 修改host文件

      # vim /etc/hosts
      192.168.200.128 master.test.cn
      192.168.200.129 client.test.cn
      192.168.200.130 client130.test.cn
    • 時間同步

      # yum -y install ntpdate
      # ntpdate 192.168.200.131
    • 安裝配置

      # yum -y install puppet
      # vim /etc/puppet/puppet.conf
          server = master.test.cn
    • 4:在客戶端進行註冊

      # puppet agent --server=master.test.cn --no-daemonize --verbose          //申請CA//  
    • 5:在master

      # puppet cert --list     //查看申請註冊的客戶端
      
      # puppet cert sign --all    //對未註冊的客戶端進行註冊
      
      # ll /var/lib/puppet/ssl/ca/signed/    //通過目錄查看已經註冊的客戶端

    自動化運維之部署Puppet