saltstack自动化运维工具
Saltstak简介:
什么是Saltstack
Saltstack基于pyhon开发的一套批量管理工具
使用ssl证书签方的方式进行认证管理
功能:
配置管理远程执行
支持docker相关模块
在特定情况下可以实现各种云平台业务的自动扩展
Saltstack架构:
服务器端master 端口4506
客户端minion 端口4505
saltstack的通信协议zeromq
Saltstack工作机制:
服务器客户端由守护进程的方式进行
Master(服务器)监听配置文件中定义的ret_port(接受minion(客户端)请求),和pubilsh_port(发布消息的端口)
当客户端运行时,它会自动连接到配置文件里master(服务器)地址ret_port端口进行连接认证
安装:
下载地址:https://repo.saltstack.com/yum/redhat/
master: 192.168.40.111
minion: 192.168.40.112
1.解压salt包
rpm -ivh rpm -ivh salt-repo-latest-3.el7.noarch.rpm
2. yum安装服务端和客户端
在master服务端上:
yum -y install salt-master
yum -y install salt-minion
在minion客户端上:
yum -y install salt-minion
3.配置服务端文件
1)配置salt-master
[root@master ~]# vim /etc/salt/master
interface: 0.0.0.0 #绑定到本地的0.0.0.0地址
publish_port: 4505 #管理端口,命令发送
user: root #运行salt进程的用户
worker_threads: 5 #salt运行线程数,线程越多处理速度越快,不要超过cpu个数
ret_port: 4506 #执行结果返回端口
pidfile: /var/run/salt-master.pid #pid文件位置
log_file: /var/log/salt/master #日志文件地址
auto_accept: False #自动接收minion的key
2)配置salt-minion文件
[root@master ~]# vim /etc/salt/minion
master: 192.168.40.111
master_port: 4506
user: root
id: master
acceptance_wait_time: 10
log_file: /var/log/salt/minion
4. 启动salt-master和salt-minion
[root@master ~]# systemctl start salt-minion
[root@master ~]# systemctl start salt-master
检查salt状态
[root@master ~]# systemctl status salt-minion
[root@master ~]# systemctl status salt-master
5. 配置客户端
配置salt-minion文件
[root@minion ~]# vim /etc/salt/minion
master: 192.168.40.111
master_port: 4506
user: root
id: minion
acceptance_wait_time: 10
log_file: /var/log/salt/minion
[root@minion ~]# systemctl start salt-minion #启动salt-minion
[root@minion ~]# systemctl status salt-minion #检查salt状态
6. 在master添加minion(master和minion交换公钥的过程)
[root@localhost salt]# salt-key -L
Accepted Keys:
192.168.40.112
Denied Keys:
Unaccepted Keys:
Rejected Keys:
拓展:
如果使用lsof 查看4505端口,会发现所有的minion在4505端口持续保持在ESTABLISHED状态。
[root@master ~]# lsof -i :4505
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
salt-mast 2907 root 12u IPv4 16492 0t0 TCP *:4505 (LISTEN)
[root@master ~]# lsof -i :4506
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
salt-mast 2927 root 20u IPv4 16519 0t0 TCP *:4506 (LISTEN)
遇到的问题
配置文件改的不对, salt源网址安装时报错,查看端口时保存的状态。