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

開(kāi)源自動(dòng)化配置管理工具Puppet入門(mén)教程

運(yùn)維 系統(tǒng)運(yùn)維 自動(dòng)化
Puppet是開(kāi)源的基于Ruby的系統(tǒng)配置管理工具,依賴(lài)于C/S的部署架構(gòu)。Puppet這樣的自動(dòng)化配置管理工具可以幫助系統(tǒng)管理員更加方便的完成升級(jí)軟件包、管理配置文件、系統(tǒng)服務(wù)、cron任務(wù)、添加新的配置、修復(fù)錯(cuò)誤等重復(fù)工作。

系統(tǒng)管理員經(jīng)常陷入一系列的重復(fù)任務(wù)中:如升級(jí)軟件包、管理配置文件、系統(tǒng)服務(wù)、cron任務(wù)以及添加新的配置、修復(fù)錯(cuò)誤等。這些任務(wù)通常是重復(fù)低效的,解決這類(lèi)任務(wù)的第一反應(yīng)是讓他們自動(dòng)化,于是出現(xiàn)了定制腳本。由于環(huán)境復(fù)雜,定制腳本和應(yīng)用程序一再被重復(fù)開(kāi)發(fā),并且很難適合多種平臺(tái),靈活性和功能也很難保證,于是像Puppet這樣的自動(dòng)化配置管理工具便出現(xiàn)了。

在開(kāi)源世界里,有很多配置工具可供選擇,這個(gè)領(lǐng)域一些關(guān)鍵的產(chǎn)品有:

