操作系統centos6.3,centos6.4,windows server2008R2,windows7。
文中的下載鏈接可能會隨着saltstack官網上版本的更新,而出現變動或錯誤,請以你需要安裝的版本鏈接為准。我寫上具體鏈接是為了近段時間重復操作時方便。
本文中,linux采用EPEL安裝,windows選擇exe安裝包。
1.在你的系統中如果EPEL當前並不是enabled狀態,你可以通過如下命令啟用它。
對於RHEL 5:
rpm -Uvh http://mirror.pnl.gov/epel/5/i386/epel-release-5-4.noarch.rpm
對於RHEL 6:
rpm -Uvh http://ftp.linux.ncsu.edu/pub/epel/6/i386/epel-release-6-8.noarch.rpm
2.對於CentOS,saltstack的包分為salt,salt-master,salt-minion,salt-api,salt-halite五個。這段時間安裝的穩定版本是2014.1.7版本。
通常master和minion是結構如圖:
在salt-master上運行,
yum install salt-master
在salt-minion上運行,
yum install salt-minion
3.安裝后的簡單配置。
只需修改minion的配置文件即可。在minion上:
vim /etc/salt/minion
將master的值設置為master的hostname或IP。如果是設置hostname,minion必須能夠解析hostname。
設置id值,一個master下的所有minion有唯一的id。
4.設置防火牆。linux的selinux最好關掉。
salt-master服務需要監聽4045和4046端口,因此需要開放這兩個端口。
iptables -A INPUT -p tcp --dport 4045 -j ACCEPT
iptables -A INPUT -p tcp --dport 4046 -j ACCEPT
如果不想設置防火牆直接關掉吧,測試環境:service iptables stop。
5.啟動master和minion並設置開機啟動。
啟動Master:
service salt-master start
如果想查看啟動時saltstack做了哪些操作,可以以調試模式啟動:
salt-master -l debug
配置master開機自動啟動:
chkconfig salt-master on
啟動Minion:
service salt-minion start
調試模式啟動:
salt-minion -l debug
配置Minion開機自動啟動:
chkconfig salt-minion on
5.認證。
在master上
salt-key -L 查看當前認證的id和待認證的id
salt-key -a “minion id”
salt-key -A 接受所有為認證的節點
salt-key -D 刪除所有認證過的id
salt-key -d "minion id" 刪除指定節點
master的配置文件里有一個參數AutoAccept,默認為False,設置為True,即可自動認證。
認證成功后測試一下:
salt "*" test.ping
salt "minion id" test.ping salt "*" cmd.run "uname -a" slat "*" grains.items
6.windows server 2008上安裝minion。windows上只能安裝minion,官方也只對windows server 2008和windows 7進行了測試。
下載列表:http://docs.saltstack.com/en/latest/topics/installation/windows.html。這里下載Salt-Minion-2014.1.7-AMD64-Setup.exe。
安裝很簡單,安裝是設置master的hostname或IP地址即可。安裝后可以在windows的服務里找到salt-minion。啟動服務,再執行第5步的認證。
7.示例。
圖一
機器的信息如上圖所示。
(1)安裝上面的1,2,3,6步安裝mater和minion。其中這里的salt.linux.minion.test上的配置文件修改如下:
#注意冒號后面有一個空格,這是yaml的格式,否則啟動時會報錯 master: salt.master.test #或者master: 192.168.1.3 id: salt.linux.minion.test #如果不設置id,saltstack會把minion的hostname當作id來使。
ztp上可以在安裝是設置master和id,如圖二所示:
圖二
也可以安裝后修改配置文件C:\salt\conf\minion(我這里以默認的安裝路徑為例),修改的地方與linux上是一致的。
(2)安裝第4步設置master的防火牆。
(3)安裝第5步啟動服務。windows的服務可以通過“控制面板-管理-服務”來啟動。
(4)認證。
在master上操作:
[root@www ~]# salt-key -L Accepted Keys: Unaccepted Keys: salt.linux.minion.test salt.windows.minion.test Rejected Keys: [root@www ~]# salt-key -A The following keys are going to be accepted: Unaccepted Keys: salt.linux.minion.test salt.windows.minion.test Proceed? [n/Y] Y Key for minion salt.linux.minion.test accepted. Key for minion salt.windows.minion.test accepted.
刪掉minion參照第5步的介紹。
(5)test.ping。
[root@www ~]# salt "*" test.ping salt.linux.minion.test: True salt.windows.minion.test: True [root@www ~]# salt "*" cmd.run 'uname -a' salt.linux.minion.test: Linux salt.linux.minion.test 2.6.32-279.el6.x86_64 #1 SMP Fri Jun 22 12:19:21 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux salt.windows.minion.test: 'uname' is not recognized as an internal or external command, operable program or batch file.
完!