我正在使用手册创建ami并尝试获取新创建的ami编号。但是,调试越来越“味精“: ”未更新AMI '“' 请帮Ansible:无法获取新创建的AMI的AMI编号
- name: Create AMI
ec2_ami:
region: "{{ec2_region}}"
name: "aws-{{ec2_region}}"
state: present
instance_id: "{{ec2_info.instances.0.id}}"
wait: yes
tags:
Name: "aws-{{ec2_region}}-mr-ami"
deployment_type: "{{deployment_type}}"
pop_type: "{{pop_type}}"
register: image
- pause:
seconds: 10
- debug:
msg: "{{image}}"
- name: Set image id as fact
set_fact:
mr_ami_id: "{{image.image_id}}"
剧本输出
TASK [创建AMI] ******* ************************************************** ************************************************** **************** ok:[localhost] => { “changed”:false, “invocation”:{ “module_args”:{ “architecture”:“x86 _64" , “aws_access_key”:空, “aws_secret_key”:空, “delete_snapshot”:假的, “说明”: “”, “的device_mapping”:空, “ec2_url”:空, “image_id” :空, “INSTANCE_ID”: “我-065404d0d37e0acfb”, “kernel_id”:空, “launch_permissions”:空, “名”: “AWS-AP-东南-2- MessageRelay”, “no_reboot”: false, “profile”:null, “region”:“ap-southeast-2”, “root_device_name”:null, “security_token”:null, “sta te“:”present“, ”tags“:{ ”Name“:”aws-ap-southeast-2-mr-ami“, ”deployment_type“:”dev“, ”pop_type“:”mgmt“ }, “validate_certs”:真实, “virtualization_type”: “HVM”, “等待”:真实, “WAIT_TIMEOUT”: “900” } }, “launch_permissions”:{}, “味精” :“AMI未更新”}
任务[暂停] ****************************** ************************************************** *************************************** *****任务路径:/root/******************/create_ami.yml:24暂停10秒(ctrl + C然后'C' =继续提前,ctrl + C然后'A'= abort)ok:[localhost] => { “changed”:false, “delta”:10, “rc”:0, “start”:“2017 -08-01 08:48:29.756546“, ”stderr“:”“, ”stdout“:”暂停10.0秒“, ”stop“:”2017-08-01 08:48:39.756843“, “user_input”:“”}
TASK [debug] ********************************** ************************************************** ********************************************任务路径:/ root/*****************/create_ami.yml:27 ok:[localhost] => { “变为”:假, “msg” 中:{ “改变”:假, “launch_permissions”:{}, “msg” 中: “AMI未更新” }}
TASK [设置图像ID为事实] ****************************************** ************************************************** *********************任务路径:/ root/***********/trunk/ncs/pop-deployment/*** ***** _ asg/tasks/create_ami.yml:30致命:[localhost]:失败!=> { “failed”:true, “msg”:“field'args'有一个无效值,它看起来包含一个未定义的变量,错误是:'dict object'没有属性'image_id' \ n \ n错误似乎在'/root/**************************/create_ami.yml'中:第30行,列3,但可能在文件的其他位置取决于确切的语法问题。\ n \ n违规行显示为:\ n \ n \ n-名称:将图像ID设置为事实\ n ^此处\ n“}
PLAY RECAP ******************************************** ************************************************** ************************************ ip-10-10-5-111.ap-southeast- 2.compute.internal:ok = 13 changed = 9 unreachable = 0 failed = 0 localhost:ok = 69 changed = 31 unreachable = 0 failed = 1
你确定'AMI'正在创建吗?你能检查AWS控制台吗? – helloV
@helloV,这是因为名称为“aws - {{ec2_region}}”的AMI已经存在,因此没有创建新的ami。我删除了旧的AMI,并再次运行剧本没有任何问题。感谢您的答复。 – moodylearner