介绍
本来已经在虚拟机中安装好了 Salt。不想测试时无意运行了 salt ‘*’ pip.install salt,可能与原来用脚本安装 Salt 起了冲突。导致 Salt 命令各种报错。不得不重装 Salt,顺带记录下相关的步骤。
安装
下载安装 SALT MASTER(包含了 MINION)
curl -L https://bootstrap.saltstack.com -o install_salt.sh
sudo sh install_salt.sh -P -M
下载安装 SALT MINION
curl -L https://bootstrap.saltstack.com -o install_salt.sh
sudo sh install_salt.sh -P
配置
配置文件位置:/etc/salt/master 和 /etc/salt/minion
通过 KEY 建立 MASTER 和 MINION 的连接
salt-key -F master
复制 master.pub 对应的内容(指纹)。粘贴到 minion 配置文件的 master_finger的值,重启 minion。
查看所有的 key
salt-key -L
确认后接受 key
salt-key -A
salt-key -L
验证
假设 minion 为 alpha,
# salt alpha test.ping
alpha:
True
如果结果不对重点检查 master_finger 的值有没有复制错了????。
补充:Salt Restful api 接口配置
安装 salt-api
yum install salt-api
创建用户
为了做权限控制(pam),创建用户 saltdev,并设置密码
adduser saltdev
passwd saltdev
配置和启动
增加 master 相关配置
rest_cherrypy:
port: 8000
disable_ssl: True
# ssl_crt: /etc/pki/tls/certs/localhost.crt
# ssl_key: /etc/pki/tls/certs/localhost.key
external_auth:
pam:
saltdev:
- .*
- '@runner'
- '@wheel'
重启 master,启动 salt-api。
验证
访问相应 ip 的 8000 端口,例如 localhost:8000,查看是否有返回结果。