亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 操作系統 > 正文

爛泥:puppet3.7安裝與配置

2024-06-28 13:22:19
字體:
來源:轉載
供稿:網友
爛泥:puppet3.7安裝與配置

本文由秀依林楓提供友情贊助,首發于爛泥行天下

有關服務器的自動化管理,這方面以前沒有接觸過。打算這段時間把這塊知識給補上。

現在服務器自動化管理軟件,使用最多也最火的就是puppet了。

那么我們今天的主角也就是puppet。分以下幾個步驟來介紹:

1、 puppet是什么

2、 puppet優點

3、 安裝準備工作

4、 環境準備

5、 源碼安裝puppet

6、 RPM安裝puppet

7、 puppet證書授權

8、 puppet資源

一、puppet是什么

puppet是一種基于ruby語言開發的Lnux、Unix、windows平臺的集中配置管理系統。它使用自有的puppet描述語言,可管理配置文件file、用戶user、cron任務、軟件包、系統服務等系統實體。

puppet把這些系統實體稱之為資源,puppet設計目標是簡化對這些資源的管理以及妥善處理資源間的依賴關系。

puppet依賴于C/S(客戶端/服務器)的部署架構。它需要在puppet服務器上安裝puppet-server軟件包(以下簡稱master),在需要管理的目標主機上安裝puppet客戶端軟件(以下簡稱agent)。

當agent連接上master后,定義在master端的配置文件會被編譯,然后在agent上運行。每個agent默認30分鐘會連接一次master,確認配置信息的更新情況。但是這種方式在很多場景下不是很符合系統管理員的要求,所以很多系統管理員也會將agent通過crontab(任務計劃)來管理,這樣會更加靈活一些。

二、puppet優點

puppet的語法允許你創建一個單獨的腳本,用來在你所有的目標主機上建立一個用戶。所有的目標主機會依次使用適合本地系統的語法來解釋和執行這個模塊。如果這個配置是在Red Hat服務器上執行的話,建立用戶使用useradd命令,如果這個配置是在FreddBSD服務器上執行的話,則使用adduser命令。

puppet另外一個卓越的地方就是它的靈活性。源于開源軟件的天性,你可以自由地獲得puppet的源代碼。如果你遇到問題并且有能力處理的話,你可以修改或加強puppet的代碼使其適用于你的環境,然后解決這個問題。

puppet也是易于擴展的。定制軟件包的支持功能和特殊的系統環境配置能夠快速簡單地添加至puppet的安裝程序中。

三、安裝準備工作

本次實驗OS為centos 6.5 64bit,服務端為:192.168.199.247,客戶端為192.168.199.248。

在正式實驗之前,我們有幾個事情需要先進行處理。

3.1 主機時間同步

為了減少在實驗過程中不必要的麻煩,我們需要對所有主機(包括服務器和客戶端)進行時間同步。即服務器與客戶端的時間相差不能超過秒級。

使用以下命令進行時間同步,如下:

ntpdate timekeeper.isi.edu

clip_image001

如果在進行時間同步時,出現如下錯誤:

21 Jan 17:20:45 ntpdate[2720]: the NTP socket is in use, exiting

clip_image002

請關閉主機的ntpd服務,然后再進行時間同步。

/etc/init.d/ntpd stop

clip_image003

3.2 修改主機名

因為安裝 puppet 時會把主機名寫入證書,同時客戶端和服務端之間通信需要這個證書。所以需要修改服務器與客戶端的主機名。

修改主機名。如下:

hostname s.ilanni.com

執行此命令,可以使主機的主機名立即生效。但是服務器重啟后,此修改就會失效。

clip_image004

要是主機名永久生效的話,需要修改/etc/sysconfig/network文件。如下:

cat /etc/sysconfig/network

clip_image005

本次實驗,我們就不搭建DNS服務器,直接通過修改服務端與客戶端的hosts文件來達到各自解析域名的目的。如下:

cat /etc/hosts

192.168.199.247 s.ilanni.com

192.168.199.248 c.ilanni.com

clip_image006

3.3 關閉iptables和selinux

我們現在所有的實驗都是在關閉iptables和selinux下進行的。

/etc/init.d/iptables status

cat /etc/selinux/config

clip_image007

四、環境準備

puppet的安裝可以分為源碼安裝和RPM安裝,但是無論哪一種安裝方法,我們都需要在安裝之前對其進行幾點需要說明。

4.1 puppet安裝說明

1、由于puppet是采用ruby語言開發,所以無論是源碼還是RPM方式安裝puppet,我們都必須要先安裝ruby語言環境

2、puppet從2.7版本以后,就需要hiera的支持。所以也必須安裝hiera。

