Spec-Zone.ru › Ansible 2.6

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

Новое в версии 1.3.

  • Описание
    • Требования
  • Параметры
  • Примечания
  • Примеры
  • Статус
  • Техническое обслуживание
    • Автор

Описание

  • Создание/удаление виртуальной машины в DigitalOcean и, при необходимости, ожидание её запуска или развертывание ключа SSH.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • python >= 2.6
  • dopy

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
api_token
(добавлено в 1.9.5)
Токен API DigitalOcean.
backups_enabled
bool

(добавлено в 1.6)
    Варианты:
  • нет ←
  • да
Необязательный, булевый, включает резервное копирование вашей виртуальной машины.
command
    Варианты:
  • droplet ←
  • ssh
На каком объекте нужно выполнить операцию.
id
Числовое значение, идентификатор виртуальной машины, на которой нужно выполнить операцию.

алиасы: droplet_id
image_id
Это идентификатор образа, который будет использоваться для создания виртуальной машины.
ipv6
bool

(добавлено в 2.2)
    Варианты:
  • нет ←
  • да
Необязательный, булевый, включить IPv6 для вашей виртуальной машины.
name
Строка, это имя виртуальной машины - должно соответствовать правилам именования хостов или имя ключа SSH.
private_networking
bool

(добавлено в 1.4)
    Варианты:
  • нет ←
  • да
Булево значение, добавить дополнительный частный сетевой интерфейс к виртуальной машине для межвиртуальной связи.
region_id
Это идентификатор региона, в котором вы хотите создать свой сервер.
size_id
Это идентификатор размера, который вы хотите использовать для создания виртуальной машины.
ssh_key_ids
Необязательный, массив идентификаторов ключей SSH (числовые), которые вы хотите добавить к серверу.
ssh_pub_key
Открытый ключ SSH, который вы хотите добавить к вашей учётной записи.
state
    Варианты:
  • present ←
  • активный
  • отсутствует
  • удален
Указывает желаемое состояние целевого объекта.
unique_name
bool

(добавлено в 1.4)
    Варианты:
  • нет ←
  • да
Булево значение, требовать уникальные имена хостов. По умолчанию DigitalOcean разрешает несколько хостов с одинаковыми именами. Установка "да" позволяет только одному хосту на одно имя. Полезно для идемпотентности.
user_data
(добавлено в 2.0)
неструктурированные данные, доступные виртуальной машине
virtio
bool

(добавлено в 1.4)
    Варианты:
  • нет
  • да ←
Булево значение, включить драйвер virtio в виртуальной машине для улучшенного сетевого и дискового ввода/вывода.
wait
bool
    Варианты:
  • нет
  • да ←
Подождать, пока виртуальная машина перейдет в состояние 'running', прежде чем возвращаться. Если 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

- 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

Статус

Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость.

Техническое обслуживание

Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом Ansible. См. Техническое обслуживание и поддержка модулей для получения дополнительной информации.

Список других модулей, поддерживаемых сообществом Ansible, см. здесь.

Автор

  • 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.6/modules/digital_ocean_module.html

Spec-Zone.ru

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