Модуль community.digitalocean.digital_ocean_droplet — Создание и удаление виртуальной машины DigitalOcean
Примечание
Этот модуль входит в коллекцию community.digitalocean (версия 1.27.0).
У вас, возможно, уже установлена эта коллекция, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить её установку, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.digitalocean.
Для использования в плейбуке укажите: community.digitalocean.digital_ocean_droplet.
Описание
- Создание и удаление виртуальной машины в DigitalOcean, а также (по желанию) ожидание её активации.
Параметры
Параметр | Комментарии |
|---|---|
backups boolean | Указывает, следует ли включить автоматическое создание резервных копий. Выбор:
|
baseurl string | Базовый URL API DigitalOcean. По умолчанию: |
firewall list / elements=string | Массив имен брандмауэров, которые нужно применить к Droplet. Пропуск имени брандмауэра, который в настоящее время применяется к виртуальной машине, удалит его. |
id aliases: droplet_id integer | Идентификатор Droplet, на котором нужно выполнить операцию. |
image aliases: image_id string | Это идентификатор образа, с которым вы хотите создать Droplet. |
ipv6 boolean | Включить IPv6 для Droplet. Выбор:
|
monitoring boolean | Указывает, следует ли установить агент DigitalOcean для мониторинга. Выбор:
|
name string | Это имя Droplet. Должно соответствовать правилам для имени хоста. |
oauth_token aliases: api_token string | Токен аутентификации DigitalOcean. Существуют и другие переменные окружения, которые можно использовать для предоставления этого значения. Например, - |
private_networking boolean | Добавить дополнительный частный сетевой интерфейс к Droplet (для межвиртуальных взаимодействий). Выбор:
|
project_name aliases: project string | Проект, которому нужно назначить ресурс (имя проекта, а не UUID). По умолчанию используется по умолчанию проект учетной записи (пустая строка). В настоящее время поддерживается только при создании. По умолчанию: |
region aliases: region_id string | Это идентификатор региона, в котором вы хотите создать Droplet. |
resize_disk boolean | Увеличивать ли размер диска при изменении размера. Используется только в том случае, если Droplet Выбор:
|
size aliases: size_id string | Это идентификатор размера, с которым вы хотите создать Droplet. См. https://slugs.do-api.dev/ для текущих идентификаторов. |
sleep_interval integer | Время ожидания между действием и проверкой статуса. По умолчанию 10 секунд; должно быть меньше По умолчанию: |
ssh_keys list / elements=string | Массив отпечатков ключей SSH, которые вы хотите добавить к Droplet. |
состояние строка | Укажите желаемое состояние целевого объекта.
Варианты:
|
метки список / элементы=строка | Список имен меток в виде строк, которые следует применить к капле после ее создания. Имена меток могут быть существующими или новыми метками. |
таймаут целое число | Таймаут в секундах, используемый для опроса API DigitalOcean. По умолчанию: |
уникальное_имя логическое | Требовать уникальные имена хостов. По умолчанию DigitalOcean разрешает несколько хостов с одинаковым именем. Установка этого параметра в Полезно для идемпотентности. Варианты:
|
пользовательские_данные строка | Непрозрачный блок данных, доступный для капли. |
проверить_сертификаты логическое | Если установлено Это следует установить в Варианты:
|
тома список / элементы=строка | Список, включающий уникальный строковый идентификатор каждого тома хранилища блоков, который необходимо подключить к капле. |
vpc_uuid строка добавлено в community.digitalocean 0.1.0 | Строка, определяющая UUID VPC, к которому будет назначена капля. Если этот параметр не указан, капля будет назначена к VPC по умолчанию для учетной записи в регионе. |
ждать логическое | Подождать, пока капля не станет активной, прежде чем возвращаться. Если wait — Варианты:
|
таймаут_ожидания целое число | Сколько времени пройдет, прежде чем По умолчанию: |
Примеры
- name: Create a new Droplet
community.digitalocean.digital_ocean_droplet:
state: present
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"
name: mydroplet
size: s-1vcpu-1gb
region: sfo3
image: ubuntu-20-04-x64
wait_timeout: 500
ssh_keys: [ .... ]
register: my_droplet
- name: Show Droplet info
ansible.builtin.debug:
msg: |
Droplet ID is {{ my_droplet.data.droplet.id }}
First Public IPv4 is {{ (my_droplet.data.droplet.networks.v4 | selectattr('type', 'equalto', 'public')).0.ip_address | default('<none>', true) }}
First Private IPv4 is {{ (my_droplet.data.droplet.networks.v4 | selectattr('type', 'equalto', 'private')).0.ip_address | default('<none>', true) }}
- name: Create a new Droplet (and assign to Project "test")
community.digitalocean.digital_ocean_droplet:
state: present
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"
name: mydroplet
size: s-1vcpu-1gb
region: sfo3
image: ubuntu-20-04-x64
wait_timeout: 500
ssh_keys: [ .... ]
project: test
register: my_droplet
- name: Ensure a Droplet is present
community.digitalocean.digital_ocean_droplet:
state: present
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"
id: 123
name: mydroplet
size: s-1vcpu-1gb
region: sfo3
image: ubuntu-20-04-x64
wait_timeout: 500
- name: Ensure a Droplet is present and has firewall rules applied
community.digitalocean.digital_ocean_droplet:
state: present
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"
id: 123
name: mydroplet
size: s-1vcpu-1gb
region: sfo3
image: ubuntu-20-04-x64
firewall: ['myfirewall', 'anotherfirewall']
wait_timeout: 500
- name: Ensure a Droplet is present with SSH keys installed
community.digitalocean.digital_ocean_droplet:
state: present
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"
id: 123
name: mydroplet
size: s-1vcpu-1gb
region: sfo3
ssh_keys: ['1534404', '1784768']
image: ubuntu-20-04-x64
wait_timeout: 500
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для данного модуля:
Ключ | Описание |
|---|---|
assign_status строка | Статус назначения (ok, not_found, assigned, already_assigned, service_down) Возвращается: changed Пример: |
данные словарь | Капля DigitalOcean Возвращается: changed Пример: |
сообщение строка | Информационное или сообщение об ошибке, возникшее во время выполнения Возвращается: changed Пример: |
ресурсы словарь | Ресурсы, участвующие в назначении проекта Возвращается: changed Пример: |
Ссылки на коллекцию
© 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_droplet_module.html