Spec-Zone.ru › Ansible 2.10

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
строка
    Варианты:
  • наличие ←
  • активно
  • отсутствие
  • удалено
Указывает желаемое состояние целевого объекта.
unique_name
булево
    Варианты:
  • нет ←
  • да
Булево, требует уникальных имён хостов. По умолчанию DigitalOcean позволяет несколько хостов с одинаковым именем. Установка в «да» позволяет только один хост на имя. Полезно для идемпотентности.
user_data
строка
неструктурированный блок данных, который доступен виртуальной машине
virtio
булево
    Варианты:
  • нет
  • да ←
Булево, включить драйвер virtio в виртуальной машине для улучшения ввода/вывода сети и хранилища.
wait
булево
    Варианты:
  • нет
  • да ←
Подождать, пока виртуальная машина не перейдёт в состояние 'запущена', перед возвратом. Если wait — "нет", адрес IP может не быть возвращён.
wait_timeout
строка
По умолчанию:
300
Сколько времени ждать, прежде чем 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
    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–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/digitalocean/digital_ocean_module.html

Spec-Zone.ru

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