CentOS 6/7 安裝 Puppet agent

環境

先定義好 Puppet master 和 agent 的環境:

  • Operating system: CentOS 6

  • Master

    • IP Address: 192.168.10.10

    • Domain : master.puppet.com

  • Agent

    • IP Address: 192.168.10.12

    • Domain : centos.puppet.com

安裝

  1. Puppet agent 一樣要定義 Domain,測試可以先寫在 hosts

    $ cat /etc/hosts
    192.168.10.10 master.puppet.com
    192.168.10.11 centos.puppet.com
    
  2. Puppet agent 必須準確校時。

    $ sudo ntpdate time.stdtime.gov.tw
    $ sudo timedatectl set-timezone Asia/Taipei
    
  3. 安裝 Puppet agent

    從官方 repository(apt/yum) 取得 Puppet package。

    $ wget https://yum.puppetlabs.com/puppet5/puppet5-release-el-6.noarch.rpm
    $ sudo rpm -ivh puppet5-release-xenial.deb
    $ sudo yum install puppet-agent -y
    
  4. 修改 Puppet 的主要設定檔 puppet.conf

    sudo vim /etc/puppetlabs/puppet/puppet.conf
    
    [main]
     certname = centos.puppet.com
     server = master.puppet.com
     environment = dev
     runinterval = 2h
    

    這邊和 master 不同之處在於:

    • environment: 這台 node 是屬於哪個環境,所以 Puppet master 可以同時管理 dev/staging/production/pre-production 等環境。

    • runinterval: 當啟動 puppet daemon 時,會按照設定的時間定時和 master 更新 config,預設為 30m。

    • Puppet agent 產生 certificate
  5. Puppet agent 產生 certificate

    $ sudo /opt/puppetlabs/bin/puppet agent --test
    

    這個動作會嘗試將 certificate 和 Master 進行 signin。

  6. 在 Puppet master signin ubuntu.puppet.com 這個 node,否則會無法取得 catalog。

    $ sudo /opt/puppetlabs/bin/puppet cert sign agent.puppet.com
    
  7. 回到 Agent 再跑一次 puppet agent -t 來測試和 master 的溝通

    $ sudo /opt/puppetlabs/bin/puppet agent -t
    ...  
    ...
    Info: Applying configuration version '1503680249'
    

出現 Applying configuration version 代表能成功要到 catalog。

  1. 啟動 puppet agent daemon 常駐。

    $ sudo systemctl start puppet
    $ sudo systemctl enable puppet
    

當 Puppet master / agent 搞定之後就可以開始寫 manifests(倉儲) 啦 !!

results matching ""

    No results matching ""