Infos

Le fichier inventory.yml contient le nom de chaque serveur, ainsi que la manière de se connecter à ceux-ci.

Pour plus d'informations sur la manière dont se fichier est construit, se référer à la doc ansible.

Structure du fichier


all:
    vars:
        variables_for_all_groups
    hosts:
        hostname1:
            specific_variables_for_hostname1
    children:
        children_group1:
            vars:
                specific_variables_for_group1
            hostname_in_goup1:
                hostname2:
                    specific_variables_for_hostname2
    ...
  • all : Correspond au premier groupe de machine. A savoir, toutes les machines.
    • vars : Correspond aux variables s'appliquant à toutes les machines du groupe all.
      • ex : ansible_ssh_pipelining: True -> Activation du pipelining ansible.
      • ex : ansible_ssh_private_key_file: "../ansible_private/id_ed25519_ansible" -> Chemin de la clé publique ssh.
      • ex : ansible_ssh_common_args: '-F /dev/null' -> Ne pas fournir de fichier de configuration ssh.
    • hosts : Nom des machines n'appartenant pas à un groupe spécifique.
      • ex : localhost -> Le localhost n'appartient à aucun groupe particulier. Il est possible d'attribuer des variables spécifique pour un seul host.
        • ex de variables spécifique : ansible_connection: local -> La connection au localhost ne se fait pas via ssh, mais en local.
    • children : Collection de groupes enfants du groupe all. Les groupes enfants vont hériter des variables du groupe parent.
      • children_group1 : Nom d'un groupe enfant (ex : dedie_example ou vm_example).
        • vars : Correspond aux variables s'appliquant au groupe children_group1.
          • ex : ansible_ssh_common_args: '-F /dev/null -o ProxyCommand="ssh @host.example.fr -o IdentityFile= nc %h %p"' -> Connection à un vm via un serveur rebond.
        • hosts : Nom des machines appartenant au groupe children_group1.
          • ex : host.example.fr -> La machine nommé host.example.fr fait partie du groupe children_group1. Il est possible d'attribuer des variables spécifique pour un seul host.
            • ex de variables spécifique : ansible_host: 203.0.113.1 -> Adresse IP de la machine nommé host.example.fr.

Liste des groupes

Voici la liste des groupes déjà présent dans le fichier inventory. Certains playbooks seront lancés sur un seul groupe particulier :

  • dedie_* : Les serveurs physiques doivent être placés sous ce groupe. Dans notre cas, nous créons un groupe différent par machine physique. Le groupe porte le nom suivant : dedie_[NomDeLaMachinePhysique].
  • vm_* : : Les serveurs virtuels (VMs) doivent être placés sous ce groupe. Dans notre cas, nous créons un groupe différent par machine physique. Le groupe porte le nom suivant : vm_[NomDeLaMachinePhysique]. Ce groupe contient des variables spécifique, permettant la connexion en ssh aux VMs via un rebond sur la machine physique.
  • reverse_proxy_* : La/Les VMs servant de reverse proxy doivent être placée sous ce(s) groupe(s). Dans notre cas, nous créons un groupe différent par machine physique. Le groupe porte le nom suivant : reverse_proxy_[NomDeLaMachinePhysique]. Les playbooks concernant le(s) reverse proxy seront lancés seulement sur ce groupe.
  • pad_* : La/Les VMs fournissant l'Outils-Libres Etherpad doivent être placée sous ce(s) groupe(s).Dans notre cas, nous créons un groupe différent par machine physique. Le groupe porte le nom suivant : pad_[NomDeLaMachinePhysique]. Les playbooks concernant le(s) pad seront lancés seulement sur ce groupe.
  • sondage_* : La/Les VMs fournissant l'Outils-Libres Framadate doivent être placée sous ce(s) groupe(s).Dans notre cas, nous créons un groupe différent par machine physique. Le groupe porte le nom suivant : sondage_[NomDeLaMachinePhysique]. Les playbooks concernant le(s) sondages seront lancés seulement sur ce groupe.

Variables spécifiques

Voici la liste des variables déjà présentes dans le fichier inventory :

  • ansible_ssh_pipelining: True : Activation du pipelining Ansible.
  • ansible_ssh_private_key_file: "../ansible_private/id_ed25519_ansible" : Chemin de la clé ssh publique utilisée par Ansible.
  • ansible_ssh_common_args: '-F /dev/null' : Désactivation du fichier de config ssh.
  • ansible_connection: local : Connection Ansible en local et non via ssh.
  • ansible_host: 203.0.113.1 : Adresse IP d'une machine spécifique.
  • ansible_ssh_common_args: '-F /dev/null -o ProxyCommand="ssh @host.example.fr -o IdentityFile= nc %h %p"' : Désactivation du fichier de config ssh + utilisation d'une machine rebond.

results matching ""

    No results matching ""