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