首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ansible ec2.py / boto EC2验证

ansible ec2.py / boto EC2验证
EN

Stack Overflow用户
提问于 2016-03-01 04:06:40
回答 2查看 152关注 0票数 0

我正在写一本剧本来验证我们的云形成堆栈(端口80打开,httpd.conf具有正确的设置,实例类型是正确的,等等)。让我头疼的一件事就是如何验证EC2标签。

代码语言:javascript
复制
key=Name, value=testec2

我已经尝试了下面的方法,并以多种不同的方式更改了when条件。

代码语言:javascript
复制
- name: Check Name Tag
  action: debug msg="Name Tag Exists."
  when: "ec2_tag_Name"

尝试过的示例

代码语言:javascript
复制
when: "tag_Name_testec2"
when: " ec2_tag_Name_testec2"
when: "ec2_tag_Name"

实际上,我已经尝试了相当多的品种,但这些都是我很容易记住的。

当我运行"ec2.py --list“时,它会输出多种格式的标记

代码语言:javascript
复制
"ec2_tag_Name": "testec2",
"tag_Name_testec2": [

任何建议都将不胜感激。

EN

回答 2

Stack Overflow用户

发布于 2016-03-01 04:42:51

我使用tag_Name_testec2,但这是hostsvars中的一个组。不是公共变量。为了避免麻烦,首先在ec2.ini中更改缓存最大年龄,从20更改为1:

cache_max_age =1

看看你有没有像地域、公网或内网ip这样的过滤器。

你可以这样调试你的hostvar:

代码语言:javascript
复制
[batman@myhost myproject]$ ansible -i ec2.py tag_Name_webserver -u ec2-user -m debug -a msg="{{ hostvars[inventory_hostname]['ec2_id'] }}" -vvv
Using /etc/ansible/ansible.cfg as config file
10.78.17.117 | SUCCESS => {
    "msg": "i-b34cb736"
}
票数 0
EN

Stack Overflow用户

发布于 2016-03-02 22:32:18

如果有人感兴趣,我终于想明白了。请随意指出并嘲笑没有注意到的“定义”缺失。

名称:检查名称标记类型操作:调试msg=“名称标记存在。”when:“定义了ec2_tag_Name”

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35708623

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档