3、在前面章節中,我們說明了puppet是一個配置管理系統,而管理的資源,都是系統的實體。但是這些實體,是如何來的呢?這就需要我們安裝另外一個資源收集軟件—facter。

facter主要用來收集主機的一些信息,比如:CPU、主機IP等。facter把這些收集的信息發送給puppet服務器端,服務器端就可以根據不同的條件來對不同的節點機器生成不同的puppet配置文件。

facter也是ruby語言開發的,這個我們可以在facter的安裝文檔中可以查看到,如下:

cat README.md

clip_image008

4.2 安裝ruby

ruby的安裝比較簡單,我們在此使用是yum進行安裝。如下:

yum -y install ruby

clip_image009

ruby安裝完畢后,我們來查看其生成的文件。如下:

rpm -ql ruby

clip_image010

我們可以查看ruby的幫助信息,如下:

ruby -h

clip_image011

除此之外,我們還要安裝ruby-rdoc這個軟件包。該軟件包主要用于查看ruby的幫助文檔。如下:

yum -y install ruby-rdoc

clip_image012

以上就是和ruby有關的軟件包,安裝完畢后,我們開始來安裝facter。

4.3 安裝facter

facter我們可以從puppet官網下載,如下:

http://downloads.puppetlabs.com/facter/

clip_image013

注意:facter也可以通過yum進行安裝,在此我們使用的是源碼安裝。

下載facter最新的版本,如下:

wget http://downloads.puppetlabs.com/facter/facter-2.3.0.tar.gz

clip_image014

解壓facter軟件包,如下:

tar -xf facter-2.3.0.tar.gz

clip_image015

開始安裝facter,如下:

ruby install.rb或者./install.rb

clip_image016

clip_image017

facter安裝完畢后,我們來查看下facter的使用幫助。如下:

facter -h

clip_image018

如果想查看facter詳細幫助信息,我們也可以man下facter。如下:

man facter

clip_image019

如果安裝沒有問題的話,我們在執行facter命令后,會顯示facter收集的相關信息。如下:

facter

clip_image020

4.4 安裝hiera

hiera主要用于控制一些agent經常變化的數值,在puppet2.7以后的版本必須要安裝。如果不安裝的話,我們在安裝puppet時,系統會提示如下錯誤:

Could not load hiera; cannot install

clip_image021

但是在安裝hiera之前,我們必須安裝額外的yum源,否則系統會提示找不到該軟件包。

該yum源,我們可以puppet官網查看到。如下:

https://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#for-red-hat-enterPRise-linux-and-derivatives

clip_image022

按照puppet官網的方法進行安裝。如下:

rpm -ivh http://yum.puppetlabs.com/puppetlabs-release-el-6.noarch.rpm

clip_image023

yum源配置完畢后,我們現在來安裝hiera。如下:

yum -y install hiera

clip_image024

以上安裝完畢后,我們就可以正式安裝puppet。

五、 源碼安裝puppet

puppet服務端與客戶端的源碼安裝使用的是同一個軟件包,安裝步驟一樣,只是在配置文件方面有細微的差別。

在下載puppet源碼之前,我們還要在master端和agent端創建puppet運行時使用的用戶puppet。master端如果不創建的話,master在啟動時,會報如下錯誤:

clip_image025

創建puppet用戶,如下:

useradd -M -s /sbin/nologin puppet

cat /etc/passwd |grep puppet

clip_image026

注意:puppet服務端是以puppet用戶運行的,而puppet客戶端是root用戶運行。

這樣做的目的是:master在服務端以普通用戶運行安全性比較高,而agent在客戶端以root用戶運行,是因為master在創建用戶、修改系統文件等資源時,需要具有最高權限。

5.1 puppet源碼安裝

puppet的源碼包,我們可以從puppet官網下載。目前puppet最新版為3.7.3.如下:

http://downloads.puppetlabs.com/puppet/

clip_image027

下載puppet軟件包。如下:

wget http://downloads.puppetlabs.com/puppet/puppet-3.7.3.tar.gz

clip_image028

解壓puppet軟件包,如下:

tar -xf puppet-3.7.3.tar.gz

clip_image029

puppet的安裝方法與facter的安裝一樣,如下:

ruby install.rb或者./install.rb

clip_image030

puppet安裝完畢后,我們來查看下其幫助信息,如下:

puppet help

clip_image031

查看puppet的安裝位置如下:

ll /etc/puppet/

clip_image032

以上就是puppet的安裝,安裝完畢后。我們現在來配置puppet。

5.2 master端配置

puppet安裝完畢后,我們來配置下master端。把puppet源碼包ext/redhat/目錄下的puppet.conf文件復制到puppet的安裝目錄/etc/puppet/下,如下:

cp ext/redhat/puppet.conf /etc/puppet/

vi /etc/puppet/puppet.conf

