批量運維神器PUPPET之環境部署

2021-08-08 11:43:17 字數 2695 閱讀 6515

puppet是一種linux、unix、windows平台的集中配置管理系統,使用自有的puppet描述語言,可管理配置檔案、使用者、cron任務、軟體包、系統服務等。puppet把這些系統實體稱之為資源,puppet的設計目標是簡化對這些資源的管理以及妥善處理資源間的依賴關係。

本篇為您提供puppet在centos下的部署方案,需要注意的是:puppet 要求所有機器有完整的網域名稱(fqdn),如果沒有 dns 伺服器提供網域名稱的話,可以在兩台機器上設定主機名(注意要先設定主機名再安裝 puppet,因為安裝 puppet 時會把主機名寫入證書,客戶端和服務端通訊需要這個證書)。 一

環境準備

1、關閉selinux

[root@master ~]# vi /etc/selinux/config

selinux=disabled

[root@master ~]# setenforce 0

2、停止iptables

[root@node1 ~]# chkconfig ip6tables off

[root@node1 ~]# chkconfig iptables off

[root@node1 ~]# service ip6tables stop

[root@node1 ~]# service iptables stop

3、修改puppet伺服器端主機名為puppet-server

[root@master ~]# vi /etc/hostname

puppet-server

修改puppet客戶端主機名為puppet-agent

[root@master ~]# vi /etc/hostname

puppet-agent

4、修改puppet客戶端新增hosts記錄

[root@node1 ~]# vi /etc/hosts

puppet-server 二

安裝ntp時間同步伺服器

1、puppet-server端

[root@master ~]# yum install chrony

[root@master ~]# vi /etc/chrony/chrony.conf

server iburst

[root@master ~]# service chronyd restart

2、puppet-agent

[root@master ~]# yum install chrony

[root@master ~]# vi /etc/chrony/chrony.conf

server iburst

[root@master ~]# service chronyd restart 三

伺服器端安裝puppetmaster軟體

在 master上安裝和啟用 puppet 服務:

[root@master ~]# yum install puppet-server

[root@master ~]# chkconfig puppet on

[root@master ~]# service puppetmaster start

四客戶端安裝puppet軟體

在 agent上安裝和啟用 puppet 服務:

[root@node1 ~]# yum install puppet

[root@node1 ~]# chkconfig puppet on

[root@node1 ~]# service puppet start 五

配置puppet客戶端

修改/etc/puppet/puppet.conf,指定master伺服器

[root@node1 ~]# vi /etc/puppet/puppet.conf

[agent]

server = puppet-server

重啟puppet服務

[root@node1 ~]# service puppet restart 六

客戶端連線測試

[root@node1 ~]# puppet agent –test

然後我們會發現連線唄拒絕了,應該伺服器端還沒有認證。 七

伺服器端認證 1、

[root@node1 ~]#puppet cert list –all

我們發現多了一台puppet-agent

2、[root@node1 ~]#puppet cert sign puppet-agent 八

客戶端重新連線

[root@node1 ~]# puppet agent –test

info: retrieving pluginfacts

info: retrieving plugin

info: caching catalog for agent1.localdomain

notice: ensure: defined content as 'ed076287532e86365e841e92bfc50d8c'

notice: finished catalog run in0.02 seconds

我們發現客戶端已經成功連上服務端。

最後,附上乙個測試的配置檔案,你可以通過它測試檔案同步是否完成。

[root@node1 ~]#cat /etc/puppet/manifests/site.pp

node default }

簽到有大禮,0元購買雲主機

linux運維之批量公升級

經常給各辦事處客戶現場打補丁或公升級,面對十幾上百臺伺服器,人工一台臺替換肯定行不通,只能批量公升級,將過程記錄下來。批量公升級要解決的兩個主要問題就是 1.將補丁檔案 安裝包 上傳到各伺服器 2.各伺服器對收到的補丁檔案自動進行公升級。下面詳解各步驟 1.批量上傳檔案 batch.sh bin s...

linux運維神器 htop mtr

環境說明 部落格使用的linux版本 centos linux release 7.7.1908 core 終端語言調整 調整成漢語是為了方便學習,點選這裡檢視 htop版本 htop 2.2.0 3.el7.x86 64 mtr版本 mtr 0.85 7.el7.x86 64 linux程序管理命...

puppet運維自動化之sshkey管理

puppet運維自動化之sshkey管理 mysqlops 資料庫與運維自動化技術分享 you are here home puppet中文自動化管理 puppet運維自動化之sshkey管理 九月 24,2011 by sky 2 comments ssh key,作為系統管理人員經常會使用ssh...