在K8S环境中利用动态创建pod的方式构建不同环境的代码是很常见的,布署方式也根据不同的环境方式不同,有直接操作k8s的,也有利用ssh插件发布到某一台服务器中,但如果机器较多,利用ansible是最好的选择。
当pipeline执行到ansible这一步时出现以错误
fatal: [106.x.x.x]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: Host key verification failed.", "unreachable": true}
这就好玩了,在后台我们添加的私钥是绝对正确的,引用的ID也是没有问题的,同时使用ssh测试也正常,为此还特地修改过镜像进入镜像中测试一切正常,这就很头痛了,网上的贴子都翻了个底朝天,没有找到答案。
为此我静下心来思考ansible的原理,反复推敲,镜像修改了8次,测试了33次,终于