成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何將Puppet服務器及客戶端安裝到CentOS和RHEL上?

譯文
系統 Linux
由于系統管理員需要管理的系統越來越多,日常任務自動化顯得相當重要。于是,許多管理員采用了編寫自定義腳本這種方法,這些腳本其實模擬復雜的調配軟件。可遺憾的是,腳本會變得過時,開發腳本的人可能離開了公司,要是沒有投入大量的精力來維護,一段時間后這些腳本最終就會無法使用……

由于系統管理員需要管理的系統越來越多,日常任務自動化顯得相當重要。于是,許多管理員采用了編寫自定義腳本這種方法,這些腳本其實模擬復雜的調配軟件。可遺憾的是,腳本會變得過時,開發腳本的人可能離開了公司,要是沒有投入大量的精力來維護,一段時間后這些腳本最終就會無法使用。一種更可取的方法無疑是共享一種人人都能使用的系統,開發不管某人的雇主是誰,都可以使用的工具。這方面有幾個系統可供我們使用,本文介紹如何使用其中一個系統:Puppet

何謂Puppet

Puppet是一款面向IT系統管理員和咨詢人士的自動化軟件。它讓用戶可以自動處理重復性任務,比如安裝應用程序和服務、補丁管理及部署。所有資源的配置都存儲在一個所謂的清單文件(manifest)里面,可以適用于多臺機器,或適用于僅僅一臺服務器。如果你想知道更多信息,The Puppet Labs網站更全面地描述了Puppet的性質及其工作方式:https://puppetlabs.com/puppet/what-is-puppet/

我們準備在本教程中實現什么任務?

我們將安裝和配置一臺Puppet服務器,并為我們的客戶端服務器完成一些基本的配置。我們會介紹如何編寫及管理Puppet清單文件以及如何將它發送到你的服務器上。

前提條件

由于Puppet不在基本的CentOSRHEL發行版軟件庫中,我們只好添加由Puppet Labs提供的自定義軟件庫。在你想要使用Puppet的所有服務器上,安裝該軟件庫,為此執行下面這個命令(RPM文件名隨新版本而變化):

CentOS/RHEL 6.5上:

  1. # rpm -ivh https://yum.puppetlabs.com/el/6.5/products/x86_64/puppetlabs-release-6-10.noarch.rpm  

CentOS/RHEL 7上:

  1. # rpm -ivh https://yum.puppetlabs.com/el/7/products/x86_64/puppetlabs-release-7-10.noarch.rpm  

服務器的安裝

將軟件包“puppet-server”安裝到你想用作主服務器的服務器上。

  1. # yum install puppet-server  

安裝完畢后,設置Puppet服務器,以便在系統啟動時自動開啟、并打開它。

  1. # chkconfig puppetmaster on  
  2. # service puppetmaster start  

現在我們讓服務器運行起來后,就要確保它能夠從我們的網絡加以訪問。

iptables用作防火墻的CentOS/RHEL 6上,將下面這一行添加到/etc/sysconfig/iptables的“:OUTPUT ACCEPT”這部分。

  1. 1 -A INPUT -m state --state NEW -m tcp -p tcp --dport 8140 -j ACCEPT  

為了讓這個變更生效,有必要重啟iptables

  1. # service iptables restart  

在使用firewalldCentOS/RHEL 7上,可以用下列命令實現同一操作:

  1. # firewall-cmd --permanent --zone=public --add-port=8140/tcp  
  2. # firewall-cmd --reload  

客戶端的安裝

Puppet客戶端軟件包安裝到客戶端節點上,為此執行下面這個命令:

  1. # yum install puppet  

安裝完畢后,確保Puppet在系統啟動后開啟。

  1. # chkconfig puppet on  

你的Puppet客戶端節點必須知道Puppet主服務器位于何處。為此,最佳辦法就是使用DNS服務器,你可以在該服務器上配置Puppet域名。要是你沒有一臺正常運行的DNS服務器,可以使用/etc/hosts文件,為此只要添加下面這一行:

  1. 1.2.3.4 server.your.domain  
  2. 2.3.4.5 client-node.your.domain 

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

