digital_ocean - Создание/удаление дроплетов/SSH-ключа в DigitalOcean
Новая версия 1.3.
Описание
- Создание/удаление дроплетов в DigitalOcean и необязательное ожидание его запуска, или развертывание SSH-ключа.
Требования
Ниже перечислены требования к хосту, на котором будет выполняться данный модуль.
- python >= 2.6
- dopy
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_token (добавлен в 1.9.5) | Токен API DigitalOcean. | |
| backups_enabled (добавлен в 1.6) |
| Необязательно, логический тип, включает резервное копирование для вашего дроплеты. |
| command |
| Цель для выполнения операции. |
| id | Числовой, идентификатор дроплеты, на котором нужно выполнить операцию. псевдонимы: droplet_id | |
| image_id | Это имя изображения, с которым будет создан дроплет. | |
| ipv6 (добавлен в 2.2) |
| Необязательно, логический тип, включить IPv6 для вашего дроплеты. |
| name | Строка, имя дроплеты — должно соответствовать правилам именования хостов или имя SSH-ключа. | |
| private_networking (добавлен в 1.4) |
| Булево значение, добавить дополнительный частный сетевой интерфейс в дроплет для меж-дроплетовой коммуникации. |
| region_id | Это имя региона, в котором вы хотите создать свой сервер. | |
| size_id | Это имя размера, с которым вы хотите создать дроплет. | |
| ssh_key_ids | Необязательно, массив ID SSH-ключа (числового), который вы хотите добавить к серверу. | |
| ssh_pub_key | Открытый SSH-ключ, который вы хотите добавить в свою учетную запись. | |
| state |
| Укажите желаемое состояние цели. |
| unique_name (добавлен в 1.4) |
| Логическое значение, требуется уникальность имен хостов. По умолчанию DigitalOcean разрешает несколько хостов с одинаковым именем. Установка в «yes» разрешает только один хост на имя. Полезно для идемпотентности. |
| user_data (добавлен в 2.0) | Значение по умолчанию: None | неструктурированные данные, которые доступны дроплету |
| virtio (добавлен в 1.4) |
| Булево значение, включить драйвер virtio в дроплете для улучшения производительности сети и хранения. |
| wait |
| Ожидание состояния дроплеты «running» перед возвратом. Если wait — «no», ip-адрес может не быть возвращен. |
| wait_timeout | Значение по умолчанию: 300 | Время ожидания в секундах. |
Примечания
Примечание
- Можно использовать две переменные среды: 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».
Примеры
# 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
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантированно будет совместим со старыми версиями.
Автор
- Vincent Viallet (@zbal)
Подсказка
Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/digital_ocean_module.html