古詩詞大全網 - 藝術簽名 - 如何在CentOS和RHEL上安裝Puppet服務器和客戶端

如何在CentOS和RHEL上安裝Puppet服務器和客戶端

在CentOS/RHEL 6.5上:

# rpm-IVH/El/6.5/products/x86 _ 64/puppet labs-release-6-10 . no arch . rpm

在CentOS/RHEL 7:

# rpm-IVH/El/7/products/x86 _ 64/puppet labs-release-7-10 . no arch . rpm

服務器的安裝

在您想要用作主服務器的服務器上安裝軟件包“puppet-server”。

# yum安裝傀儡服務器

安裝完成後,設置Puppet服務器,使其可以在系統啟動時自動開啟並打開。

#服務puppetmaster啟動時的# chkconfig puppetmaster

現在我們已經啟動並運行了服務器,我們必須確保可以從我們的網絡訪問它。

在CentOS/RHEL 6上的/etc/sysconfig/iptables的“:OUTPUT ACCEPT”部分添加以下行,其中iptables用作防火墻。

1 -A輸入-m狀態-狀態NEW-m TCP-p TCP-dport 8140-j接受

要使這壹更改生效,需要重新啟動iptables。

#服務iptables重啟

在使用firewalld的CentOS/RHEL 7上,您可以使用以下命令來實現相同的操作:

#防火墻-cmd-permanent-zone = public-add-port = 8140/TCP #防火墻-cmd - reload

客戶端的安裝

在客戶機節點上安裝Puppet客戶機軟件包,為此,執行以下命令:

# yum安裝木偶

安裝完成後,確保在系統啟動後打開Puppet。

# chkconfig傀儡開啟

您的傀儡客戶機節點必須知道傀儡主服務器的位置。要做到這壹點,最好的方法是使用DNS服務器,在那裏您可以配置Puppet域名。如果沒有普通的DNS服務器,可以使用/etc/hosts文件,所以只需添加下面壹行:

1 . 2 . 3 . 4 server . your . domain 2.3.4.5客戶端-node.your.domain

1.2.3.4對應的是Puppet主服務器的IP地址,“server.your.domain”是主服務器的域名(默認值通常是服務器的主機名),“client-node.your.domain”是客戶端節點。應該在所有相關的服務器(傀儡主服務器和客戶端服務器)上相應地配置主機文件。

在這些設置完成後,我們將顯示作為主服務器的傀儡客戶機。默認情況下,puppet會尋找壹個名為“Puppet”的服務器,但是這個設置通常不適合您的網絡配置,所以我們將其更改為Puppet主服務器的完全限定域名(FQDN)。打開/etc/sysconfig/Puppet文件,將“PUPPET_SERVER”的值替換為/etc/hosts中指定的Puppet主服務器的域名:

PUPPET _ SERVER = SERVER . your . domain

還必須在/etc/puppet/puppet.conf的[agent]部分定義主服務器名稱:

server server = server . your . domain

現在,您可以啟動Puppet客戶機:

#服務傀儡開始

我們需要使用以下命令來強制客戶端聯系傀儡主服務器:

#傀儡代理-測試

您應該會看到類似以下輸出的結果。不要慌,這是正常的,因為傀儡主服務器上還沒有驗證服務器。

退出;找不到證書,waitforcert被禁用

回到您的puppet主服務器並驗證證書驗證請求:

#傀儡證書列表

您應該會看到從puppet的主服務器請求證書簽名的所有服務器的列表。找到客戶端服務器的主機名,並使用以下命令對其進行簽名(client-node是客戶端節點的域名):

#傀儡證書簽名客戶端節點

至此,您已經有了壹個工作的傀儡客戶機和服務器。恭喜妳!然而,目前傀儡主服務器不能指示客戶端做任何事情。因此,您最好創建壹個基本的清單文件,並設置壹個客戶機節點來安裝基本的實用程序。

重新連接到Puppet服務器,並確保目錄/etc/Puppet/manifest已經存在。

# mkdir-p/etc/puppet/manifest

現在,使用以下內容創建壹個清單文件/etc/puppet/manifests/site.pp。

node ' client-node ' { include custom _ utils } class custom _ utils { package {[" nmap "," telnet "," vim-enhanced "," traceroute"]:確保= & gt最新,allow _ virtual = & gt假,} }

然後重新啟動puppetmaster服務。

#服務puppetmaster重新啟動

客戶端配置的默認刷新間隔是30分鐘;如果要手動強制更改生效,必須在客戶端節點上執行以下命令:

#傀儡特工-t

如果要更改默認的客戶端刷新間隔,請插入以下行:

runinterval = & lt妳的時間& gt

添加到客戶端節點上/etc/puppet/puppet.conf的“[agent]”部分。該設置是壹個時間間隔,單位可以是秒(30或30s)、分鐘(30m)、小時(6h)、天(2d)或年(5y)。註意:運行間隔為0表示“連續運行”,而不是“從不運行”。

技巧和方法

1.排除故障

有時可能會發生這樣的情況,如果您想要提交錯誤的配置,您必須調試Puppet失敗的地方。為此,您總是可以從檢查/var/log/puppet/中的日誌開始,或者手動運行代理軟件並查看輸出結果:

#傀儡特工-t

默認情況下,“-t”激活詳細模式,因此它允許您查看Puppet的輸出。該命令還有幾個參數,可以幫助更詳細地識別問題。第壹個可行的選擇是:

#傀儡代理-t - debug

Debug顯示了Puppet在運行過程中經歷的所有步驟。它在調試非常復雜的規則時非常有用。另壹個可能有用的參數是:

#傀儡特工-t - noop

該選項將puppet設置為所謂的預演模式,並且不做任何更改。Puppet只是輸出將要在屏幕上呈現的內容,並不將任何內容寫入磁盤。

2.組件

過壹會兒,您會發現自己想要壹個更復雜的清單文件。但是在您坐下來開始編寫列表文件之前,您應該花些時間瀏覽壹下。Forge是壹個巨大的軟件庫,其中包含許多木偶社區模塊。妳很可能在這裏找到解決問題的辦法。如果找不到,就自己寫模塊提交,讓別人也能從傀儡模塊文化中受益。

現在,假設妳已經找到了壹個可以解決妳問題的模塊。那麽,如何在系統上安裝呢?安裝其實相當容易,因為Puppet已經包含了壹個直接下載模塊的接口。只需鍵入以下命令:

#木偶模塊安裝& lt模塊名稱& gt-版本0.0.0

& lt模塊名稱& gt是所選模塊的名稱,version是可選的(如果未指定,請下載最新版本。如果您不記得要安裝的模塊的名稱,您可以嘗試使用模塊搜索來找到它:

#木偶模塊搜索& ltsearch _ string & gt

因此,您將獲得包含搜索字符串的所有模塊的列表。

#傀儡模塊搜索apache

註意:正在搜索...名稱描述作者關鍵字示例42-apache Puppe t模塊for Apache @示例42示例42,apache puppetlabs-apache Puppet模塊for Apache @ Puppet labs Apache web httpd centos rhel SSL wsgi pr oxy the foreman-Apache Apache HTTP服務器配置@theforeman foreman apache httpd已棄用

如果您想查看安裝了哪些模塊,只需鍵入以下命令:

#木偶模塊列表

結束語

至此,您應該有了壹個完全實用的Puppet master服務器,它可以為壹個或多個客戶機服務器提供基本配置。現在,您可以隨意向配置中添加更多設置,以適應您的基礎架構。不要擔心擺弄木偶,妳會發現它真的很有幫助。