lightsail - Создание или удаление виртуальной машины в AWS Lightsail
Новая версия 2.4.
- Описание
- Требования (к хосту, на котором выполняется модуль)
- Параметры
- Примеры
- Возвращаемые значения
- Примечания
Описание
- Создаёт или устанавливает экземпляры в AWS Lightsail и, необязательно, ожидает, пока они не станут 'running'.
Требования (к хосту, на котором выполняется модуль)
- 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 | нет | 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. | ||
| security_token (добавлено в 1.6)
| нет | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. псевдонимы: access_token | ||
| state | нет | present |
| Указывает желаемое состояние целевого объекта. |
| user_data | нет | Запуск скрипта, который может настроить экземпляр дополнительными данными | ||
| validate_certs (добавлено в 1.5)
| нет | да |
| В случае установки "нет", сертификаты SSL для boto-версий >= 2.6.0 не будут проверены. |
| wait | нет | да |
| Ожидать, пока экземпляр не перейдёт в состояние 'running', перед возвратом. Если wait="нет", адрес ip может не быть возвращён. |
| wait_timeout | нет | 300 | Время ожидания перед отказом, в секундах. | |
| zone | нет | Доступная зона AWS, в которой нужно запустить экземпляр. Требуется, когда state='present' |
Примеры
# 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.publicIpAddress }}"
# Delete an instance if present
- lightsail:
state: absent
region: us-east-1
name: myinstance
Возвращаемые значения
Общие возвращаемые значения описаны здесь Возвращаемые значения, следующие поля уникальны для данного модуля:
| имя | описание | возвращается | тип | пример |
|---|---|---|---|---|
| changed | если снимок был изменён/создан | всегда | bool | {'changed': True} |
| instance | данные экземпляра | всегда | dict | {'username': 'ubuntu', 'blueprint_name': 'Ubuntu', 'public_ip_address': '34.207.152.202', 'blueprint_id': 'ubuntu_16_04', 'hardware': {'cpu_count': 1, 'ram_size_in_gb': 0.5}, 'bundle_id': 'nano_1_0', 'arn': 'arn:aws:lightsail:us-east-1:448830907657:Instance/1fef0175-d6c8-480e-84fa-214f969cda87', 'support_code': '588307843083/i-0997c97831ee21e33', 'networking': {'ports': [{'access_direction': 'inbound', 'common_name': '', 'access_from': 'Anywhere (0.0.0.0/0)', 'from_port': 80, 'protocol': 'tcp', 'to_port': 80, 'access_type': 'public'}, {'access_direction': 'inbound', 'common_name': '', 'access_from': 'Anywhere (0.0.0.0/0)', 'from_port': 22, 'protocol': 'tcp', 'to_port': 22, 'access_type': 'public'}], 'monthly_transfer': {'gb_per_month_allocated': 1024}}, 'name': 'my_instance', 'created_at': '2017-03-27T08:38:59.714000-04:00', 'state': {'code': 16, 'name': 'running'}, 'is_static_ip': False, 'ssh_key_name': 'keypair', 'location': {'region_name': 'us-east-1', 'availability_zone': 'us-east-1a'}, 'private_ip_address': '172.26.8.14', 'resource_type': 'Instance'} |
Примечания
Примечание
- Если параметры не заданы в модуле, следующие переменные окружения могут быть использованы в порядке убывания приоритета
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
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость интерфейса.
Для получения помощи в разработке модулей, если вы так желаете, пожалуйста, прочтите Информация о сообществе и вклад, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/lightsail_module.html