2016-11-07 67 views
0

我试图使用aws_eip模块的指南将EIP分配给ec2实例。但由于某种原因,aws_eip模块在device_id上存在一些问题。我正在使用1.9.4:Ansible aws_eip:'模块不支持的参数:device_id'

TASK: [associate an elastic IP with an instance] ****************************** 
failed: [localhost] => {"failed": true} 
msg: unsupported parameter for module: device_id 

FATAL: all hosts have already failed -- aborting 

我假设它要我使用device_id以外的东西。我应该使用什么?

回答

0

显然文档中的例子是错误的。您应该使用instance_id而不是device_ip。这是你的任务应该是什么样子(注意:"{{ ec2['tagged_instances'][0]['id'] }}"是ansible变量存储实例ID):

- name: associate an elastic IP with an instance 
    ec2_eip: 
    region: 'us-west-2' 
    instance_id: "{{ ec2['tagged_instances'][0]['id'] }}" 
    ip: "{{ elastic_ip }}" 
+1

有一个关于每个模块的参数版本支持注释。对于'device_id',它是'version_added:“2.0”'。考虑升级你的Ansible版本。 –