mysql - 来自 MySQL DB 的 Ansible list

标签 mysql ansible inventory

我对 Ansible 库存有疑问。是否可以从 MySQL 数据库而不是文件加载 list ?我正在寻找在调用剧本时指定存储在 My SQL 数据库中的主机 ssh key 。采用这种方法的原因是,根据我的理解,为了通过 ansible 提供主机,应该将 ssh key 添加到已知的主机文件中,以避免密码提示并启用基于 key 的登录。在完全自动化的环境中,我想避免密码输入和将密码存储在文件中有明显的安全问题。

最佳答案

是的,您可以使用 Ansible 的 dynamic inventory从任何地方加载库存数据。查看 AWS list 脚本,了解为实例列表调用 API 的示例。

The reason for this approach is that as per my understanding, in order to provision a host machine through ansible the ssh key should be added to the known hosts file to avoid the password prompt and enable key based login.

不一定。如果您使用的是像 AWS 这样的实例经常来来去去的东西,您可以使用 host_key_checking=False 在 Ansible 配置中关闭主机 key 检查。 .这具有您应该注意的安全隐患,但在处理短期实例(如您在 AWS 上看到的实例)时非常常见。

In a fully automated environment I want to avoid the password entry and storing password in a file has obvious security issues.

需要注意的是 Ansible 有一个 encrypted vault你可以使用密码。不过,基于 key 的身份验证通常是可行的方法。

关于mysql - 来自 MySQL DB 的 Ansible list ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29212481/

相关文章:

php - 如何在MYSQL查询中函数返回值之前和之后添加%

系统化时的 PHP/MySQL 约定

Ansible:运行多个操作

Ansible 2.7 include_tasks 不再接受变量

powershell - 如何使用 Powershell 输出到 Ansible Playbook 中

paypal - Paypal 交易期间何时减去库存

mysql管理产品尺寸的最佳方式

mysql - MySQL类型转换规则

javascript - Sequelize 原始查询格式日期时间

java - java中一种产品的库存只减少?