在设置了盐主人和一个小兵之后,我能够接受主人的钥匙。运行sudo salt-key -L
表示已被接受。但是,当我尝试test.ping
命令时,主人显示:
Minion没有回来。 [没有回应]
在主人身上,日志显示:
[错误] [1642]来自minion-01的身份验证尝试失败,挂起的公钥不匹配。这可能是试图破坏Salt集群。
在小兵身上,日志显示:
[ERROR] [1113] Salt Master已缓存此节点的公钥,此盐爪将在尝试重新验证之前等待10秒
我尝试断开连接并重新连接,包括重新启动两个盒子。
答案 0 :(得分:5)
Minion did not return. [No response]
让我觉得salt-minion进程没有运行。 (在你接受主人的密钥之前,其他两个错误都是预期的行为)
检查salt-minion是否正在运行(取决于您的操作系统)
$ systemctl status salt-minion
或
$ service salt-minion status
如果它没有运行,请启动它并再次尝试测试。
$ sudo systemctl start salt-minion
或
$ sudo service salt-minion start
根据您的安装方法,可能尚未注册salt-minion以在系统启动时启动,并且您可能会在重新启动后再次遇到此问题。
现在,如果您的salt-minion实际上正在运行,并且您仍然得到No response
,我将停止该过程并在调试中重新启动minion,以便您可以观看。
$ sudo systemctl stop salt-minion
$ sudo salt-minion -l debug
你可以运行的另一个快速测试来测试你的小兵和主人之间的沟通是从小兵那里执行你的测试:
$ sudo salt-call test.ping
salt-call
不需要使用salt-minion进程来运行。它从主服务器获取状态并临时执行它们。所以,如果有效(返回
local:
True
)你可以消除minion和master之间的握手问题。
答案 1 :(得分:1)
如果您确信自己正在连接有效的Salt Master,那么
删除主公钥并重新启动Salt Minion。
主公钥可以在以下位置找到:
/etc/salt/pki/minion/minion_master.pub
答案 2 :(得分:0)
我收到了同样的错误消息。
我在user: root
中将user: ubuntu
更改为/etc/salt/minion
。
停止salt-minion
,并以salt-minion -l debug
用户身份运行ubuntu
。 salt master可以获得salt-minion
响应。
但是,当我使用salt-minion
运行systemctl start salt-minion
时,salt master出错了。 (没有回应)
我以salt-minion
用户和root
的身份运行systemctl start salt-minion
,它有效。
我不知道这是不是一个错误。
答案 3 :(得分:0)
当我将小兵从一个主人移动到另一个主人时,我遇到了同样的问题。以下是我解决它的步骤。
rm -rf /etc/salt
rm -rf /etc/salt
这样做后问题解决了。我知道这不是一个真正的解决方案,但它可能与导致此问题的密钥发生冲突。
答案 4 :(得分:0)
运行salt-minion调试模式以查看是否存在握手问题。
如果是这样,使用firewalld-cmd将salt-master端口(4506或已配置)添加到公共区域应该会有所帮助。
`firewall-cmd --permanent --zone=public --add-port=4506/tcp`
`firewall-cmd --reload`
答案 5 :(得分:0)
您在minion上的盐主密钥似乎无效(可能是由于主ip或名称更新) 故障排除步骤:-
从minion中检查master是否可以访问(简单ping测试)
删除minion(/etc/salt/pki/minion/minion_master.pub)上存在的旧主密钥
再次尝试从master到ping minion新有效密钥将自动填充
答案 6 :(得分:0)
将盐管理器移动到新服务器时,我遇到了这个问题,要修复它,我必须按以下顺序执行这些操作(Debian 9):
root@minion:~# service salt-minion stop
root@master:~# salt-key -d minion
root@minion:~# rm /etc/salt/pki/minion/minion_master.pub
root@minion:~# service salt-minion start
root@master:~# salt-key -a minion
请注意上面的奴才/主服务器。
答案 7 :(得分:0)
Minion在master的公共密钥位置是
/etc/salt/pki/master/minions
只需将其与爪牙自己的公钥(在/etc/salt/pki/minion/minion.pub
下)进行比较
如果不一样,请执行
salt-key -d *
从主人那里删除小仆的公钥,
然后执行service salt-minion restart
,以在小黄人客户端上重新启动盐小黄人。
此后,师父可以控制小兵了。