server = s.ilanni.com

certname = s.ilanni.com

pluginsync = false

其中s.ilanni.com表示puppet服務器的主機名。

pluginsync = false表示關閉模塊中的插件功能

clip_image033

clip_image034

配置文件修改完畢后,我們現在來配置master端的啟動腳本。

復制puppet源碼包ext/redhat/目錄下的server.init文件到/etc/init.d/下,并重命名為puppetmaster。然后賦予puppetmaster可執行權限。如下:

cp ext/redhat/server.init /etc/init.d/puppetmaster

chmod u+x /etc/init.d/puppetmaster

clip_image035

注意:master端啟動,我們也可以通過puppet master命令來啟動。如下:

puppet master

netstat -tunlp |grep "8140"

ps aux |grep puppet

clip_image036

其實puppetmaster啟動腳本就是使用puppet master命令啟動的,如下:

cat /etc/init.d/puppetmaster

clip_image037

把puppetmaster加入到開機啟動項。如下:

chkconfig --add puppetmaster

chkconfig puppetmaster on

chkconfig |grep puppetmaster

clip_image038

以上都配置完畢后,我們來啟動puppet服務,如下:

/etc/init.d/puppetmaster start

ps aux |grep puppet

netstat -tunlp

clip_image039

通過上圖,我們可以很puppet服務使用TCP協議的8140端口,而且運行時使用puppet用戶。

puppet服務端配置完畢后,我們現在來配置puppet客戶端。

5.3 agent端配置

agent端的配置,只需要把puppet.conf文件復制到puppet的安裝目錄/etc/puppet/下即可,如下:。

cp ext/redhat/puppet.conf /etc/puppet/

cat /etc/puppet/puppet.conf

server = s.ilanni.com

pluginsync = false

其中s.ilanni.com表示puppet服務器的主機名。

pluginsync = false表示關閉模塊中的插件功能

clip_image040

agent端啟動,我們可以通過puppet agent命令來啟動。如下:

puppet agent

ps aux |grep puppet

clip_image041

通過上圖,我們也可以看出agent端運行時使用的用戶為root,而不是puppet用戶。

注意:agent端我們使用puppet agent命令來進行各種管理,包括證書的申請、資源的同步,我們都是通過這個命令進行的。

agent可以以兩種方式運行:第一種方式是命令接參數連接master,第二種是以守護進程的形式在系統后臺運行,默認每30分鐘連接一次master,但是這樣并不靈活。我們一般是使用第一種方式,并配合crontab使用。

六、 RPM安裝puppet

RPM方式安裝puppet比較簡單,我們只需yum安裝即可。如下:

6.1 puppet安裝準備工作

在使用RPM安裝之前,我們要先配置額外的yum源,否則系統會提示找不到puppet軟件包。如下:

yum -y install puppet-server

clip_image042

安裝額外的yum源,我們可以在puppet的官網查找到yum源。如下:

https://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#for-red-hat-enterprise-linux-and-derivatives

clip_image022[1]

按照puppet官網的方法進行安裝。如下:

rpm -ivh http://yum.puppetlabs.com/puppetlabs-release-el-6.noarch.rpm

clip_image023[1]

注意:該yum源無論是master端和agent端都需要進行配置。

6.2 master端安裝與配置

現在開始yum安裝master端,如下:

yum -y install puppet-server

clip_image043

clip_image044

通過上圖,我們可以看到安裝puppet-server是要依賴于facter、hiera和puppet三個軟件包。

現在我們來查看puppet-server安裝時新建的用戶以及puppet服務運行時所用的用戶,如下:

cat /etc/passwd

ps aux |grep puppet

clip_image045

clip_image046

通過上圖,我們可以看到puppet-server在安裝時確實新建用戶puppet,以及在運行時使用的確實puppet用戶。

查看puppet服務所使用的端口,如下:

