溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

puppet 初識(shí)

發(fā)布時(shí)間:2020-05-26 08:49:03 來(lái)源:網(wǎng)絡(luò) 閱讀:872 作者:cuizhiliang 欄目:編程語(yǔ)言

【puppet初識(shí)】

學(xué)習(xí)目錄  領(lǐng)導(dǎo)說(shuō)saltstack太慢 機(jī)器量一旦上來(lái),saltstack就力不從心,所以要將saltstack轉(zhuǎn)向puppet。



【安裝背景】

系統(tǒng)centos 6.5


軟件地址:

http://downloads.puppetlabs.com/puppet/



master: 192.168.100.10

agent: 192.168.100.13

因?yàn)閜uppet對(duì)ca證書(shū)的辦法是很對(duì)域名了。所以域名一定要解析并且master端最好不要變。

【安裝步驟】


時(shí)鐘同步

ntpdate pool.ntp.org


設(shè)置hostname并放入hosts解析

echo "192.168.100.10  master.test.com" >> /etc/hosts
echo "192.168.100.13  agent.test.com" >> /etc/hosts



puppet端master和agent端的安裝:

puppet是基于ruby的,所以首先要安裝ruby語(yǔ)言環(huán)境。

yum install ruby -y


安裝facter -->收集系統(tǒng)信息的軟件命令

################# master 和agent 共同的步驟 #############

tar xvf facter-1.6.13.tar.gz 

cd facter-1.6.13

ruby install.rb 


## 檢查facter安裝是否成功

facter 收集系統(tǒng)的信息的命令工具



tar xvf puppet-3.0.0.tar.gz 

cd puppet-3.0.0

ruby install.rb 






創(chuàng)建puppet 用戶否則啟動(dòng)失敗

useradd  puppet



######################## master 拷貝配置

[root@master puppet-3.0.0]# pwd

/usr/local/src/puppet-3.0.0

[root@master puppet-3.0.0]# cp ext/redhat/server.init /etc/init.d/puppetmaster 

[root@master puppet-3.0.0]# chmod 755 /etc/init.d/puppetmaster 


cp ext/redhat/puppet.conf  /etc/puppet/

######################## agent 拷貝配置

[root@agent puppet-3.0.0]# cp  ext/redhat/client.init  /etc/init.d/puppetclient

[root@agent puppet-3.0.0]# chmod 755 /etc/init.d/puppetclient






##### master啟動(dòng)

/etc/init.d/puppetmaster start


#### master啟動(dòng)檢測(cè)

[root@master puppet-3.0.0]# ps -ef |grep ruby

puppet   10915     1  1 16:34 ?        00:00:01 /usr/bin/ruby /usr/bin/puppet master

root     11272  6458  0 16:36 pts/0    00:00:00 grep --color=auto ruby

[root@master puppet-3.0.0]# netstat -tulnp |grep ruby

tcp        0      0 0.0.0.0:8140                0.0.0.0:*                   LISTEN      10915/ruby 




##### agent 啟動(dòng)

[root@agent puppet-3.0.0]# /etc/init.d/puppetclient start

Starting puppet agent:     



#### agent 啟動(dòng)檢測(cè)

[root@agent puppet-3.0.0]# ps -ef |grep ruby

root      5623     1  5 16:40 ?        00:00:02 /usr/bin/ruby /usr/bin/puppet agent





############## agent 請(qǐng)求證書(shū) master簽發(fā)證書(shū)  


agent request   agent端向maser端發(fā)起證書(shū)請(qǐng)求 puppet agent --test --server master.test.com

master accept    puppet cert sign  agent.test.com  接收指定的 puppet cert sign --all 接收所有的請(qǐng)求

agent fetch 



過(guò)程1

[root@agent puppet-3.0.0]# puppet agent --test --server master.test.com 

Info: Caching certificate for ca

Info: Creating a new SSL certificate request for agent.test.com

Info: Certificate Request fingerprint (SHA256): DB:AC:CB:4E:FC:68:E3:71:B5:45:6E:6C:73:C9:EE:27:11:0F:2D:5A:8F:43:21:53:0D:33:7F:85:87:4B:0E:59

Exiting; no certificate found and waitforcert is disabled

[root@agent puppet-3.0.0]# 



過(guò)程2:

master端已經(jīng)有這個(gè)請(qǐng)求了 接受就可以了

[root@master puppet]# puppet cert list  或者 puppet cert list --all        

  "agent.test.com" (SHA256) DB:AC:CB:4E:FC:68:E3:71:B5:45:6E:6C:73:C9:EE:27:11:0F:2D:5A:8F:43:21:53:0D:33:7F:85:87:4B:0E:59

[root@master puppet]# 


接收證書(shū):

[root@master puppet]# puppet cert sign  agent.test.com

Signed certificate request for agent.test.com

Removing file Puppet::SSL::CertificateRequest agent.test.com at '/var/lib/puppet/ssl/ca/requests/agent.test.com.pem'




過(guò)程3:

agent端測(cè)試

puppet agent --test --server master.test.com





############### 出錯(cuò)過(guò)程 ##########

[root@agent puppet-3.0.0]# puppet  agent --test                  

Error: Could not request certificate: Connection refused - connect(2)

Exiting; failed to retrieve certificate and waitforcert is disabled




我這里的原因是 agent的使用的都是默認(rèn)配置 沒(méi)有知道指定master 解決方法:

puppet agent --test --server master.test.com


排除了網(wǎng)絡(luò)問(wèn)題的命令: telnet master.test.com 8140



####### 寫一個(gè)測(cè)試用例 測(cè)試 master 和 agnet可以通信了 及 master可以管理agent端了   agent可以同步master端了


master端編寫一個(gè)測(cè)試pp

[root@master manifests]# cat site.pp

file { "/tmp/temp1.txt":

      content => "Hello World\n"; }

[root@master manifests]# pwd

/etc/puppet/manifests



### agent 進(jìn)行同步

[root@agent puppet-3.0.0]# puppet agent --test --server master.test.com

Info: Retrieving plugin

Error: /File[/var/lib/puppet/lib]: Could not evaluate: Could not retrieve information from environment production source(s) puppet://master.test.com/plugins

Info: Caching catalog for agent.test.com

Info: Applying configuration version '1480151413'

/Stage[main]//File[/tmp/temp1.txt]/ensure: defined content as '{md5}e59ff97941044f85df5297e1c302d260'

Finished catalog run in 0.04 seconds

[root@agent puppet-3.0.0]# cat /tmp/temp1.txt 

Hello World

[root@agent puppet-3.0.0]# 




上面錯(cuò)誤的信息原因:

Error: /File[/var/lib/puppet/lib]: Could not evaluate: Could not retrieve information from environment production source(s) puppet://master.test.com/plugins


不影響: 原因未知  







【puppet清楚證書(shū)】

master端:

[root@shzr-vctr001 user]# puppet cert --clean shzr-vapp015.a.pa.com

Notice: Revoked certificate with serial 14

Notice: Removing file Puppet::SSL::Certificate shzr-vapp015.a.pa.com at '/var/lib/puppet/ssl/ca/signed/shzr-vapp015.a.pa.com.pem'

Notice: Removing file Puppet::SSL::Certificate shzr-vapp015.a.pa.com at '/var/lib/puppet/ssl/certs/shzr-vapp015.a.pa.com.pem'



client端:

\rm -r  /var/lib/puppet/ssl/


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI