2016-03-16 2 views
2

У меня есть игра-книга, в которой созданы группы безопасности VPC.
Он работает хорошо, но много раз, и обновление существующей группы безопасности (в основном добавление или удаление портов) не применяется (не обнаружено Ansible).Группа безопасности Ansible AWS EC2 не обновлена ​​

Оригинальный код:

- name: create sg_riemann_elb rules 
    local_action: 
    module: ec2_group 
    region: "{{ region }}" 
    vpc_id: "{{ vpc.vpc.id }}" 
    name: "sg_riemann_elb" 
    description: security group for Riemann elb 
    rules: 
     - proto: tcp 
     from_port: 5555 
     to_port: 5556 
     group_name: "{{ realm }}_sg_base_server" 
     group_desc: security group for all servers 
    rules_egress: 
     - proto: tcp 
     from_port: 5555 
     to_port: 5556 
     group_name: "{{ realm }}_sg_riemann_server" 
     group_desc: security group for Riemann servers 

Новый код: (добавлено порт)

- name: create sg_riemann_elb rules 
    local_action: 
    module: ec2_group 
    region: "{{ region }}" 
    vpc_id: "{{ vpc.vpc.id }}" 
    name: "sg_riemann_elb" 
    description: security group for Riemann elb 
    rules: 
     - proto: tcp 
     from_port: 4567 
     to_port: 4567 
     group_name: "{{ realm }}_sg_base_server" 
     group_desc: security group for all servers 
    rules: 
     - proto: tcp 
     from_port: 5555 
     to_port: 5556 
     group_name: "{{ realm }}_sg_base_server" 
     group_desc: security group for all servers 
    rules_egress: 
     - proto: tcp 
     from_port: 5555 
     to_port: 5556 
     group_name: "{{ realm }}_sg_riemann_server" 
     group_desc: security group for Riemann servers 

Выход из пробега анзибля является:

TASK [vpc : create sg_riemann_server rules] ************************************ 
ok: [localhost -> localhost] => {"changed": false, "group_id": "sg-ce89bcaa"} 

Любая идея, почему он не обновлен новым портом (4567)?

ответ

3

В задаче create sg_riemann_elb rules есть два элемента с ключом rules, а другой - другой. Исправление состоит в том, чтобы определить только один ключ rules со списком правил группы безопасности, например:

... 
    description: security group for Riemann elb 
    rules: 
     - proto: tcp 
     from_port: 4567 
     to_port: 4567 
     group_name: "{{ realm }}_sg_base_server" 
     group_desc: security group for all servers 
     - proto: tcp 
     from_port: 5555 
     to_port: 5556 
     group_name: "{{ realm }}_sg_base_server" 
     group_desc: security group for all servers 
    rules_egress: 
    ... 
+0

Хорошо поймать! Именно поэтому этот сайт настолько хорош. Я также думаю, что Ansible должен предупреждать о таких ошибках конфигурации ... –

Смежные вопросы