【发布时间】:2017-01-31 02:26:57
【问题描述】:
我正在配置一个附加了多个卷的 ec2 实例。以下是我的做法。
---
- hosts: localhost
connection: local
gather_facts: false
vars:
instance_type: 't2.micro'
region: 'my-region'
aws_zone: 'myzone'
security_group: my-sg
image: ami-sample
keypair: my-keypair
vpc_subnet_id: my-subnet
tasks:
- name: Launch instance
ec2:
image: "{{ image }}"
instance_type: "{{ instance_type }}"
keypair: "{{ keypair}}"
instance_tags: '{"Environment":"test","Name":"test-provisioning"}'
region: "{{region}}"
aws_zone: "{{ region }}{{ aws_zone }}"
group: "{{ security_group }}"
vpc_subnet_id: "{{vpc_subnet_id}}"
wait: true
volumes:
- device_name: "{{ item }}"
with_items:
- /dev/sdb
- /dev/sdc
volume_type: gp2
volume_size: 100
delete_on_termination: true
encrypted: true
register: ec2_info
但出现以下错误
致命:[本地主机]:失败! => {"failed": true, "msg": "'args' 字段的值无效,似乎包含未定义的变量。错误是:'item' 未定义
如果我将{{item}} 替换为/dev/sdb,则实例很容易以特定卷启动。但我想用指定的项目列表创建多个卷 - /dev/sdb、/dev/sdc 等
有什么可能的方法来实现这一点?
【问题讨论】:
标签: amazon-web-services amazon-ec2 ansible