完成這些設置后,我們就要向Puppet客戶端表明誰是主服務器。默認情況下,Puppet尋找一臺名為“puppet”的服務器,但該設置通常不適合你的網絡配置,因此我們將它換成Puppet主服務器的完全符合標準的域名(FQDN)。打開文件/etc/sysconfig/puppet,把“PUPPET_SERVER”值換成/etc/hosts中指定的Puppet主服務器域名:

  1. PUPPET_SERVER=server.your.domain 

主服務器名稱也必須在/etc/puppet/puppet.conf的“[agent]”部分中加以定義:

  1. serverserver=server.your.domain 

現在,你可以啟動Puppet客戶端了:

  1. # service puppet start  

我們需要使用下面這個命令,迫使客戶端聯系上Puppet主服務器:

  1. # puppet agent --test  

你應該會看到類似下列輸出內容的結果。別慌張,這很正常,因為該服務器仍沒有在Puppet主服務器上得到驗證。

  1. Exiting; no certificate found and waitforcert is disabled 

回到你的puppet主服務器,核實證書驗證請求:

  1. # puppet cert list  

你應該會看到一份列表,列出了從puppet主服務器請求證書簽名的所有服務器。找到客戶 服務器的主機名稱,使用下面這個命令來簽名(client-node是客戶端節點的域名):

  1. # puppet cert sign client-node  

至此,你已有了一臺正常工作的Puppet客戶端和服務器。祝賀你!不過,眼下Puppet主服務器無法指令客戶端進行什么操作。所以,不妨創建某個基本的清單文件,并設置客戶端節點來安裝基本的實用工具。

連接回到Puppet服務器,確保目錄/etc/puppet/manifests已存在。

  1. # mkdir -p /etc/puppet/manifests  

現在,創建具有下列內容的清單文件/etc/puppet/manifests/site.pp

  1.  node 'client-node' {  
  2.  
  3.    include custom_utils  
  4.  }  
  5.  class custom_utils {  
  6.  
  7.     package { ["nmap","telnet","vim-enhanced","traceroute"]:   
  8.            ensure => latest,  
  9.            allow_virtual => false,  
  10.     }   
  11. }  

然后重啟puppetmaster服務。

  1. # service puppetmaster restart  

客戶端配置的默認刷新間隔時間是30分鐘;如果你想手動強行讓變更生效,就要在客戶端節點上執行下面這個命令:

  1. # puppet agent -t  

如果你想更改默認的客戶端刷新間隔時間,將下面這一行:

  1. runinterval = <yourtime> 

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

技巧和方法

1. 調試

有時候可能出現這種情況:你要提交錯誤的配置,不得不調試Puppet在哪里出現了故障。為此,你總是可以從檢查/var/log/puppet/中的日志,或者手動運行代理軟件、查看輸出結果開始入手:

  1. # puppet agent -t  

默認情況下,“-t”激活詳細模式,所以它讓你可以查看Puppet的輸出結果。該命令還有幾個參數,可以幫助更細致一點地識別問題。第一個實用的選項是:

  1. # puppet agent -t --debug  

debug表明Puppet在運行期間經歷的所有步驟。它在調試非常復雜的規則的過程中大有用處。可能很有用的另一個參數是:

  1. # puppet agent -t --noop  

該選項將puppet設置在所謂的空運行(dry-run)模式,并不執行任何變更。Puppet只是在屏幕上輸出所要呈現的內容,并不將任何內容寫入到磁盤上。

2. 模塊

一段時間后,你會發現處于這種情形:你想要有更復雜的清單文件。但在你坐下來開始編寫清單文件之前,應該花點時間,瀏覽https://forge.puppetlabs.comForge是個龐大的軟件庫,里面含有諸多Puppet社區模塊;你很有可能在這里找到問題的解決方法。要是沒找到,就編寫自己的模塊,然后提交,那樣別人就能得益于Puppet模塊文化。

現在,假設你已經找到了可以解決你問題的一個模塊。那么,如何把它安裝到系統上?安裝其實相當容易,因為Puppet已經含有直接下載模塊的接口。只要鍵入下面這個命令:

  1. # puppet module install <module_name> --version 0.0.0  

