Модуль community.digitalocean.digital_ocean – Создание/удаление виртуальной машины/ключа SSH в DigitalOcean
Примечание
Этот модуль является частью коллекции community.digitalocean (версия 1.27.0).
Эта коллекция, возможно, уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.digitalocean. Для использования этого модуля необходимы дополнительные требования, см. Требования для получения подробностей.
Для использования в плейбуке укажите: community.digitalocean.digital_ocean.
УСТЕРЕГШЕЕ
- Удалено в:
-
версия 2.0.0
- Почему:
-
Модуль обновлен для удаления внешней зависимости с увеличенной функциональностью.
- Альтернатива:
-
Используйте community.digitalocean.digital_ocean_droplet вместо этого.
Описание
- Создание/удаление виртуальной машины в DigitalOcean и, по желанию, ожидание её перехода в состояние «запущен», или развёртывание ключа SSH.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- dopy
Параметры
Параметр | Комментарии |
|---|---|
api_token aliases: API_TOKEN string | Токен API DigitalOcean. |
backups_enabled boolean | Необязательный, логический, включает резервное копирование вашей капли. Варианты:
|
command string | Целевой объект, с которым вы хотите работать. Варианты:
|
id aliases: droplet_id integer | Числовое значение, ID капли, с которой вы хотите работать. |
image_id string | Это слаг образа, с которым вы хотите создать каплю. |
ipv6 boolean | Необязательный, логический, включает IPv6 для вашей капли. Варианты:
|
name string | Строка, это имя капли — должно соответствовать правилам форматирования имен хостов или имени SSH-ключа. |
private_networking boolean | Логическое значение, добавить дополнительный частный сетевой интерфейс к капле для меж-капельной связи. Варианты:
|
region_id string | Это слаг региона, в котором вы хотите создать свой сервер. |
size_id string | Это слаг размера, с которым вы хотите создать каплю. |
ssh_key_ids list / elements=string | Необязательный, массив ID SSH-ключа (числовой), который вы хотите добавить на сервер. |
ssh_pub_key string | Открытый SSH-ключ, который вы хотите добавить в свою учетную запись. |
state string | Указывает желаемое состояние целевого объекта. Варианты:
|
unique_name boolean | Логическое значение, требует уникальных имен хостов. По умолчанию DigitalOcean разрешает множественные хосты с одинаковым именем. Установка этого значения в «yes» позволяет только один хост на имя. Полезно для идемпотентности. Варианты:
|
user_data string | Непрозрачный блок данных, который предоставляется капле. |
virtio boolean | Логическое значение, включить драйвер virtio в капле для улучшенного сетевого и хранилища ввода/вывода. Варианты:
|
wait boolean | Ожидать, пока капля не перейдет в состояние «running», прежде чем возвращать результат. Если wait имеет значение «no», ip_address может не быть возвращен. Варианты:
|
wait_timeout integer | Сколько времени ждать, прежде чем wait завершится, в секундах. По умолчанию: |
Примечания
Примечание
- Можно использовать две переменные окружения: 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
- name: Ensure a SSH key is present
community.digitalocean.digital_ocean:
state: present
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"
command: ssh
name: my_ssh_key
ssh_pub_key: 'ssh-rsa AAAA...'
# Will return the droplet details including the droplet id (used for idempotence)
- name: Create a new Droplet
community.digitalocean.digital_ocean:
state: present
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"
command: droplet
name: mydroplet
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.
- name: Ensure a droplet is present
community.digitalocean.digital_ocean:
state: present
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"
command: droplet
id: 123
name: mydroplet
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.
- name: Create a droplet with ssh key
community.digitalocean.digital_ocean:
state: present
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"
ssh_key_ids: 123,456
name: mydroplet
size_id: 2gb
region_id: ams2
image_id: fedora-19-x64
Статус
- Этот модуль будет удалён в версии 2.0.0. [устаревший]
- Для получения дополнительной информации см. УСТАРЕВШИЙ.
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/digitalocean/digital_ocean_module.html