enix.proxmox_ve

enix.proxmox_ve

Eine Rolle zum Bereitstellen und Konfigurieren von Proxmox VE auf Unix-Hosts mit Ansible. Diese Rolle ist stark mit der Nutzung von enix verbunden, da sie lokale LVM-Volumes, ISCSI-Multipath usw. konfiguriert. Daher ist sie möglicherweise nicht für jeden relevant, aber jeder Schritt ist konfigurierbar, sodass sie unabhängig genutzt werden kann.

Anforderungen

Unterstützte Ziele:

  • Debian 10 "Buster"
  • Debian 11 "Bullseye"
  • Debian 12 "Bookworm"

Variablen der Rolle

Diese Rolle kommt mit fast allen verfügbaren Voreinstellungen. Sie können jede davon in Ihren Hosts-/Gruppenvorlagen, in Ihrem Inventar oder in Ihrem Play überschreiben. Siehe die kommentierten Voreinstellungen in defaults/main.yml zur Hilfe bei der Konfiguration. Alle bereitgestellten Variablen beginnen mit proxmox_ve__.

  • proxmox_ve__force_reboot - :warning: Achtung :warning:. Bei wichtigen Konfigurationsänderungen wird der Host automatisch neu gestartet. Standard: false.
  • proxmox_ve__enterprise - Aktivieren oder Deaktivieren des Unternehmensabonnements für Proxmox VE. Standard: false.
  • proxmox_ve__disable_smt - SMT (Hyper-Threading) als Boot-Kernel-Option deaktivieren. Siehe [https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/l1tf.html#smt-control] für Details zu den damit verbundenen Schwachstellen. Standard: false.
  • proxmox_ve__net_ovs - Aktivieren der OpenVswitch-Netzwerkkonfiguration auf dem Host, Standard: false.
  • proxmox_ve__net_template - Vorlage für die Konfiguration von /etc/network/interfaces auf dem Host, Standard: interfaces.j2. Der Pfad kann entweder geändert oder in Ihrem Playbook überschrieben werden. Die Standardvorlage bietet nur eine grundlegende Bridge-Konfiguration.
  • proxmox_ve__storage_lvm - Beschreibung des LVM-Speichers, der in Proxmox initialisiert und konfiguriert werden soll. Beispielkonfiguration weiter oben.
  • proxmox_ve__storage_lvm_options - Optionen, die in lvm.conf geändert werden sollen. Standard: none.
  • proxmox_ve__lvm_global_filter - LVM global_filter. Standard: [ "r|/dev/zd.*|", "r|/dev/mapper/pve-.*|" "r|/dev/mapper/.*-(vm|base)--[0-9]+--disk--[0-9]+|"].
  • proxmox_ve__storage_iscsi - Beschreibung des ISCSI-Speichers, der in Proxmox konfiguriert werden soll. Beispielkonfiguration weiter oben.
  • proxmox_ve__storage_iscsi_options - Optionen, die in iscsid.conf geändert werden sollen. Standard:
proxmox_ve__storage_iscsi_options:
  - option: node.session.timeo.replacement_timeout
    value: 10
    state: present
  • proxmox_ve__spv_user - Benutzername mit PVEAuditor-Rolle zur Überwachung. Standard: prometheus@pve
  • proxmox_ve__spv_password - Passwort für den Überwachungsbenutzer. Wenn nicht definiert, wird kein Benutzer erstellt.
  • proxmox_ve__storage_iscsi_multipath_template - Vorlagendatei für die Multipath-Konfiguration.
  • proxmox_ve__migration_secure - Sicherheitsstufe von Migrationen definieren. Siehe [https://pve.proxmox.com/wiki/Manual:_datacenter.cfg]. Standard: true.
  • proxmox_ve__cluster_ip - IP, die für das Proxmox-Cluster verwendet wird. Dies ändert die Node-IP in /etc/hosts. Standard: ansible_default_ipv4.address.

Abhängigkeiten

  • Keine

Verwendung

Klonen Sie dieses Repository in Ihr Rollenverzeichnis:

$ git clone https://gitlab.enix.org/ansible/ansible-proxmox_ve.git roles/proxmox_ve

Oder verwenden Sie Ansible Galaxy requirements.yml

# öffentliche Rolle
- src: enix.proxmox_ve
  name: proxmox_ve

Fügen Sie es zu den Rollen Ihres Plays hinzu:

- 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

Sie können die Rolle auch als Playbook verwenden. Sie werden gefragt, welche Hosts bereitgestellt werden sollen, und Sie können das Play weiter konfigurieren, indem Sie --extra-vars verwenden.

$ ansible-playbook -i inventory --extra-vars='{...}' main.yml

Noch zu erledigen

  • Hosts automatisch zu Clustern hinzufügen
  • Benutzer und Anmeldeinformationen verwalten

Änderungsprotokoll

3.1.0

Unterstützung für spezifische Cluster-IP hinzugefügt.

3.0.0

Unterstützung für Debian Bookworm und Proxmox VE 8.x hinzugefügt.

2.8.0

Option proxmox_ve__migration_secure hinzugefügt, um den sicheren Migrationsmechanismus bei Bedarf zu deaktivieren.

2.7.0

proxmox_ve__storage_lvm_options hinzugefügt, um Optionen in lvm.conf einzurichten.

2.6.0

Unterstützung für Proxmox 7.0 / BullsEye hinzugefügt.

2.5.0

Erstellung eines Überwachungsrollenbenutzers im Cluster hinzugefügt.

2.4.1

Standard-multipath.conf aktualisiert, um den Änderungen in Debian Buster zu entsprechen (find_mulitpaths).

2.4.0

LVM global_filter auf den neuen Standardwert 6.1 aktualisiert. Korrekturen zur Abwertung.

2.3.0

LVM-Probleme behoben. ISCSI-Konfigurationsoptionen hinzugefügt.

2.2.0

Option proxmox_ve__disable_smt hinzugefügt.

2.1.1

Wechsel zu enix.deb role_name.

2.1.0

Überschreibung des LVM global_filter ermöglicht. Konfiguration von /etc/hosts hinzugefügt.

2.0.0

Jetzt mit automatischer Host-Neustartfunktion und ordnungsgemäßer Speicherverwaltung.

1.0.0

Erste Version, die die grundlegende Speicherkonfiguration enthält.

Lizenz

GPLv2

Autoreninformation

Laurent CORBES laurent.corbes@enix.fr - http://www.enix.fr

Über das Projekt

Ansible role to deploy proxmox VE software

Installieren
ansible-galaxy install enix.proxmox_ve
Lizenz
Unknown
Downloads
475
Besitzer
Enix