溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

centos7 簡單安裝puppet

發布時間:2020-07-13 11:21:21 來源:網絡 閱讀:8399 作者:bworld 欄目:編程語言

1,安裝puppet注意:客戶端和服務器版本盡量保持一致,如果不能一致,客戶端的version也不能太舊,服務端的version不能低于client端


安裝及簡單配置步驟:

安裝準備(server&client端適用):

    首先,要更改計算機名:hostname puppet.nn.local  或者:hostname -F /etc/hostname (這個文件里寫上你的計算機名,如果不存在自己創建一個)


    其次,更改/etc/hosts文件,這個很重要.(最好把agent端也寫進去) 確保兩端能ping 通     如:

                192.168.1.1   puppet.nn.local     //server 端

                192.168.1.2   agent.nn.local    //agent端


     然后,關掉 iptables 和  selinux 

                   iptables -F (或者放開8140端口:iptables -A INPUT -p tcp -m state --state  NEW -s 192.168.1.0/24 --dport 8140 -j ACCEPT)       

                   setenforce 0 或者修改/etc/selinux/config 里的 enforce改為disabled       -----》  reboot your computer


    最后,一定要保證server與client的時間一直,否則,client獲取證書時會出錯。適用ntp服務是最好的選擇,我是將ntp的服務端安裝在了puppet上(實驗環境,生產環境不推薦)



    最好使用各版本的包管理器來安裝,下面的安裝方法是使用redhat系的系統來安裝

 a, 先安裝epel的源,下載地址:https://fedoraproject.org/wiki/EPEL/zh-cn,選擇自己的版本下載。如:epel-release-7.noarch.rpm

        安裝: rpm -Uvh epel-release-7.noarch.rpm   然后:yum update


b,安裝ruby及ruby庫:

       yum -y install ruby ruby-libs ruby-shadow(puppet需要)


c,安裝puppet服務端:

     yum -y  install puppet(client端) puppet-server facter(相當于資產管理的一個東西,能自動匯報或者獲取客戶端信息(如,軟件環境,操作系統等))

*****將puppetmaster(主程序)加入開機啟動項:

          RHEL7之前版本:chkconfig --level 3 5 on puppetmaster

          RHEL7: systemctl enable puppetmaster.service


d,配置server端

    puppet的主配置文件為:/etc/puppet/puppet.conf   

    添加如下內容:

                            [master]

                            certname=puppet.nn.local     //服務端的名字

   更改 證書保存地址,建議放在 /var/puppet/ssl    (/var/puppet/  文件夾需要手動創建,并將擁有者改為:puppet用戶和組)

                            [main]

                            ssldir=/var/puppet/ssl

   保存退出


 創建 /etc/puppet/manifests/site.pp 文件,如果有就不用創建,如果沒有請創建,這個文件關系到puppetmaster能否啟動。

 

 啟動: service puppetmaster start(RHEL7: systemctl start puppetmaster.service), 第一次啟動建議使用:puppet master --verbose --no-daemonize 能夠看到詳細的信息。



e,配置client端:

    

   client的配置文件同樣是:/etc/puppet/puppet.conf

    添加如下內容:

                           [agent]

                            certname=agent.nn.local 

                            server=puppet.nn.local

                            report=true

     更改ssldir選項如server端一樣

                            [main]

                            ssldir=/var/puppet/ssl    

  保存退出

   

   啟動: service puppet start   或者  systemctl    start  puppet.service (RHEL7)


f, 測試:

   

       客戶端:

                        puppet agent --server=puppet.nn.local --verbose --no-daemonize  --debug   (如果server端是no-daemonize模式啟動的,client也要加上這個選項)

                         這個指令的作用是將puppet agent不用守護進程的模式啟動,好處是能看到與服務器端的通信及證書簽名的過程,方便debug。 默認puppet每2分鐘向服務器端申請一次簽名

                        直到獲得服務器端發來的經過簽名的證書才 start agent 服務。也可以通過--waitforcert=time 來設置等待時間,如果time為0 則不等待

     服務端:

                         查看客戶端的簽名申請: puppet cert --list

                         給客戶端簽名:puppet cert --sign agent.nn.local

                         清除用戶證書:puppet cert --clean agent.nn.local    (client端要同時刪除證書:rm -rf /var/puppet/ssl/agent.nn.local)

g,完事 ,著重提醒:你的防火墻,多數故障是由它造成的,至少我遇到的問題是這樣的,如: no route to host之類的東西。

參考資料:《精通puppet》

                         


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女