【发布时间】:2019-12-02 12:48:40
【问题描述】:
我已经运行了创建 aws 实例的简单任务。
在我从 AWS Web 控制台终止 ec2 实例之后创建了实例。后来我向它添加了更多任务,但永远无法使用这些任务创建 ec2 实例。
我一直收到以下错误:
致命:[本地主机]:失败! => {"changed": false, "msg": "id(s) ['i-0f513aec91787e83d'] 的实例之前已创建,但已被终止 - 使用(可能不同的)'instance-id' 参数"}
它不断报告先前的实例 ID。我可以看到我的 AWS 控制台中没有这样的实例。
谁能解释一下为什么会这样?
- name: get any running ec2 instance
ec2_instance_info:
aws_access_key: "{{ec2_access_key}}"
aws_secret_key: "{{ec2_secret_key}}"
region: "{{region}}"
filters:
instance-state-name: ['running']
register: ec2_list
- name: Display ec2_list
debug: msg="{{item.instance_id}}"
with_items: "{{ec2_list.instances}}"
- name: Terminate Any running Instances
ec2:
state: 'absent'
instance_ids: "{item.instance_id}"
with_items: "{{ec2_list.instances}}"
- name: Create new ec-2 instance
ec2:
aws_access_key: "{{ec2_access_key}}"
aws_secret_key: "{{ec2_secret_key}}"
key_name: "{{key_name}}"
id: "{{id}}"
instance_type: t2.micro
image: "{{image}}"
region: "{{region}}"
vpc_subnet_id: "{{vpc_subnet_id}}"
wait: yes
count: 1
assign_public_ip: yes
register: ec2
- name: Wait for ssh to come up
delegate_to: "{{ item.public_dns_name }}"
wait_for_connection:
delay: 60
timeout: 320
loop: "{{ ec2.instances }}"
- name: Terminate currently running Instances
ec2:
state: 'absent'
instance_ids: "{{ec2.instance_ids}}"
【问题讨论】:
标签: amazon-web-services amazon-ec2 ansible boto3 ansible-facts