Puppet學習之puppet的安裝和配置

一、Puppet簡介

Puppet基于ruby語言開發的自動化系統配置工具,可以C/S模式或獨立運行,支持對所有UNIX及類UNIX系統的配置管理,最新版本也開始支持對Windows操作系統有限的一些管理。Puppet適用于服務器管的整個過程 ,比如初始安裝、配置更新以及系統下線。

二、Puppet的安裝

Puppet的安裝方式支持源碼安裝、yum安裝以及ruby的gem安裝。官網推薦使用yum來安裝puppet,方面以后的升級、管理、維護。Centos可以采用yum來安裝,但是Centos的默認源中沒有puppet包,因此需要先安裝epel包。Epel是企業版Linux附加軟件包(Extra Packages for Enterprise Linux)的縮寫,是一個由特別興趣小組創建、維護并管理的,針對紅帽企業版Linux(RHEL)及其衍生發行版(比如CentOS、Scientific Linux)的一個高質量附加軟件包項目。

  1. Master的安裝

yum -y install ruby ruby-libs ruby-shadow

wget ftp://ftp.sunet.se/pub/Linux/distributions/yellowdog/yum/6.2/extras/RPMS/epel-release-5-3.noarch.rpm

rpm -Uvh epel-release-5-3.noarch.rpm

yum -y install puppet puppet-server facter

  1. Agent的安裝

yum install ruby ruby-libs ruby-shadow

wget ftp://ftp.sunet.se/pub/Linux/distributions/yellowdog/yum/6.2/extras/RPMS/epel-release-5-3.noarch.rpm

rpm -Uvh epel-release-5-3.noarch.rpm

yum -y install puppet facter

 

至此如果安裝過程不報錯的話,puppet已經安裝成功了。

三、Puppet的簡單配置

  1. Master的配置

先來看看puppet主目錄下都有什么文件已經每個文件是做什么用的:

ls -1 /etc/puppet/

auth.conf?????? #定義puppet master的acl文件

fileserver.conf?? #定義puppet master文件服務器的配置文件

manifests ?????? #puppet腳本主文件目錄,site.pp文件必須存在

modules??????????? #puppet模塊目錄

puppet.conf???? #puppet主配置文件

ssl???????????????????? #存放ssl證書的目錄

剛開始的話, puppet.conf不需要配置就可以滿足。

需要更改hosts文件,注意hosts要和主機名對應。

vim ?/etc/hosts添加如下內容:

10.1.4.218 puppet.zhang.com puppet

10.1.4.213 node1.zhang.com node1

10.1.4.214 node2.zhang.com node2

大家要根據實際情況加,我這里是一個master,兩個agent。

  1. Agent的配置

Agent的配置主要是更改agent上的/etc/puppet/puppet.conf文件的[agent]部分。

在agent上vim /etc/puppet/puppet.conf 添加如下配置

server = puppet.zhang.com??????? #master服務器的地址

runinterval = 3600?????????????????????? #每隔多久的時間進行自動更新,時間單位為秒

listen = true???????????????????????? #客戶端作為一個服務進行監聽,允許其它的機器觸發puppet運行允許遠程觸發puppet的節點配置

 

四、puppet的啟動和停止

  1. Master的啟動和停止

Master的啟動

/etc/rc.d/init.d/puppetmaster start

也可以以采用 service puppetmaster start啟動

第一次啟動建議采用puppet master –verbose –no-daemonize方式啟動,有助于測試和調試錯誤,如果采用后面這種方式,你可以看到啟動的整個過程,啟動過程會做一些初始化的工作,為master創建本地證書認證中心,證書和key。并打開socket等待client的連接。你可以在/etc/puppet/ssl目錄看到相關的文件和目錄。

Master的停止

/etc/rc.d/init.d/puppetmaster stop

也可以以采用 service puppetmaster stop停止

更改多選項可以使用/etc/rc.d/init.d/puppetmaster –h查看

  1. Agent的啟動和停止

Agent的啟動

/etc/rc.d/init.d/puppet start

也可以采用service puppet start來啟動

調試的時候可以采用