Puppet(http://puppet.reductivelabs.com/):

  • Ruby寫(xiě)成的配置管理工具,使用C/S架構(gòu),使用declarative language配置客戶(hù)端。

Cfengine(http://www.cfengine.org):

  • 最先發(fā)布的開(kāi)源配置工具之一,1993年發(fā)布,同樣是C/S架構(gòu),通常應(yīng)用于教育機(jī)構(gòu)。

LCFG(http://www.lcfg.org/):

  • C/S架構(gòu)的配置管理工具,使用XML定義配置。

Bcfg2

  • Python編寫(xiě)的C/S架構(gòu)的配置管理工具,使用規(guī)格書(shū)和客戶(hù)機(jī)響應(yīng)配置目標(biāo)主機(jī)。

本文檔致力于描述使用Puppet管理你的主機(jī)、應(yīng)用程序、后臺(tái)程序和各種服務(wù)。

Puppet簡(jiǎn)介:

1. Puppet的用途

Puppet是開(kāi)源的基于Ruby的系統(tǒng)配置管理工具,依賴(lài)于C/S的部署架構(gòu)。主要開(kāi)發(fā)者是Luke Kanies,遵循GPLv2版權(quán)協(xié)議。從1997年開(kāi)始Kanies參與UNIX的系統(tǒng)管理工作,Puppet的開(kāi)發(fā)源于這些經(jīng)驗(yàn)。因?yàn)閷?duì)已有的配置工具不甚滿(mǎn)意,從2001年到2005年間,Kanies開(kāi)始在Reductive實(shí)驗(yàn)室從事工具的開(kāi)發(fā)。很快,Reductive實(shí)驗(yàn)室發(fā)布了他們的旗艦產(chǎn)品——Puppet。

2. Pupput的特性

許多系統(tǒng)配置管理工具工作的方式非常類(lèi)似,如cfengine。是什么讓Puppet與眾不同?

Puppet的語(yǔ)法允許你創(chuàng)建一個(gè)單獨(dú)腳本,用來(lái)在你所有的目標(biāo)主機(jī)上建立一個(gè)用戶(hù)。所有的目標(biāo)主機(jī)會(huì)依次使用適用于本地系統(tǒng)的語(yǔ)法解釋和執(zhí)行這個(gè)模塊。舉例:如果這個(gè)配置是在Red Hat服務(wù)器上執(zhí)行,建立用戶(hù)使用useradd命令;如果這個(gè)配置是在FreeBSD主機(jī)上執(zhí)行,使用的是adduser命令。

Puppet另一個(gè)卓越的地方是它的靈活性。源于開(kāi)源軟件的天性,你可以自由的獲得Puppet的源碼,如果你遇到問(wèn)題并且有能力的話(huà),你可以修改或者加強(qiáng)Puppet的代碼去適用于你的環(huán)境。另外,社區(qū)開(kāi)發(fā)者和捐獻(xiàn)者還在不斷增強(qiáng)Puppet的功能。一個(gè)大的開(kāi)發(fā)者和用戶(hù)社區(qū)也致力于提供Puppet的文檔和技術(shù)支持。

Puppet也是易于擴(kuò)展的。定制軟件包的支持功能和特殊的系統(tǒng)環(huán)境配置能夠快速簡(jiǎn)單的添加進(jìn)Puppet的安裝程序中。

3. Puppet的工作模式

Puppet是一個(gè)C/S架構(gòu)的配置管理工具,在中央服務(wù)器上安裝puppet-server軟件包(被稱(chēng)作Puppet master)。在需要管理的目標(biāo)主機(jī)上安裝puppet客戶(hù)端軟件(被稱(chēng)作Puppet Client)。當(dāng)客戶(hù)端連接上Puppet master后,定義在Puppet master上的配置文件會(huì)被編譯,然后在客戶(hù)端上運(yùn)行。每個(gè)客戶(hù)端默認(rèn)每半個(gè)小時(shí)和服務(wù)器進(jìn)行一次通信,確認(rèn)配置信息的更新情況。如果有新的配置信息或者配置信息已經(jīng)改變,配置將會(huì)被重新編譯并發(fā)布到各客戶(hù)端執(zhí)行。也可以在服務(wù)器上主動(dòng)觸發(fā)一個(gè)配置信息的更新,強(qiáng)制各客戶(hù)端進(jìn)行配置。如果客戶(hù)端的配置信息被改變了,它可以從服務(wù)器獲得原始配置進(jìn)行校正。

4. Puppet的未來(lái)

最后,Puppet是一個(gè)年輕的工具,仍然處于開(kāi)發(fā)和發(fā)展中。Puppet社區(qū)快速壯大,并且許多新的想法不斷融入,促使開(kāi)發(fā)、更新和模塊每天都在呈現(xiàn)。

#p#

安裝配置:

1. PuppetRedHat/CentOS系統(tǒng)上安裝

Puppet是基于Ruby寫(xiě)成的,所以安裝前要準(zhǔn)備好Ruby環(huán)境。在中心的Server上安裝puppet-server包,并運(yùn)行puppetmasterd進(jìn)程;在被管理機(jī)上安裝puppet包,并運(yùn)行puppetd進(jìn)程。另外,在每臺(tái)主機(jī)上配置好自己的hostname,之后每臺(tái)機(jī)器要以hostname區(qū)分。

1). 安裝ruby環(huán)境:

yum install ruby ruby-rdoc

2). 安裝puppet

Server端安裝:

rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm
yum install puppet-server
chkconfig –level 2345 puppetmaster on

修改hosts,添加下面行:

Vi /etc/hosts
172.16.228.30   puppet.sina.com.cn puppet
172.16.228.29   web1.sina.com.cn web1

客戶(hù)端安裝:

rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm
yum install puppet
chkconfig –level 2345 puppet on

修改hosts,添加下面行:

Vi /etc/hosts
172.16.228.30   puppet.sina.com.cn puppet
172.16.228.29   web1.sina.com.cn web1

3). 啟動(dòng)puppet

Server端首次運(yùn)行前,編輯/etc/puppet/manifests/site.pp文件,內(nèi)容可以用最基本的:

# Create “/tmp/testfile” if it doesn’t exist.
class test_class {
file { “/tmp/testfile”:
ensure => present,
mode => 644,
owner => root,
group => root
}
}
# tell puppet on which client to run the class
node web1.sina.com.cn {
include test_class
}

啟動(dòng)Server端:

service puppetmaster start

啟動(dòng)客戶(hù)端:

/etc/init.d/puppet once -v

