pbicskei.classify
Nom du rôle
Un rôle qui simplifie la classification à partir des ansible_facts.
La classification Proxmox p24.xlarge représente un hôte Proxmox avec ansible_processor_count égal à 24 et ansible_memtotal_mb supérieur à 32456.
La classification Raspberry a4.large représente un hôte Arm avec ansible_processor_count égal à 4 et ansible_memtotal_mb entre 4096 et 8096.
La classification Générique g4.nano représente un hôte Générique avec ansible_processor_count égal à 4 et ansible_memtotal_mb entre 4096 et 8096.
Dans l'exemple Proxmox, la première lettre est basée sur ansible_kernel comme ceci :
- name: Hyperviseur Proxmox
set_fact:
type: p
type_desc: "{{ ansible_distribution }} Proxmox"
when: '"pve" in ansible_kernel'
Ces classifications sont générées en fonction de 2 variables : size_map et type_map, que l'on trouve toutes deux dans defaults/main.yml.
Exigences
Toute exigence préalable qui pourrait ne pas être couverte par Ansible lui-même ou par le rôle doit être mentionnée ici. Par exemple, si le rôle utilise le module EC2, il peut être judicieux de mentionner dans cette section que le package boto est nécessaire.
Variables du rôle
Une description des variables réglables pour ce rôle doit ici être fournie, y compris les variables présentes dans defaults/main.yml, vars/main.yml, et toute variable qui peut/doit être définie via des paramètres pour le rôle. Toute variable lue à partir d'autres rôles et/ou de la portée globale (par exemple, hostvars, group vars, etc.) doit également être mentionnée ici.
Dépendances
Une liste d'autres rôles hébergés sur Galaxy doit être indiquée ici, ainsi que les détails concernant les paramètres qui pourraient devoir être définis pour d'autres rôles, ou les variables utilisées à partir d'autres rôles.
Exemple de Playbook
Inclure un exemple d'utilisation de votre rôle (par exemple, avec des variables passées en paramètres) est toujours utile pour les utilisateurs :
Utilisation de la table par défaut :
- hosts: serveurs
roles:
- pbicskei.classify
Utilisation d'une table personnalisée :
- hosts: serveurs
roles:
- pbicskei.classify
vars:
type_map:
- { name: "Hyperviseur", letter: "hv", kernel_match: "pve" }
- { name: "Compute(ARM)", letter: "a", kernel_match: "raspi" }
- { name: "Générique", letter: "g", kernel_match: "default" }
size_map:
- { name: "nanite", min: 1, max: 1024 }
- { name: "microbe", min: 1024, max: 2048 }
- { name: "insecte", min: 2048, max: 4092 }
- { name: "hamster", min: 4092, max: 8184 }
- { name: "chien", min: 8184, max: 16368 }
- { name: "cheval", min: 16368, max: 32736 }
- { name: "éléphant", min: 32736, max: 65472 }
- { name: "baleine", min: 65472, max: 130944 }
roles:
- pbicskei.classify
Licence
BSD
Informations sur l'auteur
Une section facultative pour que les auteurs du rôle incluent des informations de contact ou un site web (HTML non autorisé).
ansible-galaxy install pbicskei.classify