2016-02-01 15 views
8

Sto creando un VPC in AWS utilizzando Ansible. Il seguente gioco è eseguitoImpossibile capire perché subnet viene aggiornata

- name: create vpc with multi-az subnets 
    ec2_vpc: 
    region: "{{ region }}" 
    cidr_block: "{{ vpc_cidr_block }}" 
    resource_tags: '{"Name":"{{ prefix }}_vpc"}' 
    subnets: 
     - cidr: "{{ vpc_cidr_subnet_public_0 }}" 
     az: "{{ region }}{{ availability_zone_0 }}" 
     resource_tags: '{"Name":"{{ prefix }}_subnet_public_0", "Class":"web", "Partner":prefix }' 
     - cidr: "{{ vpc_cidr_subnet_private_0 }}" 
     az: "{{ region }}{{ availability_zone_0 }}" 
     resource_tags: '{"Name":"{{ prefix }}_subnet_private_0", "Class":"db", "Partner":prefix }' 
     - cidr: "{{ vpc_cidr_subnet_private_1 }}" 
     az: "{{ region }}{{ availability_zone_1 }}" 
     resource_tags: '{"Name":"{{ prefix }}_subnet_private_1", "Class":"db", "Partner":prefix }' 
    internet_gateway: yes 
    route_tables: 
     - subnets: 
     - "{{ vpc_cidr_subnet_public_0 }}" 
     routes: 
      - dest: 0.0.0.0/0 
      gw: igw 
    wait: yes 
    register: vpc 

La prima volta intorno a questo crea tutto perfettamente. La seconda volta, mi aspetto che non faccia nulla in quanto tutto è stato creato, tuttavia, la subnet pubblica viene aggiornata a una privata.

Perché? Che cosa sto facendo di sbagliato?

[UPDATE]

Qui ci sono le variabili:

--- 
region: eu-west-1 
prefix: staging 
vpc_environment: staging 
vpc_cidr_block: 20.0.0.0/16 
vpc_cidr_subnet_public_0: 20.0.0.0/24 
vpc_cidr_subnet_private_0: 20.0.1.0/24 
vpc_cidr_subnet_private_1: 20.0.2.0/24 
availability_zone_0: b 
availability_zone_1: c 

Anche solo per chiarire su quale cambiamento che sta accadendo. Tutti i tag di risorse di una subnet (pubblica) vengono sovrascritti con i tag di un'altra sottorete (privata).

+0

Dopo ulteriori indagini ho scoperto che una modifica al ec2_vpc.py causato questo accada. Sto indagando esattamente quale sia il problema, ma sembra che possa venire da questo commit https://github.com/ansible/ansible-modules-core/commit/f769305bd4e96893323a965e3fa7ed68ef7dd40a –

+0

Hai dimenticato di includere le informazioni più importanti. Qual è la tua versione ansible? – helloV

+0

Stava succedendo sul master. Stavo compilando dalla fonte. Per risolvere il problema nel frattempo, puoi puntare al ramo stabile 2.0.0.1. –

risposta

2

Questo è stato causato da un bug in ansible-modules-core nel master - ec2_vpc. Ho registrato un bug e creato un PR per risolvere il problema. Vedi PR per i dettagli e la pausa effettiva. Speriamo che si unisca presto!

[UPDATE] fusa

Problemi correlati