lightsail - Создание или удаление виртуальной машины в AWS Lightsail
Новая версия с 2.4.
Обзор
- Создаёт или экземпляры в AWS Lightsail и необязательно ожидает, пока он станет 'запущенным'.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- boto
- boto3
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| aws_access_key | Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. Псевдонимы: ec2_access_key, access_key | |
| aws_secret_key | Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. Псевдонимы: ec2_secret_key, secret_key | |
| blueprint_id | Идентификатор образа шаблона экземпляра. Требуется, когда state='present' | |
| bundle_id | Набор информации о спецификации экземпляра. Требуется, когда state='present' | |
| ec2_url | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если таковая имеется. | |
| key_pair_name | Имя пары ключей для использования с экземпляром | |
| name обязательно | Имя экземпляра | |
| profile (добавлен в 1.6) | Использует профиль boto. Работает только с boto >= 2.24.0. | |
| region | Регион AWS для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если таковая имеется. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
Псевдонимы: aws_region, ec2_region | |
| security_token (добавлен в 1.6) | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Псевдонимы: access_token | |
| state |
| Указывает желаемое состояние целевого объекта. |
| user_data | Скрипт запуска, который может настроить экземпляр дополнительными данными | |
| validate_certs bool (добавлен в 1.5) |
| При установке в "no", сертификаты SSL не будут проверены для версий boto >= 2.6.0. |
| wait bool |
| Ожидать, пока экземпляр не перейдет в состояние 'running', прежде чем вернуть результат. Если wait = "no", ip-адрес может не быть возвращен. |
| wait_timeout | По умолчанию: 300 | Время ожидания, прежде чем ожидание прекратится, в секундах. |
| zone | Зона доступности AWS, в которой должен быть запущен экземпляр. Требуется, когда state='present' |
Примечания
Примечание
- Если параметры не заданы в модуле, могут быть использованы следующие переменные среды в порядке убывания приоритета
AWS_URLилиEC2_URL,AWS_ACCESS_KEY_IDилиAWS_ACCESS_KEYилиEC2_ACCESS_KEY,AWS_SECRET_ACCESS_KEYилиAWS_SECRET_KEYилиEC2_SECRET_KEY,AWS_SECURITY_TOKENилиEC2_SECURITY_TOKEN,AWS_REGIONилиEC2_REGION - Ansible использует файл конфигурации boto (обычно ~/.boto), если учетные данные не предоставлены. См. http://boto.readthedocs.org/en/latest/boto_config_tut.html
-
AWS_REGIONилиEC2_REGIONобычно используются для указания региона AWS, когда это необходимо, но это также может быть настроено в файле конфигурации boto
Примеры
# Create a new Lightsail instance, register the instance details
- lightsail:
state: present
name: myinstance
region: us-east-1
zone: us-east-1a
blueprint_id: ubuntu_16_04
bundle_id: nano_1_0
key_pair_name: id_rsa
user_data: " echo 'hello world' > /home/ubuntu/test.txt"
wait_timeout: 500
register: my_instance
- debug:
msg: "Name is {{ my_instance.instance.name }}"
- debug:
msg: "IP is {{ my_instance.instance.public_ip_address }}"
# Delete an instance if present
- lightsail:
state: absent
region: us-east-1
name: myinstance
Возвращаемые значения
Общие значения возврата описаны здесь, следующие являются полями, уникальными для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| changed bool | всегда | если снимок был изменён/создан Пример: {'changed': True} |
| instance dict | всегда | данные экземпляра Пример: {'arn': 'arn:aws:lightsail:us-east-1:448830907657:Instance/1fef0175-d6c8-480e-84fa-214f969cda87', 'blueprint_id': 'ubuntu_16_04', 'blueprint_name': 'Ubuntu', 'bundle_id': 'nano_1_0', 'created_at': '2017-03-27T08:38:59.714000-04:00', 'hardware': {'cpu_count': 1, 'ram_size_in_gb': 0.5}, 'is_static_ip': False, 'location': {'availability_zone': 'us-east-1a', 'region_name': 'us-east-1'}, 'name': 'my_instance', 'networking': {'monthly_transfer': {'gb_per_month_allocated': 1024}, 'ports': [{'access_direction': 'inbound', 'access_from': 'Anywhere (0.0.0.0/0)', 'access_type': 'public', 'common_name': '', 'from_port': 80, 'protocol': 'tcp', 'to_port': 80}, {'access_direction': 'inbound', 'access_from': 'Anywhere (0.0.0.0/0)', 'access_type': 'public', 'common_name': '', 'from_port': 22, 'protocol': 'tcp', 'to_port': 22}]}, 'private_ip_address': '172.26.8.14', 'public_ip_address': '34.207.152.202', 'resource_type': 'Instance', 'ssh_key_name': 'keypair', 'state': {'code': 16, 'name': 'running'}, 'support_code': '588307843083/i-0997c97831ee21e33', 'username': 'ubuntu'} |
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость интерфейса.
Техническое обслуживание
Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом Ansible. См. Техническое обслуживание и поддержка модулей для получения дополнительной информации.
Список других модулей, поддерживаемых сообществом Ansible, см. здесь.
Автор
- Nick Ball (@nickball)
Подсказка
Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/lightsail_module.html