SaltStack安裝和測試

我的博客已遷移到xdoujiang.com請去那邊和我交流
SaltStack是(C/S)架構的集中化管理平臺,SaltStack基於Python語言,
採用zeromq消息隊列進行通信(tcp,ipc)。

一、基礎環境
1、角色、ip、版本、內核
masterA 10.1.10.117 3.2.0-4-amd64 7.8 master
minionB 10.1.10.185 3.2.0-4-amd64 7.8 minion

2、安裝依賴包
apt-get -y install python python-dateutil python-jinja2 python-apt python-yaml python-pkg-resources python-six ca-certificates python-chardet openssl python-m2crypto python-crypto msgpack-python python-zmq python-support libgmp10 python-git python-gitdb git libjs-jquery libzmq1 libcurl3-gnutls perl-modules liberror-perl git-man dctrl-tools

二、安裝saltstack(masterA)
1、安裝salt-master
dpkg -i python-urllib3_1.7.1-1~bpo70+1_all.deb
dpkg -i python-requests_2.0.0-1~bpo70+1_all.deb
dpkg -i salt-common_2015.5.3+ds-1~bpo70+2_all.deb
dpkg -i libzmq3_3.2.3+dfsg-1~bpo70~dst+1_amd64.deb
dpkg -i python-zmq_13.1.0-1~bpo70~dst+1_amd64.deb 
dpkg -i salt-master_2015.5.3+ds-1~bpo70+2_all.deb
PS:我這裏是通過其他機器先添加源下載deb包
deb http://debian.saltstack.com/debian wheezy-saltstack main
wget -q -O - "http://debian.saltstack.com/debian-salt-team-joehealy.gpg.key" | apt-key add -

2、配置
1)備份下配置
cp /etc/salt/master /etc/salt/master.bak
2)echo "default_include: master.d/*.conf" >> /etc/salt/master
3)添加以下內容
cat /etc/salt/master.d/master.conf
interface: 10.1.10.117
publish_port: 4505
ret_port: 4506
pidfile: /var/run/salt-master.pid
sock_dir: /var/run/salt/master
log_file: /var/log/salt/master
key_logfile: /var/log/salt/key

3、重啓服務
/etc/init.d/salt-master restart
[ ok ] Restarting salt master control daemon: salt-master.

4、查看端口和進程
1)查看進程
ps -ef |grep salt
root       9078      1  0 14:18 ?        00:00:00 /usr/bin/python /usr/bin/salt-master -d
root       9079   9078  3 14:18 ?        00:00:00 /usr/bin/python /usr/bin/salt-master -d
root       9080   9078  0 14:18 ?        00:00:00 /usr/bin/python /usr/bin/salt-master -d
root       9081   9078  0 14:18 ?        00:00:00 /usr/bin/python /usr/bin/salt-master -d
root       9086   9078  0 14:18 ?        00:00:00 /usr/bin/python /usr/bin/salt-master -d
root       9087   9086  5 14:18 ?        00:00:00 /usr/bin/python /usr/bin/salt-master -d
root       9088   9086  4 14:18 ?        00:00:00 /usr/bin/python /usr/bin/salt-master -d
root       9093   9086  5 14:18 ?        00:00:00 /usr/bin/python /usr/bin/salt-master -d
root       9094   9086  5 14:18 ?        00:00:00 /usr/bin/python /usr/bin/salt-master -d
root       9099   9086  4 14:18 ?        00:00:00 /usr/bin/python /usr/bin/salt-master -d
root       9100   9086  0 14:18 ?        00:00:00 /usr/bin/python /usr/bin/salt-master -d
2)查看端口
netstat -tupnl |grep python
tcp        0      0 10.1.10.117:4505        0.0.0.0:*               LISTEN      9517/python     
tcp        0      0 10.1.10.117:4506        0.0.0.0:*               LISTEN      9539/python 

三、安裝saltstack(minionB)
1、安裝salt-minion包
dpkg -i python-urllib3_1.7.1-1~bpo70+1_all.deb
dpkg -i python-requests_2.0.0-1~bpo70+1_all.deb
dpkg -i salt-common_2015.5.3+ds-1~bpo70+2_all.deb
dpkg -i libzmq3_3.2.3+dfsg-1~bpo70~dst+1_amd64.deb
dpkg -i python-zmq_13.1.0-1~bpo70~dst+1_amd64.deb
dpkg -i salt-minion_2015.5.3+ds-1~bpo70+2_all.deb

2、配置
1)備份下配置
cp /etc/salt/minion /etc/salt/minion.bak
2)echo "default_include: minion.d/*.conf" >> /etc/salt/minion
3)添加以下內容
cat /etc/salt/minion.d/minion.conf
master: 10.1.10.117
id: 10.1.10.185

3、重啓服務
/etc/init.d/salt-minion restart
[ ok ] Restarting salt minion control daemon: salt-minion.

4、查看進程
ps -ef |grep min
root       8135      1  0 14:27 ?        00:00:00 /usr/bin/python /usr/bin/salt-minion -d

5、使用salt-minion命令測試
salt-minion -l debug
[DEBUG   ] Reading configuration from /etc/salt/minion
[DEBUG   ] Including configuration from '/etc/salt/minion.d/minion.conf'
[DEBUG   ] Reading configuration from /etc/salt/minion.d/minion.conf
[DEBUG   ] Configuration file path: /etc/salt/minion
[INFO    ] Setting up the Salt Minion "10.1.10.185"
[DEBUG   ] Created pidfile: /var/run/salt-minion.pid
[DEBUG   ] Reading configuration from /etc/salt/minion
[DEBUG   ] Including configuration from '/etc/salt/minion.d/minion.conf'
[DEBUG   ] Reading configuration from /etc/salt/minion.d/minion.conf
[DEBUG   ] Attempting to authenticate with the Salt Master at 10.1.10.117
[DEBUG   ] Initializing new SAuth for ('/etc/salt/pki/minion', '10.1.10.185', 'tcp://10.1.10.117:4506')
[ERROR   ] The Salt Master has cached the public key for this node, this salt minion will wait for 10 seconds before attempting to re-authenticate
[INFO    ] Waiting 10 seconds before retry.
[ERROR   ] The Salt Master has cached the public key for this node, this salt minion will wait for 10 seconds before attempting to re-authenticate
[INFO    ] Waiting 10 seconds before retry.
[ERROR   ] The Salt Master has cached the public key for this node, this salt minion will wait for 10 seconds before attempting to re-authenticate
[INFO    ] Waiting 10 seconds before retry.

四、簽名並測試
1、查看到10.1.10.185還沒驗證通過
salt-key list
Accepted Keys:
Denied Keys:
Unaccepted Keys:
10.1.10.185
Rejected Keys:

2、驗證通過
salt-key -a 10.1.10.185
The following keys are going to be accepted:
Unaccepted Keys:
10.1.10.185
Proceed? [n/Y] y
Key for minion 10.1.10.185 accepted.

3、查看下,已經通過驗證
salt-key list
Accepted Keys:
10.1.10.185
Denied Keys:
Unaccepted Keys:
Rejected Keys:

五、測試
1、cat 1.txt
10.1.10.185
2、salt `cat 1.txt` cmd.run 'uptime'
10.1.10.185:
     16:07:42 up 36 min,  2 users,  load average: 0.00, 0.01, 0.05
已經能看到minion端的uptime信息了

六、參考文章
https://docs.saltstack.com/en/latest/topics/installation/index.html
http://docs.saltstack.com/
https://pypi.python.org/pypi/salt
http://debian.saltstack.com/


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章