(第一篇) 針對複雜 IT 架構:中央跨平台自動更新設置提高效率 – Master/Agent 安裝篇
之前在 IT 方案之中,曾經介紹過一套 Puppet Open Source 的中央跨平台自動設置系統,筆者對此方案感到十分之有興趣,所以上了 Puppet Lab 官方網站研究 Open Source 版本如何部署。
因為是 Master/Agent 架構,筆者會於 VMware Workstation 11 之中安裝兩台 Centos 7.1 先作簡單測試。
Master 和 Agent 測試網絡環境
Master:
網絡地址:192.168.1.230
電腦名稱:master.abc.com
FQDN: master.abc.com
Agent:
網絡地址:192.168.1.231
電腦名稱:agent.abc.com
FQDN: agent.abc.com
FQDN 查詢
Puppet 需要依靠 FQDN 進行查詢,所以會以 DNS 來查詢 FQDN,但因為本次教學內部沒有架設 DNS 伺服器,因此要更改兩台 CentOS 7.1 的 /etc/hosts 檔案進行 FQDN 查詢。
192.168.1.230 master master.abc.com
192.168.1.231 agent agent.abc.com
請測試是否能以 FQDN 進行 ping 測試。
關掉 firewalld 及 SELinux
我們測試前先在兩台 CentOS 7.1 關掉防火牆及 SELinux,以免出現問題:
systemctl stop firewalld
systemctl disable firewalld
vi /etc/selinux/config
SELINUX=disabled
跟著重新啟動 CentOS 7.1。
reboot
備注:防火牆需要開啟 TCP 8140 端口,以下是 iptables 和 firewalld 指令作參考:
於 /etc/sysconfig/iptables 加入 -A INPUT -m state –state NEW -m tcp -p tcp –dport 8140 -j ACCEPT
firewall-cmd –permanent –zone=public –add-port=8140/tcp
firewall-cmd –reload
Master 安裝步驟
Step 1:開始時請先使用 root 帳號登入,然後使用以下指令安裝 puppet release 套件。
rpm -ivh https://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm
Step 2:使用 yum 安裝 puppet server。
yum install puppet-server
Step 3:以下指令檢查 puppet-server 套件是否最新版本。
puppet resource package puppet-server ensure=latest
Step 4:Master 預設是默認 puppet 名稱給 agent 查詢更新,我們要更改為 FQDN,請輸入 vi /etc/puppet/puppet.conf,於 [main] 內加入以下文字。
dns_alt_names = master,master.abc.com
Step 5:接著重新啟動 puppet-server 服務
systemctl start puppetmaster
systemctl enable puppetmaster
Agent 安裝步驟
Step 1:同樣使用 root 帳號登入,然後使用以下指令安裝 puppet release 套件。
rpm -ivh https://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm
Step 2:使用 yum 安裝 puppet agent。
yum install puppet
Step 3:以下指令檢查 puppet 套件是否最新版本。
puppet resource package puppet-server ensure=latest
Step 4:因為 agent 需要知道 Master 的位置才能查詢有沒有更新,請輸入 vi /etc/puppet/puppet.conf,於 [agent] 內加入以下文字。
server = master.abc.com
Agent 預設查詢更新時間為 30 分鐘,想在 30 秒內查詢更新的話,可於 [agent] 內加入以下文字。
runinterval = 30
Step 5:接著重新啟動 puppet 服務
systemctl start puppet
systemctl enable puppet
下一篇教大家如何將 agent 連接 master,然後教大家在 master 的 manifests 寫一個簡單 Puppet 程式給 agent 新增使用者帳戶及安裝 Apache 服務。
(第一篇) 針對複雜 IT 架構:中央跨平台自動更新設置提高效率 – Master/Agent 安裝篇
https://www.facebook.com/hkitblog