Puppet的目錄是讓管理員只集中於要管理的目標,而忽略實現的細節。Puppet便可以運行在單機上,也能夠以C/S結構使用。在大規模使用puppet的狀況下,一般使用C/S結構,在這種結構中puppet客戶端只運行puppeclient,puppet服務端只運行puppemaster。node
服務器端的puppetmaster經過fast工具分析檢測客戶端的主機名,而後找到項目的主配置文件manifest裏面對應的node配置,並對該部份內容進行解析,fast發送過來的信息能夠做爲變量處理.vim
爲了保證安全,Client和Master之間是基於SSL和證書Puppet會讓系統保持在人們所指望的某種狀態並一直維持下去,如檢測某個文件並保證其一直存在,保證SSH服務始終開啓,若是文件被刪除了或者ssh服務關閉了,puppet下次執行時(默認30分鐘)會從新建立該文件或者啓動SSH服務安全
服務器名稱(主機名) | IP地址 | 須要的軟件 |
---|---|---|
NTPserver | 192.168.10.11 | NTPserver |
puppetmaster | 192.168.10.12 | ntpdate |
puppetclient1 | 192.168.10.16 | ntpdate、puppet |
puppetclient2 | 192.168.10.17 | ntpdate、puppet |
修改NTP服務器主機名稱服務器
vim /etc/hostname NTPserver init 6
全部服務器關閉防火牆和安全功能運維
systemctl stop firewalld.service setenforce 0
NTPserver配置dom
yum install ntp -y #安裝NTP vim /etc/ntp.conf #編輯配置文件 server 127.127.1.0 fudge 127.127.1.0 stratum 8 systemctl enable ntpd.service systemctl start ntpd.service #開啓ntpd服務 ntpstat //查看時間同步狀態
修改puppetmaster服務器主機名指定hosts文件ssh
vim /etc/hostname # 修改主機名稱 puppetmaster.localdomain vim /etc/hosts #修改hosts文件 192.168.10.12 puppetmaster 192.168.10.17 puppetclient1 192.168.10.18 puppetclient2 init 6 # 重啓 yum install ntpdate -y #安裝ntp客戶端 ntpdate 192.168.10.11 #進行時間同步 yum install puppet-server -y #安裝puppet服務端 systemctl enable puppetmaster.service systemctl start puppetmaster.service #啓動puppet主程序
puppetclient1,puppetclient2配置,步驟相同ide
vim /etc/hostname # 修改主機名稱 puppetmaster.localdomain vim /etc/hosts #修改hosts文件 192.168.10.12 puppetmaster 192.168.10.17 puppetclient1 192.168.10.18 puppetclient2 init 6 # 重啓 yum install ntpdate -y #安裝ntp客戶端 ntpdate 192.168.10.11 #進行時間同步 yum -y install puppet #安裝puppet客戶端 vim /etc/puppet/puppet.conf #修改配置文件 [main] server = puppetmaster #指明puppetmaster ......
puppetclient端:工具
puppet agent --server=puppetmaster --no-daemonize --verbose #申請註冊
3d
puppet cert --list #查看申請
對未註冊的進行註冊:
puppet cert sign --all #對未註冊的進行註冊
ll /var/lib/puppet/ssl/ca/signed/ #經過目錄查看已經註冊的客戶端