安装
yum install -y salt-master salt-minion
启动
systemctl start salt-master
cd /etc/salt
配置minion服务器
vi minion
第16行
master: 111.67.205.109
78行有个ID是高速master我是谁
配置master服务器
vi /etc/salt/minion
master: 111.67.205.109
启动master和minion两台服务器的minion
systemctl start salt-minion
秘钥公钥机制
在master服务器中
salt-key -A同意所有
在master服务器验证
salt '*' test.ping
返回
Twiss:
true
查看端口
netstat -ntlp
多了一个4505 python 和4506 python
检查所有的4505链接
# lsof -n -i:4505
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
salt-mast 14488 root 13u IPv4 40035 0t0 TCP *:4505 (LISTEN)
salt-mast 14488 root 15u IPv4 44384 0t0 TCP 111.67.205.109:4505->111.67.205.109:56294 (ESTABLISHED)
salt-mini 15287 root 25u IPv4 44383 0t0 TCP 111.67.205.109:56294->111.67.205.109:4505 (ESTABLISHED)
群执行命令
salt '*" cmd.run 'w'
Salt生产实践建议
1.不建议使用Salt的File模块 目录管理 进行代码部署
- 命令编排的状态管理
- 压缩包,file.managed
- cmd.run 执行部署
2.配置管理,不建议使用salt管理项目代码的配置文件
- 分层管理,Salt直观了服务例如Nginx Tomcat Apache
3.如果有固定文件服务器,可以使用source: salt:// http:// ftop://
4.SLS版本化
- 创建一个Git项目
- 找一个测试环境,编写SLS,测试,git commit && git push 到版本库
- 生产环境git pull,测试。全部执行