Upgrade der BeeGFS Services
Verwenden Sie Ansible, um die BeeGFS-Version, die auf Ihrem HA-Cluster läuft, zu aktualisieren.
Überblick
BeeGFS folgt einem major.minor.patch Versionsschema. Die BeeGFS HA-Ansible-Rollen werden für jede unterstützte major.minor Version (z. B. beegfs_ha_7_2 und beegfs_ha_7_3) bereitgestellt. Jede HA-Rolle ist auf die neueste BeeGFS-Patch-Version fixiert, die zum Zeitpunkt der Veröffentlichung der Ansible Sammlung verfügbar ist.
Ansible sollte für alle BeeGFS-Upgrades verwendet werden, einschließlich des Wechsels zwischen Haupt-, Neben- und Patch-Versionen von BeeGFS. Um BeeGFS zu aktualisieren, müssen Sie zunächst die BeeGFS Ansible Collection aktualisieren, wodurch auch die neuesten Korrekturen und Verbesserungen für die Bereitstellungs-/Verwaltungsautomatisierung und den zugrunde liegenden HA-Cluster übernommen werden. Selbst nach der Aktualisierung auf die neueste Version der Collection wird BeeGFS erst aktualisiert, wenn ansible-playbook mit dem -e "beegfs_ha_force_upgrade=true"-Set ausgeführt wird. Weitere Details zu jedem Upgrade finden Sie in der "BeeGFS Upgrade-Dokumentation" für Ihre aktuelle Version.
|
|
Wenn Sie auf BeeGFS v8 aktualisieren, beachten Sie stattdessen das "Upgrade auf BeeGFS v8" Verfahren. |
Getestete Upgrade-Pfade
Die folgenden Upgrade-Pfade wurden getestet und verifiziert:
| Originalversion | Upgrade-Version | Multirail | Details |
|---|---|---|---|
7.2.6 |
7.3.2 |
Ja. |
Beegfs-Sammlung von v3.0.1 auf v3.1.0, multirail hinzugefügt |
7.2.6 |
7.2.8 |
Nein |
Beegfs-Sammlung wird von v3.0.1 auf v3.1 aktualisiert |
7.2.8 |
7.3.1 |
Ja. |
Upgrade mit beegfs Collection v3.1.0, multirail hinzugefügt |
7.3.1 |
7.3.2 |
Ja. |
Upgrade mit beegfs Collection v3.1.0 |
7.3.2 |
7.4.1 |
Ja. |
Upgrade mit beegfs Collection v3.2.0 |
7.4.1 |
7.4.2 |
Ja. |
Upgrade mit beegfs Collection v3.2.0 |
7.4.2 |
7.4.6 |
Ja. |
Upgrade mit beegfs Collection v3.2.0 |
7.4.6 |
8,0 |
Ja. |
Führen Sie das Upgrade gemäß den Anweisungen in der "Upgrade auf BeeGFS v8"-Prozedur durch. |
7.4.6 |
8,1 |
Ja. |
Führen Sie das Upgrade gemäß den Anweisungen in der "Upgrade auf BeeGFS v8"-Prozedur durch. |
7.4.6 |
8,2 |
Ja. |
Führen Sie das Upgrade gemäß den Anweisungen in der "Upgrade auf BeeGFS v8"-Prozedur durch. |
Schritte beim BeeGFS-Upgrade
In den folgenden Abschnitten werden die Schritte zum Aktualisieren der BeeGFS Ansible Sammlung und BeeGFS selbst beschrieben. Achten Sie besonders auf zusätzliche Schritte für die Aktualisierung von BeeGFS Major oder Minor Versionen.
Schritt: Upgrade der BeeGFS-Sammlung
Bei Erfassungs-Upgrades mit Zugriff auf "Ansible-Galaxie", Ausführen des folgenden Befehls:
ansible-galaxy collection install netapp_eseries.beegfs --upgrade
Laden Sie die Sammlung von herunter, um Offline-Sammlungs-Upgrades von zu erhalten "Ansible-Galaxie" Durch Klicken auf das gewünschte Install Version` Und dann Download tarball. Übertragen Sie den Tarball auf Ihren Ansible-Steuerungsknoten und führen Sie den folgenden Befehl aus.
ansible-galaxy collection install netapp_eseries-beegfs-<VERSION>.tar.gz --upgrade
Siehe "Sammlungen Werden Installiert" Finden Sie weitere Informationen.
Schritt 2: Aktualisieren Sie den Ansible-Bestand
Nehmen Sie alle erforderlichen oder gewünschten Aktualisierungen an den Ansible-Inventardateien Ihres Clusters vor. Siehe den Hinweise zur Versionsaktualisierung Abschnitt unten für Details zu Ihren spezifischen Upgrade-Anforderungen. Siehe den "Ansible-Bestandsübersicht" Abschnitt für allgemeine Informationen zur Konfiguration Ihres BeeGFS HA-Inventars.
Schritt 3: Ansible-Playbook aktualisieren (nur bei Aktualisierung von Haupt- oder Nebenversionen)
Wenn Sie zwischen Haupt- oder Unterversionen wechseln, aktualisieren Sie in der playbook.yml Datei, die zum Bereitstellen und Warten des Clusters verwendet wird, den Namen der beegfs_ha_<VERSION> Rolle, damit die gewünschte Version angezeigt wird. Wenn Sie beispielsweise BeeGFS 7.4 bereitstellen möchten, wäre dies beegfs_ha_7_4:
- hosts: all
gather_facts: false
any_errors_fatal: true
collections:
- netapp_eseries.beegfs
tasks:
- name: Ensure BeeGFS HA cluster is setup.
ansible.builtin.import_role: # import_role is required for tag availability.
name: beegfs_ha_7_4
Weitere Informationen zum Inhalt dieser Playbook-Datei finden Sie im "Implementieren Sie das BeeGFS HA-Cluster" Abschnitt.
Schritt 4: Führen Sie das BeeGFS-Upgrade aus
So wenden Sie das BeeGFS-Update an:
ansible-playbook -i inventory.yml beegfs_ha_playbook.yml -e "beegfs_ha_force_upgrade=true" --tags beegfs_ha
Hinter den Kulissen übernimmt die BeeGFS HA-Rolle:
-
Stellen Sie sicher, dass sich das Cluster in einem optimalen Zustand befindet, wobei sich jeder BeeGFS-Service auf seinem bevorzugten Node befindet.
-
Versetzen Sie das Cluster in den Wartungsmodus.
-
Aktualisieren der HA-Cluster-Komponenten (falls erforderlich)
-
Aktualisieren Sie jeden Dateiknoten nacheinander wie folgt:
-
Setzen Sie ihn in den Standby-Modus und führen Sie ein Failover seiner Dienste zum sekundären Knoten durch.
-
BeeGFS-Pakete aktualisieren.
-
Fallback-Services.
-
-
Verschieben Sie das Cluster aus dem Wartungsmodus.
Hinweise zur Versionsaktualisierung
Upgrade von BeeGFS Version 7.2.6 oder 7.3.0
Änderungen an verbindungsbasierter Authentifizierung
BeeGFS Version 7.3.2 und höher erfordert, dass eine verbindungsbasierte Authentifizierung konfiguriert wird. Dienste werden ohne eine der folgenden Optionen nicht gestartet:
-
Angabe eines
connAuthFile, oder -
Einstellung
connDisableAuthentication=truein der Konfigurationsdatei des Dienstes.
Es wird dringend empfohlen, die verbindungsbasierte Authentifizierung aus Sicherheitsgründen zu aktivieren. Siehe "BeeGFS-Verbindungsbasierte Authentifizierung" für weitere Informationen.
Die `beegfs_ha*`Rollen generieren und verteilen die Authentifizierungsdatei an:
-
Alle Dateiknoten im Cluster
-
Der Ansible control node bei
<playbook_directory>/files/beegfs/<beegfs_mgmt_ip_address>_connAuthFile
Die beegfs_client Rolle erkennt diese Datei automatisch und wendet sie auf Clients an, wenn sie vorhanden ist.
|
|
Wenn Sie die beegfs_client Rolle nicht zur Konfiguration der Clients verwendet haben, müssen Sie die Authentifizierungsdatei manuell an jeden Client verteilen und die connAuthFile Einstellung in der beegfs-client.conf Datei konfigurieren. Beim Upgrade von einer BeeGFS-Version ohne verbindungsbasierte Authentifizierung verlieren Clients den Zugriff, es sei denn, Sie deaktivieren die verbindungsbasierte Authentifizierung während des Upgrades, indem Sie beegfs_ha_conn_auth_enabled: false in group_vars/ha_cluster.yml setzen (nicht empfohlen).
|
Weitere Details und alternative Konfigurationsoptionen finden Sie im Schritt zur Authentifizierung der Verbindungskonfiguration im "Festlegen Der Konfiguration Des Gemeinsamen Dateiknotens" Abschnitt.