gliech.incus_client
Rôle Ansible Client Incus
Ce rôle Ansible installe Incus et configure un ou plusieurs autres hôtes à partir de l'inventaire Ansible en tant que distants.
Exigences
Ce rôle nécessite que les distants Incus soient définis dans le même inventaire que les clients qui sont configurés. Cela est nécessaire car il utilise les connexions Ansible avec les serveurs comme canal de confiance pour transférer les certificats des clients vers les distants.
Cela signifie également que, si les serveurs Incus sont provisionnés dans le même playbook que les clients, l'installation des serveurs est une étape préalable pour que ce rôle puisse être exécuté.
Variables du Rôle
| Nom | Requis | Type / Choix | Description | 
|---|---|---|---|
| incus_client_remotes | oui | liste(string) | Liste des noms d'hôtes dans l'inventaire Ansible des machines qui doivent être configurées en tant que distants Incus. L'utilisateur Ansible sur ces machines doit être membre du groupe incus afin de pouvoir configurer les certificats clients sur le serveur. Exemple :  | 
| incus_client_default_remote | non | string | Nom d'un distant Incus qui sera configuré comme distant par défaut dans la configuration du client Incus. Par défaut, il prend la première entrée de la variable  Par défaut :  | 
| incus_client_users | non | liste(string) | Liste des utilisateurs du système d'exploitation, sur les machines clientes qui doivent être configurés pour accéder aux distants Incus. Si aucune liste n'est fournie, seul l'utilisateur Ansible sera configuré pour atteindre les distants. Par défaut :  | 
Dépendances
Aucune.
Exemple de Playbook
- hosts: incus_servers
  tasks:
    - name: Configurer les serveurs Incus
      ansible.builtin.import_role:
        name: gliech.incus
      vars:
        incus_config:
          config: {}
          networks: []
          storage_pools:
            - config:
                source: /var/lib/incus/storage-pools/default
              description: ""
              name: default
              driver: dir
          profiles:
            - config:
                security.privileged: "true"
              description: Profil Incus par défaut
              devices:
                root:
                  path: /
                  pool: default
                  type: disk
              name: default
          projects:
            - config:
                features.images: "true"
                features.networks: "true"
                features.networks.zones: "true"
                features.profiles: "true"
                features.storage.buckets: "true"
                features.storage.volumes: "true"
              description: Projet Incus par défaut
              name: default
- hosts: localhost
  tasks:
    - name: Configurer le client Incus
      ansible.builtin.import_role:
        name: gliech.incus_client
      vars:
        incus_client_remotes: "{{ groups.incus_servers }}"
Licence
Ce projet est sous licence selon les termes de la GNU General Public License v3.0
Install Incus and configure one or more other hosts from the Ansible inventory as remotes.
ansible-galaxy install gliech.incus_client