stancel.create-digitalocean-droplet
crear-droplet-digitalocean
Un rol para crear un droplet en DigitalOcean y agregar una entrada DNS para que se pueda acceder a él en una URL dada (variable create_digitalocean_droplet_server_fqdn). El rol añadirá el servidor recién creado a un grupo de Ansible titulado "nuevo_servidor", que es el valor de host que deberías usar para aplicar cualquier configuración adicional en roles posteriores del mismo playbook.
Requisitos
Necesitas los siguientes elementos para usar este rol.
- Cuenta de DigitalOcean
 - Clave API de tu cuenta de DO almacenada en una variable de entorno llamada "DO_API_TOKEN"
 - Los servidores de nombres para el dominio raíz que estás añadiendo (server_fqdn) deben estar apuntados a los servidores de nombres de DigitalOcean
 - Tus claves SSH cargadas en tu cuenta de DO y las huellas digitales (valor hash MD5) almacenadas en la lista de variables (ssh_keys)
 
Variables del Rol
El nombre de tu droplet de DigitalOcean. Este será el que se configure como el nombre de host en el VPS de Linux y lo que aparece en tu lista de droplets.
    create_digitalocean_droplet_host_name: "mi-nombre-de-host-aqui"
La entrada de nombre de dominio que deseas crear para tener una entrada DNS que dirija a este nuevo droplet de DigitalOcean.
    create_digitalocean_droplet_server_fqdn: "misubdominio.midominio.com"
Una variable de entorno llamada DO_API_TOKEN que contiene el valor de tu clave API de DigitalOcean.
    create_digitalocean_droplet_do_token: "{{ lookup('env', 'DO_API_TOKEN') }}"
Una lista de cualquier huella digital de clave SSH que corresponda a las claves SSH que has cargado en tu cuenta de DO y que te gustaría añadir a este droplet a medida que se crea para permitir el acceso. Puedes encontrar estas huellas digitales entrando en la configuración de tu cuenta de DO, luego en la pestaña de Seguridad y añadiendo una clave SSH o copiando la huella digital de una clave SSH ya cargada.
    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"
El tamaño del droplet que deseas crear. El tamaño predeterminado es 1GB.
    create_digitalocean_droplet_droplet_size: "1gb"
La imagen del droplet que deseas usar como imagen base para tu nuevo droplet de DigitalOcean. La imagen predeterminada es Ubuntu 16.04 LTS (ubuntu-16-04-x64).
    create_digitalocean_droplet_droplet_image: "ubuntu-16-04-x64"
La región de DigitalOcean (centro de datos) donde deseas crear tu droplet. El valor predeterminado es "nyc1".
    create_digitalocean_droplet_region: "nyc1"
Dependencias
Ninguna
Ejemplo de Playbook
Incluir un ejemplo de cómo usar tu rol (por ejemplo, con variables pasadas como parámetros) es siempre útil para los usuarios también:
- hosts: localhost ansible_connection=local ansible_python_interpreter=python
  vars_files:
    - vars/main.yml
  roles:
    - { role: stancel.crear-droplet-digitalocean }
o
- hosts: localhost ansible_connection=local ansible_python_interpreter=python 
  vars:
    create_digitalocean_droplet_host_name: "mi-nombre-de-host-aqui"
    create_digitalocean_droplet_server_fqdn: "misubdominio.midominio.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.crear-droplet-digitalocean }
Licencia
BSD
Información del Autor
Role for creating a DigitalOcean droplet that can then be provisioned accordingly.
ansible-galaxy install stancel.create-digitalocean-droplet