mikhailadvani.ec2-start-stop
ec2-start-stop
Rola do uruchamiania/zatrzymywania instancji EC2 oraz warunkowego przypisywania/odpowiązywania elastowych adresów IP.
Wymagania
- Python 2.7
- boto
- Klucze dostępu do AWS z uprawnieniami EC2FullAccess
Zmienne Roli
- AWS_ACCESS_KEY_ID: Klucz dostępu z uprawnieniami EC2FullAccess, ustawiony jako zmienna środowiskowa, jak pokazano w poniższym przykładzie.
- AWS_SECRET_ACCESS_KEY: Odpowiedni tajny klucz dostępu do AWS_ACCESS_KEY_ID.
- EC2_REGION: Region AWSTwojej infrastruktury.
- action: start/stop. Określa, czy instancje mają być uruchomione czy zatrzymane. Domyślnie: start.
- reuse_existing_ip_allowed: tak/nie. Zezwolenie na ponowne użycie nieprzypisanych adresów IP przypisanych do Twojego konta. Domyślnie: tak.
- release_on_disassociation: tak/nie. Zwolnienie adresu IP przy odpięciu. Domyślnie: tak.
- roles_directory: roles. Katalog, w którym znajduje się rola. Domyślnie: roles.
- instances.tags: Tagowanie instancji, które chcesz uruchomić/zatrzymać.
- instances.elastic_ip: tak/nie. Określa, czy chcesz przypisać elastowy adres IP. Elastowy adres IP będzie przypisany podczas uruchamiania i odłączony przy zatrzymaniu. Ponowne użycie i zwolnienie zależy od reuse_existing_ip_allowed i release_on_disassociation odpowiednio.
Przykładowy 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}
Licencja
MIT
Informacje o Autorze
Rola została stworzona w 2016 roku przez Mikhail Advani.
Twitter: @mikhail_advani
O projekcie
Start stop EC2 instances with optional association/disassociation of elastic IPs
Zainstaluj
ansible-galaxy install mikhailadvani.ec2-start-stop
Licencja
mit
Pobrania
74
Właściciel