saltstack的安裝與簡單配置(一)

紫翼龍王夜發表於2015-03-11

之前使用puppet,各種笨重、各種不爽;之後有看過chef、ansible等,一直沒啥興趣;後面發現了saltstack後,一見鍾情。

優點:

  1. 首先,他速度快,基於訊息佇列+執行緒,跑完多臺裝置,都是毫秒級別的
  2. 其次,非常靈活,原始碼是python,方便理解和自定義模組(python 語言相對於其他的perl、ruby等還是很好理解的)
  3. 命令簡單,功能強大


一、salt-master的安裝

centos、redhat等系統的安裝:

現在centos下的yum源內有最新的salt-master原始碼包,安裝的話,直接
yum install salt-master -y #服務端
yum install salt-minion -y #客戶端 

ubuntu下的安裝:

13.04的軟體源收錄有salt,版本比較老0.12.0版本。但是13.04以下的版本並沒有收錄,需要新增PPA源
sudo apt-get install salt-master #服務端
sudo apt-get install salt-minion #客戶端 

13.04以下的版本,需要手工新增ppa源,才可以用包管理器安裝saltstack:

sudo apt-get install python-software-properties
echo deb  `lsb_release -sc` main | sudo tee    
/etc/apt/sources.list.d/saltstack.list
wget -q -O- "" |sudo apt-key add -
sudo apt-get update
sudo apt-get install salt-master
sudo apt-get install salt-minion 

二、配置

server端的配置:vim /etc/salt/master (master的配置檔案時預設在這條目錄下面的)

user: root
auto_accept: True #自動接收minion端的key並驗證
/etc/init.d/salt-master restart 

minion端的配置: vim /etc/salt/minion (minion配置檔案的預設路徑)

master: salt (這裡填寫的是服務端的hostname,我的server名字就是salt)
/etc/init.d/salt-minion restart 

salt minion和master的認證過程:

minion在第一次啟動時,會在/etc/salt/pki/minion/下自動生成minion.pem(private key), minion.pub(public key),然後將minion.pub傳送給master master在接收到minion的public key後,透過salt-key命令accept minion public key,這樣在master的/etc/salt/pki/master/minions下的將會存放以minion id命名的public key, 然後master就能對minion傳送指令了

來到master端:

#salt-key -L # 驗證minion的key是否接收
Accepted Keys:
sa10-007
Unaccepted Keys:
Rejected Keys: 

可以發現,是正常接收到minion端(sa10-007)的key;這裡的自動接收起源於上文提到的auto_accept: True這個引數,這個引數開啟,表示只要有minion起來就會自動被salt的server端所接收

salt-key的基本命令:

salt-key -L #檢測當前server端所有minion端key的情況,三種:接收、等待接收和拒絕
salt-key -a hostname #指定接收某臺minion的key
salt-key -A #接收Unaccepted Keys下所有的minion
salt-key -d hostname #刪除已經接收的機器中指定機器minion key (Accepted Keys:)
salt-key -D #刪除已經接收的所有機器(Accepted Keys:) 

驗證server和minion的通訊(server端進行):

#salt '*' test.ping
sa10-007:
 True 

可以發現,server端和minion端是可以正常通訊的,至此,saltstack的master和minion正常安裝以及配置完成 ,後續 將整理salt的基本使用

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30129545/viewspace-1456726/,如需轉載,請註明出處,否則將追究法律責任。

相關文章