本次安裝環(huán)境是: centos 5.4 X86_64位
Server:
1.先安裝ruby語言包、ruby標準庫、ruby shadow庫
yum
install -y ruby ruby-libs ruby-shadow
2.需要添加EPRL庫,來支持puppet
wget
http:// dl.fedoraproject.org
/pub/epel/5Server/x86_64/epel-release-5-4.noarch.rpm
如果你的系統(tǒng)是centos
6版本的或者是centos 5版本但是是32位的,可以到網(wǎng)站:
dl.fedoraproject.org查找你們想要的
3.在master主機上,需要從EPEL倉庫安裝puppet、puppet-server facter
rpm
-Uvh epel-release-5-4.noarch.rpm
puppet軟件包含了agent程序,puppet-server軟件包含了master程序,facter軟件包含了系統(tǒng)盤點工具facter,可以獲取agent主機的相關(guān)信息
yum
install -y puppet puppet-server facter
之后啟動puppet
master
service puppetmaster start
啟動puppetmaster:[確定]
這樣,puppet
server上的安裝算是完成了
現(xiàn)在,master和agent都安裝好了,解釋一下/etc/puppet/下的文件含義:
Puppet.conf
puppet的服務(wù)端配置文件
Auth.conf client訪問puppet server的acl配置文件
Fileserver.conf puppet server作為文件
服務(wù)器的ACL配置文件
Manidests puppet的腳本目錄文件目錄
Site.pp文件告訴puppet去哪里尋找并載入指定的客戶端配置,如果缺少此文件,puppet會啟動失敗的
防火墻設(shè)置:
-A
RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8140 -j ACCEPT
需要重啟防火墻,service
iptables restart
配置好防火墻后,就可以允許client訪問puppet
配置第一個agent
Client:
同樣需要安裝epel-release-5-4.noarch.rpm
下載:wget http://dl.fedoraproject.org/pub/epel/5Server/x86_64/epel-release-5-4.noarch.rpm
rpm -ivh epel-release-5-4.noarch.rpm
在agent端只需要安裝:
yum install puppet facter
Client
請求:puppet
agent --server=puppet.xxxx.com(puppet master域名) --verbose --no-daemonize
解釋:參數(shù)
--server指定了需要連接puppet master的域名或者主機名,盡量使用域名吧,否則不同網(wǎng)絡(luò)之間無法通過主機名相通
--no-daemonize使得puppet客戶端運行在前端并輸出日志到標準輸出
--verbose使客戶端輸出更詳細的日志
Server端需要相應(yīng)這個請求:
查看:puppet cert –list
"shwt08" (94:BC:4A:FA:31:E1:10:9F:3C:4D:B3:E8:CB:A4:F8:B9)
puppet
cert --sign shwt08
notice: Signed certificate request for
shwt08
notice: Removing file Puppet::SSL::CertificateRequest
shwt08 at '/var/lib/puppet/ssl/ca/requests/shwt08.pem'
當然,如果我們有很多個client的話,都需要一個個去認證確實是一件很麻煩的事情,所以,修改puppet.conf文件,實現(xiàn)自動化認證
在全局”[mian]”下添加一行:
autosign
= true
重啟master
service
puppetmaster restart
重新添加一個clint,驗證
需要先去wget后需要編輯/etc/hosts
之后puppet agent
--server=puppet.xxxx.com --no-daemonize –verbose發(fā)現(xiàn)是沒有問題的
創(chuàng)建第一個配置:
在master上修改兩個文件:
目錄/etc/puppet/manifests下:
nodes.pp site.pp 如果沒有這兩個文件就手工建吧
vi nodes.pp
node
default {
file{"/root/vol_disk_check.sh":
source => "puppet:///files/vol_disk_check.sh",
owner => "root",
group => "root",
mode => 755;
}
}
Vi site.pp
import
'nodes.pp'
至于具體的解釋說明,等下章再詳細的解釋下,這篇文章主要來闡明puppet安裝及簡易同步文件的效果
測試來同步一個文件
puppet
agent --server=puppet.xxxx.com --test -v
ok,從詳細信息中,得知client已經(jīng)同步文件了
下面說遇到的兩個錯誤:
錯誤1:
err: Could not retrieve catalog from remote
server: hostname not match with the server certificate
解決辦法:
在master和client上查看是否二者日期不同步
在client上配置/etc/hosts文件,編輯添加puppet.xxxx.com 解析(IP 域名)
錯誤2:
err:
Could not retrieve catalog from remote server: Connection refused - connect(2)
解決辦法:
這個是因為master上的主程序沒有啟動的緣故,到master上查看程序puppetmaster發(fā)現(xiàn)提示進程已死,
service
puppetmaster status
puppetmasterd已死,但 pid文件仍存
查看了下配置文件,發(fā)現(xiàn)是在修改fileserver.conf時修改錯誤導(dǎo)致的,也就是說當遇到這個錯誤提示的時候,要查看/etc/puppet目錄下的主配置文件是否有問題
文件fileserver.conf中:[files]
path /var/lib/puppet/files
這個path下是放置我們要同步更新的文件
網(wǎng)站欄目:puppet學(xué)習(xí)(一:安裝及簡單實例應(yīng)用)
分享地址:http://jinyejixie.com/article2/jopdoc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供、網(wǎng)站導(dǎo)航、網(wǎng)站營銷、商城網(wǎng)站、服務(wù)器托管、品牌網(wǎng)站建設(shè)
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源:
創(chuàng)新互聯(lián)