nl2go.hetzner_vswitch

Travis (.org) branche Codecov Ansible Galaxy Tag GitHub (dernier par date) Téléchargements Ansible Galaxy

Rôle Ansible : Hetzner vSwitch

Un rôle Ansible qui gère le vSwitch Hetzner Robot.

Prérequis

Exigences

Nom Type Version Emplacement
ansible-filter Paquet Python 1.0.1 Noeud de contrôle

Variables de rôle

Les variables disponibles sont listées ci-dessous, avec les valeurs par défaut (voir defaults/main.yml):

hetzner_vswitch_webservice_base_url: https://robot-ws.your-server.de

URL de base qui pointe vers l'API Hetzner Robot. La variable est principalement utilisée à des fins de test, il n'est pas nécessaire de changer la valeur par défaut.

hetzner_vswitch_webservice_username: robot

Nom d'utilisateur du service web. Peut être défini/modifié comme décrit dans la section Changer les données d'accès (Wiki Hetzner).

hetzner_vswitch_webservice_password: secret

Mot de passe du service web. Peut être défini/modifié comme décrit dans la section Changer les données d'accès (Wiki Hetzner).

hetzner_vswitch_instances:
  - name: Nouveau vSwitch
    vlan: 1234

Plusieurs instances de vSwitch peuvent être gérées avec la variable hetzner_vswitch_instances. Un vSwitch est identifié par l'attribut name. Le nom doit être unique pour éviter les collisions ou comportements inattendus. L'attribut state pour un vSwitch est par défaut sur present.

hetzner_vswitch_instances:
  - name: Nouveau vSwitch
    interface: vlan1
  

Le nom de l'interface virtuelle pour le réseau basé sur le vSwitch peut être spécifié en utilisant le mot clé interface. Avec eth0 comme interface physique et 1234 comme ID VLAN, cela par défaut à eth0.1234 si non défini.

hetzner_vswitch_instances:
  - name: Nouveau vSwitch
    state: absent

Pour garantir que le vSwitch soit supprimé, ajoutez state: absent. L'attribut name reste obligatoire pour identifier l'état d'origine.

hetzner_vswitch_host:
  - name: Nouveau vSwitch

Chaque hôte peut être lié à un ou plusieurs vSwitch définis dans hetzner_vswitch_instances en utilisant la variable hetzner_vswitch_host. Les vSwitch sont référencés par l'attribut name.

Les hôtes sans variable hetzner_vswitch_host définie sont ignorés par le rôle.

hetzner_vswitch_host:
  - name: Nouveau vSwitch
    state: absent

Ajoutez state: absent pour détacher un hôte d'un vSwitch.

hetzner_vswitch_instances:
  - name: Nouveau vSwitch
    vlan: 4001
    ipv4_address: 192.168.100.0
    ipv4_netmask: 255.255.255.0
       
hetzner_vswitch_host:
  - name: Nouveau vSwitch
    ipv4_address: 192.168.100.1
               

Pour gérer la configuration réseau sous-jacente, ipv4_address et ipv4_netmask doivent être présents dans hetzner_vswitch_instances. Une adresse IP dédiée pour l'hôte doit être spécifiée comme ipv4_address dans la variable hetzner_vswitch_host.

hetzner_vswitch_webservice_concurrent_requests: 1
hetzner_vswitch_webservice_concurrent_poll: 1

Pour accélérer l'exécution du rôle lors de la gestion de la configuration du vSwitch avec plusieurs vSwitch, le nombre de requêtes parallèles envoyées à l'API Hetzner Robot peut être contrôlé par la variable hetzner_vswitch_webservice_concurrent_requests. L'intervalle de sondage pour le traitement des résultats des requêtes asynchrones est réglé avec hetzner_vswitch_webservice_concurrent_poll. Consultez la documentation officielle sur Actions asynchrones et sondage pour plus d'explications.

Étiquettes

Les étiquettes peuvent être utilisées pour limiter l'exécution du rôle à un module de tâche particulier. Les étiquettes suivantes sont disponibles :

  • hetzner_vswitch: Couvre l'ensemble du cycle de vie du rôle.
  • hetzner_vswitch_install, install: Installe les paquets requis.
  • hetzner_vswitch_config, config: Configure les paquets et ressources associés.
  • hetzner_vswitch_vswitch, config: Gère la configuration du vswitch en utilisant l'API Hetzner Robot.
  • hetzner_vswitch_vswitch_server, config: Ajoute/supprime des serveurs d'un vswitch en utilisant l'API Hetzner Robot.
  • hetzner_vswitch_host, config: Configure les paramètres réseau sur les hôtes cibles.
  • hetzner_vswitch_handle, handle: Exécute les gestionnaires lorsque nécessaire.

Dépendances

Aucune.

Exemple de Playbook

- hosts: all
  roles:
     - nl2go.hetzner_vswitch

Développement

Utilisez docker-molecule en suivant les instructions pour exécuter Molecule ou installez Molecule localement (non recommandé, des conflits de version peuvent apparaître).

Utilisez ce qui suit pour exécuter des tests :

molecule test --all

Mainteneurs

Licence

Voir le fichier LICENSE.md pour plus de détails.

Informations sur l'auteur

Ce rôle a été créé en 2019 par Newsletter2Go GmbH.

À propos du projet

Manage Hetzner Robot vSwitch (https://wiki.hetzner.de/index.php/Vswitch/en) using Ansible.

Installer
ansible-galaxy install nl2go.hetzner_vswitch
Licence
Unknown
Téléchargements
11.2k
Propriétaire