我对Ansible库存有疑问。是否可以从MySQL数据库加载库存而不是文件?我正在寻找在调用playbook时指定存储在My SQL DB中的主机ssh密钥。这种方法的原因是,根据我的理解,为了通过ansible配置主机,应该将ssh密钥添加到已知的hosts文件中,以避免密码提示并启用基于密钥的登录。在完全自动化的环境中,我想避免密码输入并在文件中存储密码有明显的安全问题。
答案 0 :(得分:2)
是的,您可以使用Ansible的dynamic inventory从任何地方加载广告资源数据。请查看AWS库存脚本,以获取为实例列表调用API的示例。
这种方法的原因在于,根据我的理解,为了通过ansible配置主机,应该将ssh密钥添加到已知的hosts文件中,以避免密码提示并启用基于密钥的登录。
不一定。如果您经常使用实际来来往往的AWS,可以使用host_key_checking=False
关闭Ansible配置中的主机密钥检查。这具有您应该注意的安全隐患,但在处理您在AWS上看到的短期实例时非常常见。
在完全自动化的环境中,我想避免密码输入并在文件中存储密码存在明显的安全问题。
应该注意Ansible有一个encrypted vault可用于密码。但是,基于密钥的身份验证通常是可行的方法。