1. 程式人生 > >saltstack自動化運維工具搭建個人筆記

saltstack自動化運維工具搭建個人筆記

技術分享 install size 為什麽 數據 font status 程序包 -c

至於為什麽選擇saltstack,因為Puppet、Chef基於Ruby開發,而ansible、saltstack基於python開發,便於後期二次,良好的可移植性。

又,ansible基於SSH協議傳輸數據,Saltstack使用消息隊列zeroMQ傳輸數據,MQ通訊和SSH通訊速度相差明顯,考慮到速度方面,排除ansible,最終選擇Saltstack。

不過兩者相比之下Ansible的安全性倒是最好,適合金融行業。

1.本次實驗環境

[[email protected] ~]# python -V
Python 2.6.6

IP 角色 系統
192.168.1.110 master redhat6.5
192.168.1.111 minion redhat6.5

2.SALTSTACK安裝

server端安裝

#導入EPEL YUM源 
rpm -Uvh http://mirror.pnl.gov/epel/5/i386/epel-release-5-4.noarch.rpm
#服務器master的安裝 
 yum -y install salt-master
chkconfig salt-master on
service salt-master start


minion端安裝

#導入EPEL YUM源 
rpm -Uvh http://mirror.pnl.gov/epel/5/i386/epel-release-5-4.noarch.rpm
yum 
-y install salt-minion
chkconfig salt-minion on
service salt-minion start

3.配置文件修改

####master端

[[email protected] ~]# vim /etc/salt/master 15 interface: 0.0.0.0 #修改地15行 303 auto_accept: True #自動接受客戶端發送過來的key,
####minion端

#vim /etc/salt/minion
master: 192.168.1.110  #你的master服務器地址
id: minion   #
你的主機名

分別啟動服務端和客戶端的salt服務

[[email protected] ~]# /etc/init.d/salt-master start
Starting salt-master daemon:                               [確定]
[[email protected] ~]# /etc/init.d/salt-minion start
Starting salt-minion daemon:                               [確定]
[[email protected] ~]# netstat -an|grep 4505
tcp        0      0 0.0.0.0:4505                0.0.0.0:*                   LISTEN      
tcp        0      0 192.168.1.110:4505          192.168.1.111:38926         ESTABLISHED 
tcp        0      0 192.168.1.110:4505          192.168.1.111:38892         ESTABLISHED 
[[email protected] ~]# netstat -an|grep 4506
tcp        0      0 0.0.0.0:4506                0.0.0.0:*                   LISTEN      

## 查看當前的salt key信息

技術分享

## 測試被控主機的連通性
技術分享

## 根據被控主機的grains信息進行匹配過濾

技術分享

遠程代碼執行測試

技術分享

#查看所有客戶端up/down狀態
[[email protected] ~]# salt-run manage.status down: up: - minion

cmd模塊(實現遠程的命令行調用執行)
技術分享

service 服務模塊(被控主機程序包服務管理)

技術分享

network模塊(返回被控主機網絡信息)

技術分享

saltstack自動化運維工具搭建個人筆記