create-digitalocean-droplet

Создание дроплета в DigitalOcean

Роль для создания дроплета в DigitalOcean и добавления DNS-записи, чтобы к нему можно было получить доступ по указанному URL (переменная create_digitalocean_droplet_server_fqdn). Роль добавит вновь созданный сервер в группу Ansible под названием "new_server", что является значением хоста, которое вы будете использовать для применения любых дополнительных конфигураций в последующих ролях того же плейбука.

Требования

Вам нужны следующие элементы, чтобы использовать эту роль:

  • Аккаунт в DigitalOcean
  • API-ключ для вашего аккаунта DO, хранящийся в переменной окружения "DO_API_TOKEN"
  • DNS-серверы для корневого домена, который вы добавляете (server_fqdn), должны быть настроены на DNS-серверы DigitalOcean
  • Ваши SSH-ключи загружены в ваш аккаунт DO, а отпечатки (MD5-хеш) загружены в список переменной (ssh_keys)

Переменные роли

Имя хоста вашего дроплета в DigitalOcean. Это будет установлено как имя хоста на Linux VPS и то, что будет отображаться в списке ваших дроплетов.

    create_digitalocean_droplet_host_name: "my-hostname-here"

Имя домена, для которого вы хотите создать DNS-запись, чтобы он указывал на этот вновь созданный дроплет DigitalOcean.

    create_digitalocean_droplet_server_fqdn: "mysubdomain.mydomain.com"

Переменная окружения под названием DO_API_TOKEN, которая содержит значение вашего API-ключа для DigitalOcean.

    create_digitalocean_droplet_do_token: "{{ lookup('env', 'DO_API_TOKEN') }}"

Список отпечатков любых SSH-ключей, которые соответствуют загруженным в ваш аккаунт DO ключам и которые вы хотите добавить к этому дроплету при его создании для обеспечения доступа. Вы можете найти эти отпечатки, зайдя в настройки вашего аккаунта DO, затем на вкладку Безопасность и либо добавив SSH-ключ и скопировав отпечаток, либо скопировав отпечаток уже загруженного SSH-ключа.

    create_digitalocean_droplet_ssh_key_ids:
      - "72:aa:ae:3a:62:4d:b4:3d:6a:c5:0f:17:f8:1f:ad:d2"
      - "e4:1d:b2:d1:e1:42:c7:5c:b6:71:75:2b:f4:8d:bf:c7"

Размер дроплета, который вы хотите создать. По умолчанию размер составляет 1 ГБ.

    create_digitalocean_droplet_droplet_size: "1gb"

Образ дроплета, который вы хотите использовать в качестве базового для вашего вновь созданного дроплета DigitalOcean. По умолчанию используется образ Ubuntu 16.04 LTS (ubuntu-16-04-x64).

    create_digitalocean_droplet_droplet_image: "ubuntu-16-04-x64"

Регион (центр обработки данных) DigitalOcean, где вы хотите создать свой дроплет. По умолчанию это "nyc1".

    create_digitalocean_droplet_region: "nyc1"

Зависимости

Нет

Пример Плейбука

Включение примера того, как использовать вашу роль (например, с переданными переменными) всегда полезно для пользователей:

- hosts: localhost ansible_connection=local ansible_python_interpreter=python
  vars_files:
    - vars/main.yml
  roles:
    - { role: stancel.create-digitalocean-droplet }

или

- hosts: localhost ansible_connection=local ansible_python_interpreter=python 
  vars:
    create_digitalocean_droplet_host_name: "my-hostname-here"
    create_digitalocean_droplet_server_fqdn: "mysubdomain.mydomain.com"
    create_digitalocean_droplet_do_token: "{{ lookup('env', 'DO_API_TOKEN') }}"
    create_digitalocean_droplet_ssh_key_ids:
      - "72:aa:ae:3a:62:4d:b4:3d:6a:c5:0f:17:f8:1f:ad:d2" 
    create_digitalocean_droplet_droplet_size: "1gb"
    create_digitalocean_droplet_droplet_image: "ubuntu-16-04-x64"
    region: "nyc1"
  roles:
    - { role: stancel.create-digitalocean-droplet }

Лицензия

BSD

Информация об авторе

Брэд Стансел

О проекте

Role for creating a DigitalOcean droplet that can then be provisioned accordingly.

Установить
ansible-galaxy install stancel/create-digitalocean-droplet
Лицензия
Unknown
Загрузки
212
Владелец