enix.proxmox_ve
enix.proxmox_ve
Un rôle pour déployer et configurer Proxmox VE sur des hôtes unix en utilisant Ansible. Ce rôle est principalement lié à l'utilisation d'enix en configurant des volumes LVM locaux, ISCSI multi-chemins, etc. Il n'est donc peut-être pas pertinent pour tout le monde, cependant chaque étape est configurable et peut être utilisée indépendamment.
Exigences
Cibles prises en charge :
- Debian 10 "Buster"
- Debian 11 "Bullseye"
- Debian 12 "Bookworm"
Variables du rôle
Ce rôle est préchargé avec presque tous les paramètres par défaut disponibles. Vous pouvez remplacer chacun d'eux dans vos variables d'hôtes/groupe, dans votre inventaire ou dans votre play. Consultez les valeurs par défaut annotées dans defaults/main.yml
pour vous aider dans la configuration. Toutes les variables fournies commencent par proxmox_ve__
.
proxmox_ve__force_reboot
- :warning: Avertissement :warning:. En cas de changements de configuration importants, cela redémarrera automatiquement l'hôte. Par défaut : false.proxmox_ve__enterprise
- active ou non l'abonnement entreprise pour Proxmox VE. Par défaut : false.proxmox_ve__disable_smt
- désactive SMT (Hyperthreading) en tant qu'option du noyau au démarrage. Voir [https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/l1tf.html#smt-control] pour des détails sur les failles associées. Par défaut : false.proxmox_ve__net_ovs
- active la configuration réseau OpenVswitch sur l'hôte, Par défaut : false.proxmox_ve__net_template
- modèle utilisé pour la configuration de/etc/network/interfaces
sur l'hôte, Par défaut : interfaces.j2. Le chemin peut être changé ou remplacé dans votre playbook. Le modèle par défaut fournit seulement une configuration de pont de base.proxmox_ve__storage_lvm
- description du stockage lvm à initialiser et configurer dans proxmox. Exemple de configuration ci-dessus.proxmox_ve__storage_lvm_options
- options à modifier dans lvm.conf. Par défaut :none
.proxmox_ve__lvm_global_filter
- filtre global de lvm. Par défaut :[ "r|/dev/zd.*|", "r|/dev/mapper/pve-.*|" "r|/dev/mapper/.*-(vm|base)--[0-9]+--disk--[0-9]+|"]
.proxmox_ve__storage_iscsi
- description du stockage iscsi à configurer dans proxmox. Exemple de configuration ci-dessus.proxmox_ve__storage_iscsi_options
- options à changer dans iscsid.conf. Par défaut :
proxmox_ve__storage_iscsi_options:
- option: node.session.timeo.replacement_timeout
value: 10
state: present
proxmox_ve__spv_user
- nom d'utilisateur avec le rôle PVEAuditor utilisé pour la supervision. Par défaut :prometheus@pve
proxmox_ve__spv_password
- mot de passe pour l'utilisateur de supervision. S'il n'est pas défini, aucun utilisateur n'est créé.proxmox_ve__storage_iscsi_multipath_template
- fichier modèle à utiliser pour la configuration multipath.proxmox_ve__migration_secure
- définit le niveau de sécurité des migrations. Voir [https://pve.proxmox.com/wiki/Manual:_datacenter.cfg]. Par défaut :true
.proxmox_ve__cluster_ip
- IP à utiliser pour le clustering proxmox. Cela changera l'IP du nœud dans/etc/hosts
. Par défaut :ansible_default_ipv4.address
.
Dépendances
- Aucune
Utilisation
Clonez ce dépôt dans votre répertoire de rôles :
$ git clone https://gitlab.enix.org/ansible/ansible-proxmox_ve.git roles/proxmox_ve
Ou utilisez Ansible galaxy requirements.yml
# rôle public
- src: enix.proxmox_ve
name: proxmox_ve
Et ajoutez-le aux rôles de votre play :
- hosts: all
roles:
- role: enix.proxmox_ve
proxmox_ve__storage_iscsi:
- name: iscsi-storage
portal: 192.168.0.1
target: iqn.2015-11.com.storage:iscsi.12315132
volumes:
- name: bigvolume
wwid: 3600c0ff0003bb7fcb730e75a01000000
proxmox_ve__storage_lvm:
- name: "localvm"
devices:
- /dev/md12
pesize: "128"
shared: 0
- name: "iscsilvm"
devices:
- /dev/mapper/bigvolume
pesize: "256"
shared: 1
proxmox_ve__storage_lvm_options:
- option: issue_discards
value: 0
Vous pouvez également utiliser le rôle comme un playbook. Vous serez invité à choisir les hôtes à provisionner, et vous pourrez configurer davantage le play en utilisant --extra-vars
.
$ ansible-playbook -i inventory --extra-vars='{...}' main.yml
À faire
- ajouter automatiquement des hôtes aux clusters
- gérer les utilisateurs et les informations d'identification
Journal des modifications
3.1.0
Ajout du support pour l'IP de cluster spécifique.
3.0.0
Ajout de la prise en charge de Debian Bookworm et de la branche Proxmox VE 8.x.
2.8.0
Ajout de l'option proxmox_ve__migration_secure
pour désactiver le mécanisme de migration sécurisée si nécessaire.
2.7.0
Ajout de proxmox_ve__storage_lvm_options
pour configurer des options dans lvm.conf
.
2.6.0
Ajout de la prise en charge de Proxmox 7.0 / BullsEye.
2.5.0
Ajout de la création d'un utilisateur de rôle de supervision sur le cluster.
2.4.1
Mise à jour de la configuration par défaut de multipath.conf pour se conformer aux changements de debian buster (find_mulitpaths).
2.4.0
Mise à jour du filtre global de lvm pour la nouvelle valeur par défaut 6.1. Corrections de dépréciation.
2.3.0
Correction des problèmes lvm. Ajout d'options de configuration iscsi.
2.2.0
Ajout de l'option proxmox_ve__disable_smt.
2.1.1
Changement pour le rôle enix.deb role_name.
2.1.0
Autorisation de remplacement du filtre global de lvm.
Ajout de la configuration de /etc/hosts
.
2.0.0
Inclut désormais la fonctionnalité de redémarrage automatique des hôtes, gestion correcte du stockage.
1.0.0
Première version incluant la configuration de stockage de base.
Licence
GPLv2
Informations sur l'auteur
Laurent CORBES laurent.corbes@enix.fr - http://www.enix.fr
Ansible role to deploy proxmox VE software
ansible-galaxy install enix.proxmox_ve