自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

自動化運(yùn)維之 Puppet 實(shí)戰(zhàn)

運(yùn)維 系統(tǒng)運(yùn)維 自動化
近幾年自動化運(yùn)維管理快速的發(fā)展,得到了很多IT運(yùn)維人員的青睞,一個完整的自動化運(yùn)維包括系統(tǒng)安裝、配置管理、服務(wù)監(jiān)控三個方面。那今天咱們大家一起來學(xué)習(xí)一下puppet實(shí)際運(yùn)維中的案例。

  隨著IT行業(yè)的迅猛發(fā)展,傳統(tǒng)的運(yùn)維方式靠大量人力比較吃力,近幾年自動化運(yùn)維管理快速的發(fā)展,得到了很多IT運(yùn)維人員的青睞,一個完整的自動化運(yùn)維包括系統(tǒng)安裝、配置管理、服務(wù)監(jiān)控三個方面。那今天咱們大家一起來學(xué)習(xí)一下Puppet實(shí)際運(yùn)維中的案例。僅供參考,歡迎大家提更多的意見!

  一、應(yīng)用背景

  某公司新到500臺服務(wù)器,需要安裝Linux系統(tǒng),并部署上線以及后期的管理配置。對于系統(tǒng)安裝,這個時候肯定得采用批量安裝的,常見批量安裝方式有大家熟知的Kickstart和Cobbler,具體配置方法,網(wǎng)上也有很多好文章,這里略過。

  提示:如果采用自動安裝的話,我們可以自動初始化系統(tǒng)、內(nèi)核簡單優(yōu)化、及常見服務(wù)、軟件客戶端等安裝。當(dāng)然Puppet客戶端也可以放在Kickstart中安裝并配置完畢。

  當(dāng)系統(tǒng)穩(wěn)定運(yùn)行后,現(xiàn)在我們需要調(diào)整和管理部分服務(wù)器,例如要修改100臺服務(wù)器的系統(tǒng)參數(shù)、遠(yuǎn)程執(zhí)行命令等,這時候如何操作呢?我們可能會想到腳本,想法很好,如果讓你手動去100臺服務(wù)器執(zhí)行同樣的腳本、或者修改某一個配置,是不是也浪費(fèi)時間呢,利用Puppet可以在幾分鐘、甚至數(shù)秒內(nèi)全部搞定。

  二、實(shí)際案例配置

  現(xiàn)在有一個需求,需要修改100臺Linux服務(wù)器上的crontab ntp時間服務(wù)器地址,原服務(wù)器crontab NTP配置段為:

  0 0 * * * /usr/sbin/ntpdate pool.ntp.org >>/data/logs/crontab/ntpdate.log 2>&1

  現(xiàn)在需要調(diào)整為內(nèi)部自建的服務(wù)器地址10.1.1.21,并且修改同步的時間,如下:

  0 */5 * * * /usr/sbin/ntpdate 10.1.1.21 >>/data/logs/crontab/ntpdate.log 2>&1

  編寫puppet ntp模塊:

  Vi /etc/puppet/modules/ntp/manifests/init.pp
  class ntp {
  Exec { path =>”/bin:/sbin:/bin/sh:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin”}
  exec {
  “auto change crontab ntp config”:
  command =>”sed -i -e ‘/ntpdate/s/0/*\/5 /2′ -e ‘s/pool.ntp.org/10.1.1.21/’ /var/spool/cron/root”,
      }
  }

  這段代碼的注解:創(chuàng)建ntp模塊,利用exec資源遠(yuǎn)程執(zhí)行一條命令,同樣可以舉一反三,其他的修改和配置都可以參考此方法。其中Exec path的意思是定義全局path。如果不定義的話,每一次exec資源都要定義一個path路徑。

  二、實(shí)際案例配置

  當(dāng)我們有大規(guī)模集群的時候,所有服務(wù)器要求要求數(shù)據(jù)一致,可以采用rsync同步,配置rsync服務(wù)器端,客戶端執(zhí)行腳本命令即可。同樣可以使用puppet+腳本來同步,這樣比較快捷,當(dāng)然也可以使用puppet rsync模塊。Rsync配置此處忽略,直接上puppet代碼:

  ##定義www模塊

  class www {

  ##定義全局path

  Exec { path =>”/bin:/sbin:/bin/sh:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin”}

 

  ##推送sh腳本到客戶端,192-9-117-162-tdt.com為服務(wù)端

  file {
  “/data/sh/rsync_www_client.sh”:
  source =>”puppet://192-9-117-162-tdt.com/files/www/rsync_www_client.sh”,
  owner =>”root”,
  group =>”root”,
  mode =>”755″,
  }

 

  ##推送密鑰文件到客戶端,權(quán)限設(shè)置為600

  file {
  “/etc/rsync.pas”:
  source =>”puppet://192-9-117-162-tdt.com/files/www/rsync.pas”,
  owner =>”root”,
  group =>”root”,
  mode =>”600″,
  }

  ##遠(yuǎn)程執(zhí)行命令,備份原有程序,并判斷rsync客戶端腳本是否有修改,如果有變化,則執(zhí)行。

  exec {
  “auto backup www data”:
  command =>”mkdir -p /data/backup/`date +%Y%m%d`;mv /data/index /data/backup/www/`date +%Y%m%d` ; /bin/sh /data/sh/rsync_www_client.sh “,
  user =>”root”,
  subscribe =>File["/data/sh/rsync_bus_client.sh"],
  refreshonly =>”true”,
      }
  }

  三、測試puppet

  注*這里如果要使用Puppetrun(Puppet kick)推送功能的話,需要提前配置好客戶端,并在客戶端授權(quán)允許服務(wù)端發(fā)送信號,具體配置文章可查看

  在服務(wù)器端執(zhí)行:

  puppet kick –d –host `cat puppet.txt`

  Cat Puppet.txt內(nèi)容為需要同步的客戶端的主機(jī)名:

  192-9-117-163-tdt.com
  192-9-117-164-tdt.com
  192-9-117-165-tdt.com

  四、puppet總結(jié)

  本文僅供參考,通過了解和學(xué)習(xí),我們可以更加深入的去理解Puppet工作原理以及深入配置,舉一反三:

  1、如何在master端對客戶端進(jìn)行分組?除了正則還可以用什么?

  2、當(dāng)服務(wù)器數(shù)量不斷增加,一臺puppe tmaster肯定很吃力,如何擴(kuò)展?如何更好的維護(hù)和統(tǒng)一管理puppet node配置?

  3、如何結(jié)合SVN直接提交代碼?等等問題。

責(zé)任編輯:黃丹 來源: mysqlops
相關(guān)推薦

2012-05-05 21:43:27

puppet自動化運(yùn)維

2012-05-05 21:28:44

2012-05-05 21:48:43

puppet自動化運(yùn)維

2012-05-05 22:27:46

puppet自動化運(yùn)維

2012-05-04 19:45:30

puppet自動化運(yùn)維

2012-05-05 21:03:35

puppet自動化運(yùn)維

2012-05-05 22:10:13

puppet自動化運(yùn)維

2013-04-11 17:31:28

運(yùn)維自動化Cobbler

2012-05-05 21:22:40

2014-08-04 10:10:35

IT運(yùn)維自動化運(yùn)維

2014-08-04 17:30:57

自動化運(yùn)維puppet

2014-09-22 11:24:18

運(yùn)維

2010-08-12 17:39:07

網(wǎng)站運(yùn)維自動化管理

2012-10-22 14:54:48

2017-03-22 18:30:44

Linux運(yùn)維自動化ansible

2011-09-01 10:22:03

Cobbler運(yùn)維自動化

2017-03-22 16:31:30

Linux運(yùn)維自動化ansible

2017-10-13 13:14:35

互聯(lián)網(wǎng)

2018-06-23 07:31:05

2013-04-17 15:48:51

點(diǎn)贊
收藏

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