在Ubuntu上快速安裝最新版本的Puppet
原創(chuàng)【51CTO快譯】puppet是一種Linux、Unix平臺的集中配置管理系統(tǒng),使用自有的puppet描述語言,可管理配置文件、用戶、cron任務(wù)、軟件包、系統(tǒng)服務(wù)等。puppet把這些系統(tǒng)實體稱之為資源,其設(shè)計目標(biāo)是簡化對這些資源的管理以及妥善處理資源間的依賴關(guān)系。
雖然Ubuntu的官方軟件源中已經(jīng)加入了Puppet,但是官方源中的Puppet版本太老,不但很多新功能沒有,而且舊版本還可能有bug(比如在Puppet 2.6.4版本中的一個重大bug #6541 會在not-a-checksum MD5不對的情況下清空 file 文件【消息來源】)。結(jié)果就是我們?nèi)匀徊坏貌皇謩影惭bPuppet。
Screenage的博主,資深Linux咨詢師與系統(tǒng)管理員Caspar Clemens Mierau提供了兩個腳本可以快速安裝Puppet,大大簡化了安裝過程。
客戶端安裝:
$ bash < <(wget -qO - https://bit.ly/install-puppet-agent)
Master安裝:
$ bash < <(wget -qO - https://bit.ly/install-puppet-master)
(51CTO編輯注:bit.ly是國外流行的短網(wǎng)址服務(wù),實際地址在github上:
https://raw.github.com/moviepilot/puppet/master/tools/install-puppet-agent.sh
https://raw.github.com/moviepilot/puppet/master/tools/install-puppet-master.sh
不放心的朋友們可以自己檢查腳本內(nèi)容。
客戶端安裝腳本:
#!/bin/bash if [ "$(id -u)" != "0" ]; then echo "This script must be run as root" 1>&2 exit 1 fi # refresh package list apt-get update # bootstrap ruby env apt-get -y install irb libopenssl-ruby libreadline-ruby rdoc ri ruby ruby-dev git-core # get a working gem version and update it to the most recent one cd /usr/local/src wget http://production.cf.rubygems.org/rubygems/rubygems-1.5.2.tgz tar -xzf rubygems-1.5.2.tgz cd rubygems-1.5.2 ruby setup.rb update-alternatives --install /usr/bin/gem gem /usr/bin/gem1.8 1 gem update --system # install puppet itself gem install puppet --no-ri --no-rdoc
Master端安裝腳本:
#!/bin/bash if [ "$(id -u)" != "0" ]; then echo "This script must be run as root" 1>&2 exit 1 fi # refresh package list apt-get update # bootstrap ruby env apt-get -y install irb libopenssl-ruby libreadline-ruby rdoc ri ruby ruby-dev git-core # get a working gem version and update it to the most recent one cd /usr/local/src wget http://production.cf.rubygems.org/rubygems/rubygems-1.5.2.tgz tar -xzf rubygems-1.5.2.tgz cd rubygems-1.5.2 ruby setup.rb update-alternatives --install /usr/bin/gem gem /usr/bin/gem1.8 1 gem update --system # install puppet itself gem install puppet --no-ri --no-rdoc # we want sqlite3 and rails for stored configs on the puppet master apt-get -y install sqlite3 libsqlite3-ruby libsqlite3-dev gem install sqlite3-ruby --no-ri --no-rdoc gem install rails -v 2.3.11 --no-ri --no-rdoc
)
這兩行命令會從github獲取***的Puppet安裝腳本,在你的機器上從Ubuntu官方源獲取安裝Ruby(版本老了點,但是運行Puppet是沒問題的),獲取一個上游版本的gem軟件(注:gem是打包好的Ruby應(yīng)用庫,可以大大簡化Ruby環(huán)境的搭建過程。你可以將其想象為紅帽的yum機制或Debian的apt-get機制)并將其更新至***版本,***安裝Puppet的gem。
原文:http://www.screenage.de/blog/2011/06/06/boostrapping-a-puppet-agentmaster-on-ubuntu/
【編輯推薦】