ec2-start-stop
ec2-start-stop
Роль для запуска/остановки экземпляров EC2 и условного присоединения/отсоединения эластичных IP к ним.
Требования
- Python 2.7
- boto
- Ключи доступа AWS с правами EC2FullAccess
Переменные роли
- AWS_ACCESS_KEY_ID: Ключ доступа с правами EC2FullAccess, установленный как переменная окружения, как показано в примере ниже.
- AWS_SECRET_ACCESS_KEY: Соответствующий секретный ключ доступа к AWS_ACCESS_KEY_ID.
- EC2_REGION: Регион AWS вашей инфраструктуры.
- action: start/stop. Указывает, должны ли экземпляры быть запущены или остановлены. По умолчанию: start.
- reuse_existing_ip_allowed: yes/no. Позволить повторно использовать неассоциированные IP, выделенные вашему аккаунту. По умолчанию: yes.
- release_on_disassociation: yes/no. Освобождать IP при отсоединении. По умолчанию: yes.
- roles_directory: roles. Директория, в которой присутствует роль. По умолчанию: roles.
- instances.tags: Теги экземпляров, которые вы хотите запустить/остановить.
- instances.elastic_ip: yes/no. Хотите ли вы, чтобы эластичный IP был ассоциирован или нет. Эластичный IP будет ассоциирован при запуске и отсоединён при остановке. Повторное использование и освобождение зависят от reuse_existing_ip_allowed и release_on_disassociation соответственно.
Пример Playbook
ansible-playbook ec2-start-stop.yml -e "action=start reuse_existing_ip_allowed=yes"
ansible-playbook ec2-start-stop.yml -e "action=stop release_on_disassociation=no"
- hosts: localhost
connection: local
environment:
AWS_ACCESS_KEY_ID: "{{AWS_ACCESS_KEY_ID}}"
AWS_SECRET_ACCESS_KEY: "{{AWS_SECRET_ACCESS_KEY}}"
EC2_REGION: "{{EC2_REGION}}"
roles:
- {role: ec2-start-stop}
Лицензия
MIT
Информация об авторе
Эта роль была создана в 2016 году Михаилом Адвани.
Twitter: @mikhail_advani
О проекте
Start stop EC2 instances with optional association/disassociation of elastic IPs
Установить
ansible-galaxy install mikhailadvani/ec2-start-stop
Лицензия
mit
Загрузки
64
Владелец