如何使用使用 Ansible 定义的列表变量?

How to use list variables defined using Ansible?

我在我的默认值中定义了一个变量作为列表:

aws-sec-group-name:
    - "es-external"
    - "elasticsearch-production"

我正尝试在我的任务手册中使用上述变量,如下所示:

---
  - name: Create EC2 instances
    ec2:
      keyname: "{{ aws-key-name }}"
      #group: "{{ aws-sec-group-name }}"
      instance_type: "{{ aws-instance-type }}"
      image: "{{ aws-ami }}"
      wait: yes
      wait_timeout: 500
      count: 2
      instance_tags:
        Name: "{{ aws-tag-name }}"
      vpc_subnet_id: "{{ subnet-id }}"
      group: ["{{ aws-sec-group-name.[0] }}","{{ aws-sec-group-name.[1] }}"].

这不是正确的方法。

谁能告诉我如何使用列表变量?

而且由于计数是 2,我也想知道是否可以在名称标签中添加 -1- 和 -2-?

Can someone tell me how to use list variable?

给你:

  1. 修复变量名称,因为它们不能包含破折号:

    aws_sec_group_name:
      - "es-external"
      - "elasticsearch-production"
    
  2. 使用变量:

    group: "{{ aws_sec_group_name }}"