本来已经在虚拟机中安装好了 Salt。不想测试时无意运行了 salt ‘*’ pip.install salt,可能与原来用脚本安装 Salt 起了冲突。导致 Salt 命令各种报错。不得不重装 Salt,顺带记录下相关的步骤。
curl -L https://bootstrap.saltstack.com -o install_salt.sh
sudo sh install_salt.sh -P -M
curl -L https://bootstrap.saltstack.com -o install_salt.sh
sudo sh install_salt.sh -P
配置文件位置:/etc/salt/master 和 /etc/salt/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 的值有没有复制错了?。
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,查看是否有返回结果。