這時(shí)客戶(hù)機(jī)會(huì)去連server,但是由于連接是在ssl上的,而Server還沒(méi)有sign過(guò)客戶(hù)端的cert,客戶(hù)機(jī)被斷開(kāi)。

到Server端執(zhí)行:puppetca -list,會(huì)顯示等待簽名的客戶(hù)端的主機(jī)名,執(zhí)行:puppetca -sign <客戶(hù)端主機(jī)名> 即可為其簽名。

在Server端為web1.sian.com.cn授權(quán):

puppetca -list
web1.sian.com.cn
puppetca -sign web1.sian.com.cn

這時(shí)再到客戶(hù)機(jī)上啟動(dòng)puppetd,即可看到客戶(hù)在正常地連接server,并且應(yīng)用Server上為客戶(hù)端定制的配置策略。

啟動(dòng)客戶(hù)端:

/etc/init.d/puppet once -v

4). 測(cè)試:

也可以將日志直接打印到終端上進(jìn)行測(cè)試:

Server端:puppetmasterd -d –no-daemonize -v –trace

客戶(hù)端:puppetd –test –trace –debug

#p#

2. puppet配置文件

主配置文件(puppet.conf):

1). 配置文件命名空間:

main 通用配置選項(xiàng)

puppetd 客戶(hù)端配置選項(xiàng)

puppetmasterd 服務(wù)端配置選項(xiàng)

2). main命名空間選項(xiàng):

confdir 配置文件目錄,默認(rèn)在/etc/puppet

vardir 動(dòng)態(tài)數(shù)據(jù)目錄,默認(rèn)在/var/lib/puppet

logdir 日志目錄,默認(rèn)在/var/log/log

rundir puppet PID目錄,默認(rèn)在/var/run/puppet

statedir state目錄,默認(rèn)在$vardir/state

statefile state文件,默認(rèn)在$statedir/state.yaml

ssldir SSL證書(shū)目錄,默認(rèn)在$vardir/ssl

trace 發(fā)生錯(cuò)誤時(shí)顯示跟蹤信息,默認(rèn)false

filetimeout 檢測(cè)配置文件狀態(tài)改變的時(shí)間周期,單位秒,默認(rèn)15秒

syslogfacility 指定syslog功能為user級(jí),默認(rèn)為daemon級(jí)

3). puppetmasterd命名空間選項(xiàng):

user 后臺(tái)進(jìn)程執(zhí)行的用戶(hù)

group 后臺(tái)進(jìn)程執(zhí)行的組

mainfestdir mainfests文件存儲(chǔ)目錄,默認(rèn)為$confdir/mainfests

mainfest mainfest站點(diǎn)文件的名字,默認(rèn)為site.pp

bindaddress 后臺(tái)進(jìn)程綁定的網(wǎng)卡地址接口

masterport 后臺(tái)進(jìn)程執(zhí)行的端口,默認(rèn)為8140

4). puppet命名空間選項(xiàng):

server puppet puppet服務(wù)器名,默認(rèn)為puppet

runinterval seconds puppet應(yīng)用配置的時(shí)間間隔,默認(rèn)1800秒(0.5小時(shí))

puppetdlockfie file puppet lock文件位置,默認(rèn)$statedir/puppetdlock

puppetport port 后臺(tái)進(jìn)程執(zhí)行的端口,默認(rèn)8139

文件服務(wù)配置文件(fileserver.conf):

[files]
path /var/lib/puppet/files
allow 121.14.1.*
allow 60.28.228.0/24
allow *.house.sina.com.cn
deny *.sina.com.cn

path定義文件存放路徑,通過(guò)allow/deny來(lái)控制訪(fǎng)問(wèn)權(quán)限。

3. puppet命令集

1). puppet 用于執(zhí)行用戶(hù)所寫(xiě)?yīng)毩⒌膍ainfests文件

# puppet -l /tmp/manifest.log manifest.pp

2). puppetd 運(yùn)行在被管理主機(jī)上的客戶(hù)端程序

# puppetd –server puppet.leju.com

3). puppetmasterd 運(yùn)行在管理機(jī)上的服務(wù)器程序

# puppetmasterd