puppet agent –server=puppet.zhang.com –no-daemonize –verbose

的方式來啟動,這樣啟動我們可以看到agent是如何和master建立連接的。

Agent的停止

/etc/rc.d/init.d/puppet stop

也可以采用service puppet stop來停止。

 

五、FAQ

  1. 連接master的時候出現如下報錯:

dnsdomainname: Unknown host

解決辦法:檢查機器主機名的設置,以及是否添加進hosts。

  1. 連接master的時候出現如下報錯:

err: Could not request certificate: getaddrinfo: Name or service not known

解決辦法:服務器端沒有配置hosts域名綁定,在hosts中添加。

  1. 連接master的時候出現如下報錯:

warning: peer certificate won’t be verified in this SSL session

解決辦法:服務端還沒有返回簽發證書,使用puppet cert –list查看

  1. 連接master的時候出現如下報錯:

err: Could not retrieve catalog from remote server: certificate verify failed

解決辦法:客戶端和服務器端時間不同步,SSL連接需要依賴主機上的時間是否正確。執行更新時間的命令:/sbin/ntpdate asia.pool.ntp.org

 

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/87564

(0)
sunhaosunhao
上一篇 2017-09-25 10:50
下一篇 2017-09-25 14:58

相關推薦

  • 文件查找

    文件查找     一.文件查找locate和find 1.     locate命令 非實時查找( 數據庫查找) 查詢系統上預建的文件索引數據庫 依賴于事先構建 的索引 索引的構建是在系統較為空閑時自動進行( 周期性任務) 管理員手動更新數據庫(updatedb) 索引構建過程需要遍歷整個根文件系統…

    Linux干貨 2017-08-12
  • TCP 的那些事兒(上)

       TCP是一個巨復雜的協議,因為他要解決很多問題,而這些問題又帶出了很多子問題和陰暗面。所以學習TCP本身是個比較痛苦的過程,但對于學習的過程卻能讓人有很多收獲。關于TCP這個協議的細節,我還是推薦你去看W.Richard Stevens的《TCP/IP 詳解 卷1:協議》(當然,你也可以去讀一下RFC793以及后面N多的RFC)。另…

    Linux干貨 2015-04-01
  • Linux磁盤管理詳解

    linux磁盤管理 添加磁盤步驟: fdisk 管理磁盤分區 格式化文件系統。 設備掛載 開機自動掛載 UUID掛載 取消掛載點 Parted(gpt大于2G分區) 查看文件系統的使用情況。 df 查看掛載信息與磁盤使用量 du 查看使用量 查看分區狀況lsblk 查看設備信息blkid linux磁盤管理 當全新安裝了一塊新的硬盤設備后,為了更充分、安全的…

    Linux干貨 2016-09-07
  • N26-第五周

    1、顯示當前系統上root、fedora或user1用戶的默認shell; [root@localhost test]# cat /etc/passwd | grep -E “^(root|fedora|user1)\>” |cut -d: -f  1,7 root:/bin/bash user1:/bin/bash …

    Linux干貨 2017-02-26
  • 為什么中國的網頁設計那么爛?

    Nick Johnson,一個有12年經驗的Web設計師在它的blog里寫下了“Why is Chinese Web Design So Bad”,新浪,人人,百度,阿里巴巴,騰訊榜上有名。其中的觀點相當的好,希望所有的中國人都讀一下。我不全文翻譯了,只是給大家看一些摘要。(保證不會像《環球時報》一樣) —————————— 作者2005年的夏天來到中國,他…

    Linux干貨 2016-07-11
  • 基于Cobbler實現多版本操作系統自動部署

    前言     在生產環境中,當需要批量部署幾十甚至上百臺服務器時,實現自動化安裝操作系統尤為重要,按照傳統的光盤引導安裝是不可想象的;此前我們通過pxe+kickstart簡單實現了自動化安裝,但只能實現單一版本安裝,當需要部署不同版本或不同引導模式(BIOS、EFI)時,此種方式就不夠靈活。而Cobbler正是為了解…

    Linux干貨 2015-08-11
欧美性久久久久