首页 文章

如何在剧本中使用保险库保护变量

提问于
浏览
0

我正在尝试使用保险库加密敏感信息 . 我们可以在playbook任务中使用保险库保护变量吗?如果有,有人可以提供一些很好的例子吗?

这就是我所做的:

1:创建角色目录结构

2:创建了包含以下数据的groups_vars / vars文件

mysql_port:3306 mysql_host:10.0.0.3 mysql_user:fred

执行以下命令以创建加密文件

ansible-vault创建group_vars / vault

以下数据

vault_ear_password:supersecretpassword

这是最终的目录结构

.

├── . . .

├──group_vars/

│└──数据库/

│├──凡人

│└──跳马

└── . . .

现在在group_vars / vars文件中,我有以下条目

ear_password:“{}”

现在,我的查询是,我们不能在剧本中使用变量{},这样我就可以得到以下 Value :supersecretpassword

1 回答

  • 1

    是的,您可以通过这种方式使用保险库中的变量 .

    问题在于您的目录结构:如果您希望为所有主机定义此变量,则应将 varsvault 文件放入 group_vars/all/ 目录,或者将它们放在 group_vars/<group_name>/ 目录下以为特定组定义它们(如示例中的 database ) ) .

    在当前目录结构中, vars 文件中的变量将转到名为 vars 的组,而 vault 文件中的变量将转到名为 vault 的组 .

相关问题