如何使kubernetes cronjob从文件夹中识别ssh密钥

How to make kubernetes cronjob to identify ssh key from a folder

我在 kubernetes 中创建了 cron 作业,并且在 pod 目录之一中有 ssh 密钥。当我从命令行执行时它工作正常,但是当我手动触发时,cron 作业无法识别 .ssh 文件夹。

scp -i  /srv/batch/source/.ssh/id_rsa   user@server:/home/data/openings.csv  /srv/batch/source

当您从容器登录远程主机时,容器内的 SSH 客户端不知道远程主机密钥

通常,系统会要求您确认其指纹:

The authenticity of host ***** can't be established.
RSA key fingerprint is *****.
Are you sure you want to continue connecting (yes/no)?

但是由于没有交互shell,SSH 客户端失败。

两种解决方案:

  • 在容器~/.ssh/known_hosts文件中添加主机密钥
  • 禁用主机密钥检查(危险,因为不执行远程主机身份验证

    ssh -o "StrictHostKeyChecking=no" user@host