gpt4 book ai didi

Ansible 在库存中使用变量

转载 作者:行者123 更新时间:2023-12-05 03:51:52 26 4
gpt4 key购买 nike

我有一个带有以下私钥的 ec2 实例 [10.0.0.100]:test01.pem

我有一个带有以下私钥的 ec2 实例 [10.0.0.200]:test02.pem

我的个人电脑中有一个主机文件:

主持

[production]
10.0.0.100 ansible_ssh_user=ubuntu ansible_ssh_private_key_file=/ok/test01.pem
10.0.0.200 ansible_ssh_user=ubuntu ansible_ssh_private_key_file=/ok/test02.pem

我想要这样的东西:主机

[vars]
test01_pem=/ok/test01.pem
test0_pem=/ok/test02.pem

[production]
10.0.0.100 ansible_ssh_user=ubuntu ansible_ssh_private_key_file=$test01_pem
10.0.0.200 ansible_ssh_user=ubuntu ansible_ssh_private_key_file=$test02_pem

我该怎么做?

最佳答案

与其他 ansible 定义一样,您必须使用 jinja2 模板。此外,您需要声明附加到“所有”组的“全局”变量。我建议你去看看 inventory documentation了解更多。

作为一个简单的例子,从您的 ini 库存开始,这将给出:

[all:vars]
test01_pem=/ok/test01.pem
test02_pem=/ok/test02.pem

[production]
10.0.0.100 ansible_ssh_user=ubuntu ansible_ssh_private_key_file="{{ test01_pem }}"
10.0.0.200 ansible_ssh_user=ubuntu ansible_ssh_private_key_file="{{ test02_pem }}"

关于Ansible 在库存中使用变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62596303/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com