在一次关机换盘之后迁移虚拟机时提示“ERROR: migration aborted (duration 00:00:00): Can’t connect to destination address using public key”。

首先先试试通用方法,在每一个节点上执行如下命令:
1 | pvecm updatecerts |
然后重试,查看是否有恢复。当然如果这就能恢复我甚至都不想水这篇blog。
- 测试问题所在:
在欲迁移节点上执行:把里面的1
/usr/bin/ssh -e none -o 'BatchMode=yes' -o 'HostKeyAlias=[NODENAME]' root@[NODEIP] /bin/true
[NODENAME]替换为你的被迁移节点名、[NODEIP]替换为你被迁移节点的IP
测试结果如下:1
2root@pve03:~# /usr/bin/ssh -e none -o 'BatchMode=yes' -o 'HostKeyAlias=pve02' root@10.100.100.127 /bin/true
Host key verification failed. - 在每一个节点上执行:
1
2
3
4cd ~/.ssh
mv id_rsa id_rsa.old
mv id_rsa.pub id_rsa.pub.old
mv config config.old - 在每一个节点上执行:
1
2pvecm updatecerts -f
systemctl restart pvedaemon pveproxy pve-cluster
此时问题应该已经解决并能够正常迁移和HA。

具体问题产生原因尚不明确,且问题发生在节点下电换盘之后,WebUI可以打开其他节点的SSH但无法进行迁移,猜测可能是由于有节点未进行重启换盘,换盘的节点刷新了配置文件但未换盘的节点没有。因此猜测单独在未换盘重启的节点上执行systemctl restart pvedaemon pveproxy pve-cluster应该也是有效的。

