Yaml 错误:子网不是Ansible任务或处理程序中的合法参数

Yaml 错误:子网不是Ansible任务或处理程序中的合法参数,yaml,ansible,ansible-playbook,amazon-vpc,Yaml,Ansible,Ansible Playbook,Amazon Vpc,我是Ansible的新手,希望能在我的剧本中得到一些帮助。我想在AWS中创建一个具有2个子网的VPC。以下是我得到的错误: [root@aws]# ansible-playbook --syntax-check vpc_pub_pri.yml playbook: vpc_pub_pri.yml ERROR: subnets is not a legal parameter in an Ansible task or handler 任何帮助都很好~干杯~ --- - name: Provisi

我是Ansible的新手,希望能在我的剧本中得到一些帮助。我想在AWS中创建一个具有2个子网的VPC。以下是我得到的错误:

[root@aws]# ansible-playbook --syntax-check vpc_pub_pri.yml
playbook: vpc_pub_pri.yml
ERROR: subnets is not a legal parameter in an Ansible task or handler
任何帮助都很好~干杯~

---
- name: Provision a VPC with public/private subnets and an IGW
  hosts: local
  connection: local
  tasks:
  - name: Create 2 subnets
    module: ec2_vpc
    region: us-west-2
    cidr_block: 192.168.0.0/23
    resource_tags: { "Name":"vpc" }
    subnets:
      - cidr: 192.168.0.0/24
        az: us-west-2a
        resource_tags: { "Name":"public" }
      - cidr: 192.168.1.0/24
        az: us-west-2c
        resource_tags: { "Name":"private" }
    internet_gateway: True
    route_tables:
      - subnets:
          - 192.168.0.0/24
          - 192.168.1.0/24
        routes:
          - dest: 0.0.0.0/0
            gw: igw
    register: vpc

我不知道其他参数是否正常,但这里的主要问题是缩进。子网等是
ec2_vpc
模块的参数。另外,我从未见过
模块:
符号,它可能是正确的,也可能是错误的。但这应该是可行的:

---
- name: Provision a VPC with public/private subnets and an IGW
  hosts: local
  connection: local
  tasks:
  - name: Create 2 subnets
    ec2_vpc: 
      region: us-west-2
      cidr_block: 192.168.0.0/23
      resource_tags: { "Name":"vpc" }
      subnets:
        - cidr: 192.168.0.0/24
          az: us-west-2a
          resource_tags: { "Name":"public" }
        - cidr: 192.168.1.0/24
          az: us-west-2c
          resource_tags: { "Name":"private" }
      internet_gateway: True
      route_tables:
        - subnets:
            - 192.168.0.0/24
            - 192.168.1.0/24
          routes:
            - dest: 0.0.0.0/0
              gw: igw
    register: vpc

我不知道其他参数是否正常,但这里的主要问题是缩进。子网等是
ec2_vpc
模块的参数。另外,我从未见过
模块:
符号,它可能是正确的,也可能是错误的。但这应该是可行的:

---
- name: Provision a VPC with public/private subnets and an IGW
  hosts: local
  connection: local
  tasks:
  - name: Create 2 subnets
    ec2_vpc: 
      region: us-west-2
      cidr_block: 192.168.0.0/23
      resource_tags: { "Name":"vpc" }
      subnets:
        - cidr: 192.168.0.0/24
          az: us-west-2a
          resource_tags: { "Name":"public" }
        - cidr: 192.168.1.0/24
          az: us-west-2c
          resource_tags: { "Name":"private" }
      internet_gateway: True
      route_tables:
        - subnets:
            - 192.168.0.0/24
            - 192.168.1.0/24
          routes:
            - dest: 0.0.0.0/0
              gw: igw
    register: vpc

好的,很快。多亏了一顿乌顿丹,这似乎起到了作用~我在另一个脚本中使用了“module:”符号,它似乎可以工作。我在寻找某种标准符号,但我想我只是不习惯各种类型。再次感谢您的帮助~好的,很快。多亏了一顿乌顿丹,这似乎起到了作用~我在另一个脚本中使用了“module:”符号,它似乎可以工作。我在寻找某种标准符号,但我想我只是不习惯各种类型。再次感谢你的帮助~