4). puppetca puppet認(rèn)證程序

# puppetca -l
pclient.leju.com
# puppetca -s pclient.leju.com

5). puppetrun 用于連接客戶(hù)端,強(qiáng)制運(yùn)行本地配置文件

# puppetrun -p 10 –host host1 –host host2 -t remotefile -t webserver

6). filebucket 客戶(hù)端用于發(fā)送文件到puppet file bucket的工具

# filebucket -b /tmp/filebucket /my/file

7). ralsh 轉(zhuǎn)換配置信息到puppet配置代碼

# ralsh user luke
user { ‘luke’:
home => ‘/home/luke’,
uid => ‘100′,
ensure => ‘present’,
comment => ‘Luke Kanies,,,’,
gid => ‘1000′,
shell => ‘/bin/bash’,
groups => ['sysadmin','audio','video','puppet']
}

8). puppetdoc 打印puppet參考文檔

# puppetdoc -r type > /tmp/type_reference.rst
# puppetdoc –outputdir /tmp/rdoc –mode rdoc /path/to/manifests
# puppetdoc /etc/puppet/manifests/site.pp

【編輯推薦】

  1. 系統(tǒng)管理員最需要自動(dòng)化的十大任務(wù)
  2. 使用cfengine來(lái)實(shí)現(xiàn)服務(wù)器的自動(dòng)化配置
  3. Linux批量安裝 五大開(kāi)源軟件挨個(gè)看
責(zé)任編輯:yangsai 來(lái)源: yoyotown.com
相關(guān)推薦

2021-11-10 09:00:00

工具Chef開(kāi)發(fā)

2022-05-06 12:04:24

Ansible管理工具

2012-10-29 16:45:07

CentOS 6.2Puppet

2011-06-07 15:12:41

Puppet語(yǔ)法

2013-08-30 14:30:59

系統(tǒng)自動(dòng)化自動(dòng)化配置SaltStack

2022-09-08 09:00:38

Ansible開(kāi)源

2017-02-17 09:00:00

Linux管理員工具

2009-07-20 18:16:11

軟件配置管理

2017-05-10 15:48:59

云平臺(tái)云計(jì)算工具

2011-10-09 13:49:51

2012-12-06 11:31:40

虛擬化

2012-04-09 09:43:49

云計(jì)算云管理

2019-04-17 07:59:09

Puppet自動(dòng)化集群管理

2020-04-02 08:00:36

管理工具配置

2011-12-20 09:39:18

虛擬化紅帽oVirt

2009-04-24 21:13:45

服務(wù)器虛擬化Vmware

2022-06-16 11:06:07

開(kāi)源Grafanaon-call

2023-03-07 14:21:57

2011-09-29 09:52:59

配置管理服務(wù)器Puppet

2021-03-17 10:29:35

systemdLinux管理工具
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 国产欧美精品 | 黑人粗黑大躁护士 | 中文字幕91 | 这里有精品 | 一区二区视频在线观看 | 精品国产一区二区三区四区在线 | 国产免费又黄又爽又刺激蜜月al | 亚洲码欧美码一区二区三区 | 精品日本中文字幕 | 久久久久国产一区二区三区 | 久久久久久久久久影视 | 日韩av免费在线电影 | 国产精品激情小视频 | 亚洲福利av | 自拍偷拍一区二区三区 | 在线观看成人精品 | 国产视频中文字幕 | 成人一区二区三区视频 | 91av视频在线 | 91久久久久久久久久久久久 | 天天插天天操 | 成人福利网站 | 日韩精品一区二区三区 | 一区在线免费视频 | 日韩在线不卡 | 韩日精品在线观看 | 免费a大片 | 亚洲天堂av一区 | 天堂成人国产精品一区 | 影视先锋av资源噜噜 | 日韩免费高清视频 | 欧美精品综合在线 | 欧美 日韩 在线播放 | 午夜视频导航 | 电影91久久久 | 亚洲精品99久久久久久 | 国产a区| 狠狠av| 亚洲国产精品va在线看黑人 | 最新国产在线 | 国产一区在线免费观看 |