【发布时间】:2016-11-16 19:41:00
【问题描述】:
我有一个创建 ENI 的非常基本的 ansible playbook:
---
- name: create ENIs
hosts: localhost
tasks:
- name: create eni 1
ec2_eni:
subnet_id: subnet-xxxxxxx
region: us-east-1
description: my-eni
state: present
我想要做的是,当我重新运行此剧本时,它不会创建新的 ENI,而是验证已创建并存在的 ENI。
我无法传递Private IP 地址,因为我想在我们拥有的多个帐户中重复使用它。
有可能吗?
这是我正在使用的 ENI 模块:
【问题讨论】:
-
是否每次运行时都创建一个新的 ENI?
-
没有。这就是它现在正在做的事情,我想避免这种情况。
-
那么ansible是如何知道是否创建ENI的呢?除非你传递一个私有 ip,否则无法知道是创建还是跳过。
-
我可以从输出中获取 ip 并将其用作变量吗?当它第一次运行时,它发现变量是空的,所以它会创建 eni 并在后续运行中重用它。
-
是的。注册结果并保存 IP。然后你可以传递IP,这样它就不会再次创建了。
标签: amazon-web-services ansible ansible-playbook