digital_ocean - Создание/удаление капельницы/ключа SSH в DigitalOcean
Новая версия 1.3.
Обзор
- Создание/удаление капельницы в DigitalOcean и, по желанию, ожидание ее перехода в состояние «запущена», или развертывание ключа SSH.
Требования (для хоста, на котором выполняется модуль)
- python >= 2.6
- dopy
Параметры
| параметр | обязательно | значение по умолчанию | выбор | комментарии |
|---|---|---|---|---|
| api_token (добавлено в 1.9.5)
| нет | Токен API DigitalOcean. | ||
| backups_enabled (добавлено в 1.6)
| нет | нет |
| Необязательно, булево, включает резервное копирование для вашей капельницы. |
| command | нет | droplet |
| Какой объект вы хотите обработать. |
| id | нет | Числовое значение, идентификатор капельницы, которую вы хотите обработать. | ||
| image_id | нет | Это имя образа, с которым вы хотите создать капельницу. | ||
| ipv6 (добавлено в 2.2)
| нет | нет |
| Необязательно, булево, включить IPv6 для вашей капельницы. |
| name | нет | Строка, это имя капельницы — должно соответствовать правилам именования хостов, или имя ключа SSH. | ||
| private_networking (добавлено в 1.4)
| нет | нет |
| Булево значение, добавить дополнительный частный сетевой интерфейс к капельнице для меж-капельничного взаимодействия. |
| region_id | нет | Это имя региона, в котором вы хотите создать свой сервер. | ||
| size_id | нет | Это имя размера, с которым вы хотите создать капельницу. | ||
| ssh_key_ids | нет | Необязательно, массив идентификаторов ключей SSH (числовых), которые вы хотите добавить к серверу. | ||
| ssh_pub_key | нет | Открытый ключ SSH, который вы хотите добавить к вашему аккаунту. | ||
| state | нет | present |
| Указывает желаемое состояние объекта. |
| unique_name (добавлено в 1.4)
| нет | нет |
| Булево, требуются уникальные имена хостов. По умолчанию DigitalOcean разрешает несколько хостов с одинаковым именем. Установка этого параметра в «да» позволяет только одному хосту на имя. Полезно для идемпотентности. |
| user_data (добавлено в 2.0)
| нет | None | неструктурированные данные, которые становятся доступны для капельницы | |
| virtio (добавлено в 1.4)
| нет | да |
| Булево, включить драйвер virtio в капельницу для улучшения сетевого и дискового ввода-вывода. |
| wait | нет | да |
| Подождать, пока капельница перейдет в состояние 'запущена', перед возвратом. Если wait="нет", адрес IP может не быть возвращен. |
| wait_timeout | нет | 300 | Сколько времени ждать, прежде чем ждать прекратит работу, в секундах. |
Примеры
# Ensure a SSH key is present
# If a key matches this name, will return the ssh key id and changed = False
# If no existing key matches this name, a new key is created, the ssh key id is returned and changed = False
- digital_ocean:
state: present
command: ssh
name: my_ssh_key
ssh_pub_key: 'ssh-rsa AAAA...'
api_token: XXX
# Create a new Droplet
# Will return the droplet details including the droplet id (used for idempotence)
- digital_ocean:
state: present
command: droplet
name: mydroplet
api_token: XXX
size_id: 2gb
region_id: ams2
image_id: fedora-19-x64
wait_timeout: 500
register: my_droplet
- debug:
msg: "ID is {{ my_droplet.droplet.id }}"
- debug:
msg: "IP is {{ my_droplet.droplet.ip_address }}"
# Ensure a droplet is present
# If droplet id already exist, will return the droplet details and changed = False
# If no droplet matches the id, a new droplet will be created and the droplet details (including the new id) are returned, changed = True.
- digital_ocean:
state: present
command: droplet
id: 123
name: mydroplet
api_token: XXX
size_id: 2gb
region_id: ams2
image_id: fedora-19-x64
wait_timeout: 500
# Create a droplet with ssh key
# The ssh key id can be passed as argument at the creation of a droplet (see ssh_key_ids).
# Several keys can be added to ssh_key_ids as id1,id2,id3
# The keys are used to connect as root to the droplet.
- digital_ocean:
state: present
ssh_key_ids: 123,456
name: mydroplet
api_token: XXX
size_id: 2gb
region_id: ams2
image_id: fedora-19-x64
Примечания
Примечание
- Можно использовать две переменные среды, DO_API_KEY и DO_API_TOKEN. Обе они ссылаются на токен v2.
- Начиная с Ansible 1.9.5 и 2.0, используется версия 2 API DigitalOcean. Это исключает
client_idиapi_keyпараметры в пользуapi_token. - Если вы используете Ansible 1.9.4 или более раннюю версию, вы, возможно, не сможете использовать включенный модуль, так как используемая версия API была прекращена. Обновите Ansible или, если это невозможно, попробуйте скачать последнюю версию этого модуля с github и поместите его в каталог «library».
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратной совместимости интерфейса.
Для получения помощи в разработке модулей, если вы так захотите, прочитайте Справочная информация по сообществу и сотрудничество, Тестирование 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/digital_ocean_module.html