0

Я ищу хороший способ, чтобы показать или группу списка безопасности в анзиблепереоденутся выход из модуля анзибля ec2_group

В настоящее время я использую модуль анзибля ec2_group что беззвучно изменяет группу безопасности, чтобы соответствовать тому, что является определенный в Ansible, но не показывает, что изменилось.

изменилось: [локальный -> 127.0.0.1] => { "изменился": правда, "GROUP_ID": "ЗВ-8649adee"}

Я беспокоюсь, что кто-то может добавить что-то в веб-консоли, которое будет стерто при выполнении задачи Ansible ec2_group. Это нормально, если я могу получить некоторую информацию о предыдущем состоянии (на выходе), поэтому в случае удаления некоторой важной, но недокументированной модификации ее можно быстро восстановить.

В настоящее время единственный способ, которым я знаю, запустить это как локальный модуль команды:

aws ec2 describe-security-groups [some pattern] 

есть лучший способ сделать это, мы надеемся полностью в анзибль?

+0

Еще не ясно. Вы хотите описать группы безопасности, используя возможность? – helloV

ответ

2

Ansible - это инструмент для выполнения изменений в среде для его настройки, чтобы он выглядел так, как было определено. Таким образом, почти все, что он делает, предназначено исключительно для целей этих изменений, и очень мало модулей, которые не вносят никаких изменений, кроме сбора фактов, чтобы другие модули могли вносить изменения.

Как таковой, я бы сказал, что если вы используете Ansible для управления своим имуществом, тогда вы должны полностью его вернуть. Если кто-то делает изменения за пределами Ansible, то с изменением Ansible это должно быть хорошо. В случае непредвиденных ситуаций, когда кому-то нужно внести изменения вручную, у этого человека должен быть какой-то механизм, чтобы предотвратить запуск Ansible до тех пор, пока изменение не будет возвращено в код автоматизации (в моей компании мы используем Jenkins для управления всеми наша автоматизация, чтобы они могли просто отключить соответствующую работу (ы)).

Если это не вариант для вас, вы всегда можете выложить и описать группу до вашего изменения, а затем проверить задачу, если модуль ec2_group изменил что-либо, и если да, то как выглядит группа безопасности:

- hosts: localhost 
    connection: local 
    vars: 
    security_group_name: testing 
    tasks: 
    - name: describe ec2 security group before change 
     shell: "aws ec2 describe-security-groups --group-names {{ security_group_name }}" 
     register: before 
     changed_when: false 

    - name: create ec2 security group 
     ec2_group: 
     name: "{{ security_group_name }}" 
     description: "{{ security_group_name }}" 
     rules: 
      - proto: tcp 
      from_port: 22 
      to_port: 22 
      cidr_ip: 0.0.0.0/0 
      - proto: udp 
      from_port: 123 
      to_port: 123 
      cidr_ip: 10.0.0.0/8 
     rules_egress: 
      - proto: all 
      cidr_ip: 0.0.0.0/0 
     register: ec2_group 

    - name: security group changed 
     debug: var=before 
     when: ec2_group.changed 

Другим вариантом может быть просто использовать CloudTrail, чтобы увидеть, что изменилось в вашей учетной записи AWS.

+0

Спасибо @ydaetskcoR Я вижу, что у нас одна и та же идея :) Я держу CloudTrail в качестве «последней инстанции». – sirkubax

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

  • Нет связанных вопросов^_^