/etc/init.d/puppetmaster start

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
成人福利视频在线观看| 欧美精品手机在线| 91精品国产综合久久香蕉的用户体验| 欧美电影电视剧在线观看| 精品国产拍在线观看| 欧美一级在线播放| 日日噜噜噜夜夜爽亚洲精品| 91精品国产综合久久男男| 一区二区三区视频在线| 亚洲国产女人aaa毛片在线| 2020欧美日韩在线视频| 91精品国产高清自在线看超| 色噜噜狠狠狠综合曰曰曰| 色偷偷88888欧美精品久久久| 欧美性20hd另类| 国产精品久久久久久一区二区| 成人网中文字幕| 亚洲高清色综合| 成人精品一区二区三区电影免费| www.国产一区| 伊人成人开心激情综合网| 欧美成aaa人片免费看| 91中文字幕在线| 国产精品一区二区三区在线播放| 51色欧美片视频在线观看| 久久久久久久久久久亚洲| 欧美日韩激情视频8区| 欧美大片网站在线观看| 亚洲欧美制服第一页| 国产精品91免费在线| 成人天堂噜噜噜| 欧美亚洲成人网| 欧美精品久久一区二区| 亚洲a成v人在线观看| 亚洲欧美中文日韩在线v日本| 久久夜色精品国产亚洲aⅴ| 69久久夜色精品国产69乱青草| 日韩欧美在线网址| 欧美丝袜美女中出在线| 国产成人高清激情视频在线观看| 亚洲成人免费网站| 国模精品视频一区二区三区| 国产午夜精品麻豆| 久久视频国产精品免费视频在线| 久热精品视频在线观看一区| 久久久久久尹人网香蕉| 中文字幕成人精品久久不卡| 91系列在线播放| 91色在线视频| 欧美日韩国产123| 精品久久久久久久久久久久久| 久久久久久久999精品视频| 国产精品九九九| 在线观看国产精品91| 精品视频在线播放色网色视频| 日韩av黄色在线观看| 国产精品一区二区三区成人| 成人免费在线视频网址| 久久天天躁狠狠躁夜夜爽蜜月| 少妇高潮久久久久久潘金莲| 97成人精品区在线播放| 国产精品视频区1| 亚洲精品日韩av| 日韩中文字幕视频在线观看| 法国裸体一区二区| 亚洲一级免费视频| 欧美高清视频在线观看| 国产精品日韩久久久久| 日本午夜在线亚洲.国产| 日韩av影视在线| 欧美日韩xxx| 国产精品高精视频免费| 日韩美女av在线免费观看| 亚洲国产成人久久| 亚洲精品v欧美精品v日韩精品| 日韩av在线精品| 在线日韩日本国产亚洲| 欧美在线视频网站| 91久久精品国产91久久性色| 在线国产精品视频| 热re91久久精品国99热蜜臀| 欧美日韩免费区域视频在线观看| 亚洲肉体裸体xxxx137| 欧美乱人伦中文字幕在线| 黑丝美女久久久| 88国产精品欧美一区二区三区| 日韩精品免费在线播放| 欧美成人性生活| 日韩精品视频免费| 日韩免费在线电影| 热门国产精品亚洲第一区在线| 精品国偷自产在线视频99| 成人在线中文字幕| 国产成人短视频| yw.139尤物在线精品视频| 欧美俄罗斯乱妇| 91色p视频在线| 91精品国产亚洲| 国产精品网红直播| 精品女厕一区二区三区| 日韩网站免费观看| 亚洲女人天堂色在线7777| 久久精品男人天堂| 91久久久久久国产精品| 欧美www视频在线观看| 国产香蕉一区二区三区在线视频| 高跟丝袜一区二区三区| 日韩在线免费视频观看| 色噜噜狠狠色综合网图区| 久久的精品视频| 国产精品一区二区三区成人| 精品国产一区二区三区久久狼黑人| 奇米4444一区二区三区| 福利视频导航一区| 日韩精品丝袜在线| 国产精品十八以下禁看| 57pao国产成人免费| 国产精品成人免费视频| 成人免费福利视频| 亚洲精品视频在线观看视频| 日韩精品黄色网| 中文字幕九色91在线| 亚洲国产成人精品女人久久久| 精品久久久久久久久久ntr影视| 欧美日韩国产丝袜另类| 97涩涩爰在线观看亚洲| 欧美激情喷水视频| 九九久久精品一区| 国内精品国产三级国产在线专| 一本一道久久a久久精品逆3p| 日韩欧美成人精品| 国产免费一区二区三区在线能观看| 国产精品自拍偷拍| 欧美专区在线播放| 亚洲精品视频免费| 中文字幕少妇一区二区三区| 色婷婷综合久久久久中文字幕1| 日韩成人在线视频| 久久夜精品va视频免费观看| 一区二区三区www| 亚洲天堂男人天堂女人天堂| 一区二区三区在线播放欧美| 17婷婷久久www| 久久成人这里只有精品| 国产欧美一区二区三区视频| 97超级碰碰人国产在线观看| 亚洲国产97在线精品一区| 欧美三级欧美成人高清www| 一区二区三区久久精品| 国产有码在线一区二区视频| 在线性视频日韩欧美| 日韩中文字幕网站| 不卡伊人av在线播放| 亚洲色图第一页| 欧美激情二区三区| 韩国精品美女www爽爽爽视频| 美女视频黄免费的亚洲男人天堂| 欧美黑人性生活视频| 亚洲丁香婷深爱综合| 欧美尺度大的性做爰视频| 欧美中文字幕在线视频| 国内偷自视频区视频综合| 精品久久久久久久久久国产| 欧美性xxxxx|