Puppet集中配置管理系統 安裝與配置

2021-09-22 05:15:16 字數 3952 閱讀 4777

安裝puppet

2.1安裝需求

注:本文都是在centos5下進行安裝與配置。其它系統請參考官網。

ruby 1.8.2+ facter

其它的庫:

2.2 puppet版本

2.6.4

0.25.5

2.6.4和0.25.5 有功能和基本命令上有一些變化區別如下:

puppetmasterd → puppet master

puppetd → puppet agent

puppetca → puppet cert

ralsh → puppet resource

puppetrun → puppet kick

puppetqd → puppet queue

filebucket → puppet filebucket

puppetdoc → puppet doc

pi → puppet describe

通常我們使用epel安裝的puppet 都是0.25.5 。在安裝前做注意版本的區別。本文採用2.6.4版本,以下配置都是在2.6.4版本上完成。

其它系統相關的情況詳見:(遺憾的是沒有看到對windows的支援)

2.3原始碼包安裝

原始碼包安裝時,版本沒有太多的區別。

2.3.1 安裝ruby 最好使用rpm包安裝。可以採用epel 然後yum

yum install ruby ruby-devel ruby-doc*

2.3.2 安裝facter

$ wget

$ gzip -d -c facter-latest.tgz | tar xf -

$ cd facter-*

$ sudo ruby install.rb #使用root 賬號執行

$ wget

# untar and install it

$ gzip -d -c puppet-latest.tgz | tar xf -

$ cd puppet-*

$ sudo ruby install.rb # 使用rot安裝

2.4 yum安裝

1. epel 安裝0.25.5

2. 採用如下方式安裝2.6.4

2.4.1配置yum源

cd /etc/yum.repos.d/

vim puppet.repo

[puppetlabs]

name=puppet labs packages

baseurl=

enabled=0

gpgcheck=0

vim epel.repo

name=extra packages for enterprise linux 5 -$basearch

#baseurl=

mirrorlist=

failovermethod=priority

enabled=0

gpgcheck=0

[epel-puppet]

name=epel puppet

baseurl=

enabled=0

gpgcheck=0

vim ruby.repo

[ruby]

name=ruby

baseurl=

gpgcheck=0

enabled=0

2.4.2 公升級ruby

puppet 2.6 需要 ruby 1.8.6 去執行 puppet-dashboard

公升級ruby

# yum --enablerepo="ruby" update ruby

如果你沒有安裝ruby 請使用:

#yum -y install ruby

2.4.3 安裝puppet

安裝 puppet server

server端:on your puppetmaster server:

# yum --enablerepo=epel,epel-puppet install puppet-server>

client 端:on your puppet client

# yum --enablerepo="epel,epel-puppet" install puppet

2.5 gem安裝

$ wget

$ sudo gem install facter-1.5.7.gem

$ wget

$ sudo gem install puppet-0.25.1.gem

三、配置puppet

3.1配置伺服器端

3.1.1設定hostname

#echo 「puppetmaster.linuxtone.org」 > /etc/hostname

#hostname –f /etc/hostname

3.1.2 配置site.pp

vim /etc/puppet/site.pp

node default

}3.2配置客戶端

3.2.1設定hostname

#echo 「puppetclient.linuxtone.org」 > /etc/hostname

#hostname –f /etc/hostname

3.1.2 指定hosts 或使用dns解析

echo 「192.168.1.100 puppetmaster.linuxtone.org」 >> /etc/hosts

3.3驗證

3.3.1 客戶端執行:

puppetd --server master.example.com(puppetmaster.linuxtone.org) --test

上面的命令讓puppetd 從 master.example.com(puppetmaster.linuxtone.org) 去讀取puppet配置檔案. 第一次連線,雙方會進行ssl證書的驗證,這是乙個新的客戶端,在伺服器端那裡還沒有被認證,因此需要在伺服器端進行證書認證.

在伺服器端的機器上執行下面的命令來認證客戶端的證書

3.3.2 伺服器端執行: puppetca -s client.example.com

3.3.3 客戶端再次執行puppetd –server puppetmaster.linuxtone.org --test

這樣驗證就算是做完了。客戶端會在/tmp目錄生成內容為「hello,first puppet manifest」的temp1.txt 檔案。

3.4 自動驗證

內容 *.linuxtone.org

使用 Puppet 進行配置管理

注 本文譯自 今天,配置管理最成熟的工具是 puppet。但是,我想您一定想知道為什麼 puppet 如此受歡迎 與其他配置管理工具相比,它有什麼獨特之處。puppet 是配置管理工具,用於部署 配置和管理伺服器。它具有以下功能 puppet 使用主從架構,主從之間通過 ssl 使用安全的加密通道進...

集中化運維管理 Puppet管理之路

大資料時代高伸縮性 容錯性的特點給運維提出了更高的要求。系統管理不再是疲於安裝作業系統 對系統引數進行逐一配置與優化 打補丁 安裝軟體 配置軟體 新增某個服務的時代。為了提高效率 避免重複勞動 減少錯誤 積累知識,系統管理員都已開始做一些區域性的自動化工作。但這些還遠不夠,為了滿足運維需求,需要更徹...

集中化運維管理 Puppet管理之路

文 劉宇 大資料時代高伸縮性 容錯性的特點給運維提出了更高的要求。系統管理不再是疲於安裝作業系統 對系統引數進行逐一配置與優化 打補丁 安裝軟體 配置軟體 新增某個服務的時代。為了提高效率 避免重複勞動 減少錯誤 積累知識,系統管理員都已開始做一些區域性的自動化工作。但這些還遠不夠,為了滿足運維需求...