Spec-Zone.ru › Ansible 2.11

community.digitalocean.digital_ocean – Создание/удаление виртуальной машины/ключа SSH в DigitalOcean

Примечание

Этот плагин входит в коллекцию community.digitalocean (версия 1.0.0).

Для его установки используйте: 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
строка
Токен API DigitalOcean.
backups_enabled
логическое значение
    Варианты:
  • нет ←
  • да
Необязательно, логическое значение, включает резервное копирование для вашей виртуальной машины.
command
строка
    Варианты:
  • droplet ←
  • ssh
Целевой объект, на котором нужно выполнить операцию.
id
строка
Числовое значение, идентификатор виртуальной машины, на которой нужно выполнить операцию.

псевдонимы: droplet_id
image_id
строка
Это имя образа, с которым должна быть создана виртуальная машина.
ipv6
логическое значение
    Варианты:
  • нет ←
  • да
Необязательно, логическое значение, включить IPv6 для вашей виртуальной машины.
name
строка
Строка, это имя виртуальной машины — должно соответствовать правилам именования хостов, или имя ключа SSH.
private_networking
логическое значение
    Варианты:
  • нет ←
  • да
Логическое значение, добавить дополнительный частный сетевой интерфейс к виртуальной машине для межмашинного взаимодействия.
region_id
строка
Это имя региона, в котором вы хотите создать свой сервер.
size_id
строка
Это имя размера, с которым вы хотите создать виртуальную машину.
ssh_key_ids
строка
Необязательно, массив идентификаторов ключей SSH (числовые), которые вы хотите добавить к серверу.
ssh_pub_key
строка
Открытый ключ SSH, который вы хотите добавить к своей учетной записи.
state
строка
    Варианты:
  • present ←
  • активный
  • absent
  • удаленный
Укажите желаемое состояние целевого объекта.
unique_name
логическое значение
    Варианты:
  • нет ←
  • да
Логическое значение, требует уникальных имен хостов. По умолчанию DigitalOcean позволяет несколько хостов с одинаковым именем. Установка в «да» позволяет только одному хосту на имя. Полезно для идемпотентности.
user_data
строка
неструктурированный блок данных, который доступен виртуальной машине
virtio
логическое значение
    Варианты:
  • нет
  • да ←
Логическое значение, включить драйвер virtio в виртуальной машине для улучшенного ввода-вывода сети и хранилища.
wait
логическое значение
    Варианты:
  • нет
  • да ←
Подождать, пока виртуальная машина перейдет в состояние «запущена», прежде чем возвращаться. Если wait="нет", адрес 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

- name: Ensure a SSH key is present
  community.digitalocean.digital_ocean:
    state: present
    command: ssh
    name: my_ssh_key
    ssh_pub_key: 'ssh-rsa AAAA...'
    api_token: XXX

# Will return the droplet details including the droplet id (used for idempotence)
- name: Create a new Droplet
  community.digitalocean.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.

- name: Ensure a droplet is present
  community.digitalocean.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.

- name: Create a droplet with ssh key
  community.digitalocean.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

Статус

  • Этот модуль будет удален в версии 2.0.0. [устаревший]
  • Дополнительную информацию см. в УСТАРЕВШИЙ.

Авторы

  • Vincent Viallet (@zbal)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/digitalocean/digital_ocean_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API