SaltStack安装和测试


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信息了

本文永久更新链接地址

相关内容