環境:CentOS 6.5 x86_64
安裝依賴環境:
ruby 1.8:yum安裝
ruby gem:yum安裝
openssl:yum安裝
gcc 編譯環境:yum安裝

2. 安裝好後可以安裝 hiera、facter、puppet了。
下載下傳源碼包。
puppet官方源碼包下載下傳位址: https://downloads.puppetlabs.com/
hiera版本:1.3.4
facter版本:2.4.5
puppet版本:3.8.5
報錯,gem裡面的json軟體包沒有安裝。
我這裡選擇用yum的方式安裝 rubygem-json ,首選要安裝puppet 的源。
可以正常運作了。
3. 配置puppet 服務腳本
可以正常啟動。
其實puppet的安裝 本人在這裡并不推薦使用源碼的方式來安裝,反倒推薦使用puppetlabs官方的源來yum安裝。另外後續的mCollective以及其依賴 也可以通過官方的源來安裝。
1,安裝puppetlabs官方yum源
2,安裝ruby環境,和ruby-gems (必須是1.8.7版本)
3,安裝puppet 用戶端(會自動處理依賴關系)
用戶端的服務腳本為/etc/init.d/puppet
4,安裝puppet master服務端(注意如果主機上安裝有epel源,那麼epel源也有個puppet服務端,不過是很老的版本,包名叫做puppetserver,在這裡不适用,可不要安裝錯了!)
服務端的服務腳本為/etc/init.d/puppetmaster 注意區分。
安裝完成!
另外,我這裡推薦主機的FQDN名稱記錄到相應的DNS記錄中。那樣你用facter擷取到的fqdn才是主機的真實fqdn。 我遇到過這樣的情況,用戶端在向puppet server申請證書的時候,使用的是fqdn前面的主機名(例如設定hostname為server1.localdomain,那麼向master發送的證書是server1,并不是server1.localdomain),結果我搞了好久,發現facter中的domain值沒有擷取到,facter fqdn出來的結果也隻是server1 ,結果檢視了源代碼,發現最好把hostanme設定為DNS中存在的主機, 實驗環境下可以在/etc/resolv.conf 中添加一條 domain localdomain,強制指定domain字段。