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