m4rcu5nl.zerotier-one
ZeroTier
Este rol de Ansible añade el repositorio de ZeroTier e instala el paquete zerotier-one
utilizando el gestor de paquetes de tu sistema. Dependiendo de las variables proporcionadas, este rol también puede añadir y autorizar nuevos miembros a redes ZeroTier (existentes), y decirle al nuevo miembro que se una a la red.
Requisitos
Técnicamente, este rol no tiene requisitos. Si se ejecuta sin establecer ninguna variable, solo realizará las tareas de instalación. Las siguientes variables afectan el comportamiento del rol:
zerotier_network_id: cuando se establece, se informa a los hosts que se unan a esta red.
zerotier_api_accesstoken: cuando se establece, el rol puede manejar la autenticación y configuración de miembros utilizando la API de ZeroTier.
Variables del Rol
zerotier_network_id
Tipo: cadena
Valor por defecto:
Descripción: El ID de red de 16 caracteres a la que deben unirse los nuevos miembros. El nodo no se unirá a ninguna red si se omite.
zerotier_member_register_short_hostname
Tipo: booleano
Valor por defecto: false
Descripción: Por defecto, se usará inventory_hostname
para nombrar a un miembro en una red. Si se establece en true
, se usará inventory_hostname_short
en su lugar.
zerotier_member_ip_assignments
Tipo: lista
Valor por defecto: []
Descripción: Una lista de direcciones IP para asignar a este miembro. Si se omite, se le asignará automáticamente una dirección en la red.
zerotier_member_description
Tipo: cadena
Valor por defecto: ""
Descripción: Descripción opcional para un miembro.
zerotier_api_accesstoken
Tipo: cadena
Valor por defecto: ""
Descripción: El token de acceso necesario para autorizarse con la API de ZeroTier. Puedes generar uno en la configuración de tu cuenta en https://my.zerotier.com/. Si se omite, el nuevo miembro que se une no será autorizado automáticamente.
zerotier_api_url
Tipo: cadena
Valor por defecto: https://my.zerotier.com
Descripción: La URL donde se encuentra la API de Zerotier. Debe usar el protocolo HTTPS.
zerotier_api_delegate
Tipo: cadena
Valor por defecto: localhost
Descripción: Opción para delegar tareas para llamadas a la API de Zerotier. Esto es útil en situaciones donde las llamadas a la API solo se pueden realizar desde un servidor de gestión en la lista blanca, por ejemplo.
Ejemplo de Playbook
- hosts: servers
vars:
zerotier_network_id: 1234567890qwerty
zerotier_api_accesstoken: "{{ vault_zerotier_accesstoken }}"
zerotier_register_short_hostname: true
roles:
- { role: m4rcu5nl.zerotier, become: true }
Ejemplo de Inventario
[servers]
web1.example.com zerotier_member_ip_assignments='["192.168.195.1", "192.168.195.2"]'
web2.example.com zerotier_member_ip_assignments='["192.168.195.3", "192.168.195.4"]'
db1.example.com zerotier_member_ip_assignments='["192.168.195.10"]'
db2.example.com zerotier_member_ip_assignments='["192.168.195.11"]'
db3.example.com zerotier_member_ip_assignments='["192.168.195.12"]'
[webservers]
web1.example.com
web2.example.com
[dbservers]
db1.example.com
db2.example.com
db3.example.com
[webservers:vars]
zerotier_member_description='<AppName> servidor web'
[dbservers:vars]
zerotier_member_description='<AppName> nodo del clúster de base de datos'
Install zerotier-one package and add new members to a zerotier network
ansible-galaxy install m4rcu5nl.zerotier-one