ajaykumar4.zerotier
Ansible Role : ZeroTier
Ce rôle Ansible ajoute le dépôt ZeroTier et installe le package zerotier
en utilisant le gestionnaire de paquets de votre système. En fonction des variables fournies, ce rôle peut également ajouter et autoriser de nouveaux membres dans des réseaux ZeroTier (existants) et demander au nouveau membre de rejoindre le réseau.
Si vous avez besoin d’un rôle plus flexible et générique pour ZeroTier, consultez ajaykumar4.zerotier
.
Conditions
Techniquement, ce rôle n’a pas de conditions. S’il est exécuté sans aucune variable définie, il n’effectuera que les tâches d’installation. Les variables suivantes influencent le comportement du rôle :
zerotier_network_id : lorsqu'elle est définie, les hôtes sont invités à rejoindre ce réseau.
zerotier_api_accesstoken : lorsqu'elle est définie, le rôle peut gérer l'authentification et la configuration des membres en utilisant l'API ZeroTier.
Variables du Rôle
zerotier_network_id
Type : chaîne
Valeur par défaut :
Description : L'ID de réseau de 16 caractères que les nouveaux membres doivent rejoindre. Le nœud ne rejoindra aucun réseau si omis.
zerotier_member_register_short_hostname
Type : booléen
Valeur par défaut : false
Description : Par défaut, inventory_hostname
sera utilisé pour nommer un membre dans un réseau. S'il est défini sur true
, inventory_hostname_short
sera utilisé à la place.
zerotier_member_ip_assignments
Type : liste
Valeur par défaut : []
Description : Une liste d'adresses IP à attribuer à ce membre. L'adresse sera automatiquement attribuée sur le réseau si elle est laissée vide.
zerotier_member_description
Type : chaîne
Valeur par défaut : ""
Description : Description optionnelle pour un membre.
zerotier_api_accesstoken
Type : chaîne
Valeur par défaut : ""
Description : Le token d'accès nécessaire pour s'autoriser avec l'API ZeroTier. Vous pouvez en générer un dans les paramètres de votre compte sur https://my.zerotier.com/. Si cela est omis, le membre nouvellement rejoint ne sera pas automatiquement autorisé.
zerotier_api_url
Type : chaîne
Valeur par défaut : https://my.zerotier.com
Description : L'URL où se trouve l'API Zerotier. Doit utiliser le protocole HTTPS.
zerotier_api_delegate
Type : chaîne
Valeur par défaut : localhost
Description : Option pour déléguer des tâches pour les appels d'API Zerotier. Cela est utile dans une situation où les appels d’API ne peuvent être effectués que depuis un serveur de gestion sur liste blanche, par exemple.
Utilisation
Tout d'abord, créez un nouveau répertoire basé sur le répertoire sample
dans le répertoire inventory
:
cp -R inventory/sample inventory/my-cluster
Deuxièmement, modifiez inventory/my-cluster/hosts.ini
pour correspondre aux informations systèmes recueillies ci-dessus.
Exemple d'Inventaire
[serveurs]
pi-master
pi-worker01
jetson-worker01
[maître]
pi-master
[nœuds]
pi-worker01
jetson-worker01
[maître:vars]
zerotier_member_description='Nœud Maître Kubernetes Pi'
[nœuds:vars]
zerotier_member_description='Nœuds Travailleurs Kubernetes Pi'
[serveurs]
pi-master hostname=pi-master ansible_host=192.168.0.82 ansible_user=pi ansible_sudo_pass=password zerotier_member_description="Nœud Maître Kubernetes Pi"
pi-worker01 ansible_port=22 hostname=pi-worker01 ansible_host=192.168.0.176 ansible_user=pi ansible_sudo_pass=password zerotier_member_description="Nœud Travailleurs Kubernetes Pi Worker01"
jetson-worker01 ansible_port=22 hostname=jetson-worker01 ansible_host=192.168.0.227 ansible_user=jetson ansible_sudo_pass=password zerotier_member_description="Nœud Travailleurs Kubernetes Jetson Worker01"
Troisièmement, modifiez inventory/my-cluster/site.yml
pour correspondre aux informations zerotier recueillies ci-dessus.
Exemple de Playbook
- hosts: serveurs
vars:
zerotier_network_id: < id réseau >
zerotier_api_accesstoken: < token d'accès >
zerotier_register_short_hostname: true
roles:
- ajaykumar4.zerotier
Commencez le provisionnement du cluster en utilisant la commande suivante :
ansible-playbook inventory/my-cluster/playbook.yml -i inventory/my-cluster/hosts.ini
Install and add new members to a zerotier network for x86_64 and ARM-based computers.
ansible-galaxy install ajaykumar4.zerotier