cheng029 发表于 2018-8-1 06:45:31

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      10 14:18 ?      00:00:00 /usr/bin/python /usr/bin/salt-master -d
  
root       9079   90783 14:18 ?      00:00:00 /usr/bin/python /usr/bin/salt-master -d
  
root       9080   90780 14:18 ?      00:00:00 /usr/bin/python /usr/bin/salt-master -d
  
root       9081   90780 14:18 ?      00:00:00 /usr/bin/python /usr/bin/salt-master -d
  
root       9086   90780 14:18 ?      00:00:00 /usr/bin/python /usr/bin/salt-master -d
  
root       9087   90865 14:18 ?      00:00:00 /usr/bin/python /usr/bin/salt-master -d
  
root       9088   90864 14:18 ?      00:00:00 /usr/bin/python /usr/bin/salt-master -d
  
root       9093   90865 14:18 ?      00:00:00 /usr/bin/python /usr/bin/salt-master -d
  
root       9094   90865 14:18 ?      00:00:00 /usr/bin/python /usr/bin/salt-master -d
  
root       9099   90864 14:18 ?      00:00:00 /usr/bin/python /usr/bin/salt-master -d
  
root       9100   90860 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      10 14:27 ?      00:00:00 /usr/bin/python /usr/bin/salt-minion -d
  

  
5、使用salt-minion命令测试
  
salt-minion -l debug
  
Reading configuration from /etc/salt/minion
  
Including configuration from '/etc/salt/minion.d/minion.conf'
  
Reading configuration from /etc/salt/minion.d/minion.conf
  
Configuration file path: /etc/salt/minion
  
Setting up the Salt Minion "10.1.10.185"
  
Created pidfile: /var/run/salt-minion.pid
  
Reading configuration from /etc/salt/minion
  
Including configuration from '/etc/salt/minion.d/minion.conf'
  
Reading configuration from /etc/salt/minion.d/minion.conf
  
Attempting to authenticate with the Salt Master at 10.1.10.117
  
Initializing new SAuth for ('/etc/salt/pki/minion', '10.1.10.185', 'tcp://10.1.10.117:4506')
  
The Salt Master has cached the public key for this node, this salt minion will wait for 10 seconds before attempting to re-authenticate
  
Waiting 10 seconds before retry.
  
The Salt Master has cached the public key for this node, this salt minion will wait for 10 seconds before attempting to re-authenticate
  
Waiting 10 seconds before retry.
  
The Salt Master has cached the public key for this node, this salt minion will wait for 10 seconds before attempting to re-authenticate
  
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? 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/
页: [1]
查看完整版本: SaltStack安装和测试