<module_name>是你所選擇模塊的名稱,version是可選的(要是沒有指定,那么下載最新版本。)如果你不記得想要安裝的那個模塊的名稱,可以試著使用module search(模塊搜索)來找到它:

  1. # puppet module search <search_string>  

因而,你會獲得一份列表,列出了含有搜索字符串的所有模塊。

  1. # puppet module search apache 

  1. Notice: Searching https://forgeapi.puppetlabs.com ...  
  2.  
  3. NAME           DESCRIPTION            AUTHOR          KEYWORDS                                          
  4.  
  5. example42-apache    Puppet module for apache      @example42        example42, apache                                 
  6.  
  7. puppetlabs-apache    Puppet module for Apache      @puppetlabs        apache web httpd centos rhel ssl wsgi proxy       
  8.  
  9. theforeman-apache   Apache HTTP server configuration @theforeman       foreman apache httpd DEPRECATED             

如果你想看看已經安裝了哪些模塊,只要鍵入下面這個命令:

  1. # puppet module list 

結束語

至此,你應該有了一個完全實用的Puppet主服務器,可以為一個或多個客戶端服務器提供基本的配置。現在可以隨意為你的配置添加更多的設置,讓它適應你的基礎設施。用不著為搗鼓Puppet而擔心,你會發現它確實大有幫助。

Puppet實驗室在努力為其項目維護最高質量的說明文檔,所以如果你想進一步了解Puppet及其配置,本人強烈建議訪問Puppet項目的網頁:http://docs.puppetlabs.com

要是你有任何問題,歡迎在下面留言,本人會盡量給予解答或給出建議。

 

責任編輯:牛小雨 來源: 51CTO
相關推薦

2019-04-08 09:00:00

CentOS 7ElasticsearLinux

2019-05-05 10:42:22

LinuxNTP命令

2009-09-16 15:44:25

2023-05-13 17:32:51

2014-06-01 11:03:13

VDI零客戶端

2016-10-24 09:40:53

CentOS高級入侵檢測

2019-10-14 15:00:12

Centos 8 RHEL 8VNC

2015-08-03 15:38:06

2018-12-19 10:31:32

客戶端IP服務器

2010-10-26 13:54:45

連接Oracle服務器

2014-01-17 15:23:55

Nagios

2023-05-05 16:20:15

2017-04-11 13:20:06

CentOSRHELFedora

2016-10-26 09:29:12

MongoDBLinux

2010-05-31 10:22:56

2025-06-19 02:30:00

Spring服務器MCP

2009-09-17 18:06:44

Nis服務器

2011-08-02 14:11:19

服務器打印機

2011-06-09 10:51:26

Qt 服務器 客戶端

2019-11-05 11:20:36

CentOS 8RHEL 8Linux
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 最新午夜综合福利视频 | 天堂成人av | 91精品国产高清一区二区三区 | 伊人久久国产 | 亚洲一区二区三区免费在线 | 婷婷中文在线 | 天天影视色综合 | 亚洲精品天堂 | 成人av一区二区亚洲精 | 国产精品久久久久久久久久久久久久 | 久久精品免费看 | 中文字幕日韩一区二区 | 亚洲91 | 国产成年人视频 | 精品无码久久久久国产 | 九九九视频在线观看 | 欧美精品中文 | 色综合九九 | 久久久久久精 | 国产欧美日韩精品一区 | 九九热在线视频免费观看 | 国产一级在线观看 | 亚洲在线一区二区 | 亚州精品天堂中文字幕 | 亚洲综合精品 | 免费一级片 | h视频免费观看 | 国产精品久久久久久中文字 | 亚洲 91 | 精品1区 | 亚洲精品一区二区二区 | 不卡在线视频 | 国产成人精品一区二区三区 | 日本免费一区二区三区四区 | 欧美精品久久久 | 欧美成人a| 国产精品久久久久一区二区三区 | 成人免费在线播放视频 | 一级看片免费视频囗交动图 | 日韩不卡一区二区 | 嫩草影院黄 |