GlusterFS auf virtuellen Azure-Computern unter Red Hat Enterprise Linux für SAP NetWeaver

In diesem Artikel wird beschrieben, wie Sie die virtuellen Computer bereitstellen und konfigurieren und einen GlusterFS-Cluster installieren, der zum Speichern der freigegebenen Daten eines hochverfügbaren SAP-Systems verwendet werden kann. In diesem Leitfaden wird das Einrichten des verteilten Dateisystems GlusterFS beschrieben, das von zwei SAP-Systemen (NW1 und NW2) verwendet wird. Bei den Namen der Ressourcen (z. B. der virtuellen Computer und virtuellen Netzwerke) im Beispiel wird davon ausgegangen, dass Sie die SAP-Dateiservervorlage mit dem Ressourcenpräfix glust verwendet haben.

Beachten Sie, dass wie in Red Hat Gluster Storage Life Cycle Red Hat Gluster Storage ende 2024 das Ende der Lebensdauer erreicht. Die Konfiguration wird für SAP auf Azure bis zum Ende der Lebensdauer unterstützt. GlusterFS sollte nicht für neue Bereitstellungen verwendet werden. Es wird empfohlen, die freigegebenen SAP-Verzeichnisse auf NFS auf Azure Files- oder Azure NetApp Files-Volumes wie in HA für SAP NW auf RHEL mit NFS auf Azure Files oder HA für SAP NW auf RHEL mit Azure NetApp Files dokumentiert bereitzustellen.

Lesen Sie zuerst die folgenden SAP Notes und Dokumente:

Übersicht

Zum Erreichen von Hochverfügbarkeit erfordert SAP NetWeaver freigegebenen Speicher. GlusterFS ist in einem separaten Cluster konfiguriert und kann von mehreren SAP-Systemen verwendet werden.

SAP NetWeaver High Availability overview

Einrichten von GlusterFS

In diesem Beispiel wurden die Ressourcen manuell über das Azure-Portal bereitgestellt.

Manuelles Bereitstellen von Linux über das Azure-Portal

In diesem Dokument wird davon ausgegangen, dass Sie bereits eine Ressourcengruppe, ein virtuelles Azure-Netzwerk und ein Subnetz bereitgestellt haben.

Stellen Sie virtuelle Computer für GlusterFS bereit. Wählen Sie ein geeignetes RHEL-Image aus, das für den Gluster-Speicher unterstützt wird. Sie können den virtuellen Computer in einer der Verfügbarkeitsoptionen bereitstellen: Skalierungsgruppe, Verfügbarkeitszone oder Verfügbarkeitsgruppe.

Konfigurieren von GlusterFS

Die folgenden Elemente sind mit einem der folgenden Präfixe versehen: [A] – gilt für alle Knoten, [1] – gilt nur für Knoten 1, [2] – gilt nur für Knoten 2 oder [3] – gilt nur für Knoten 3.

  1. [A] Richten Sie die Hostnamensauflösung ein.

    Sie können entweder einen DNS-Server verwenden oder „/etc/hosts“ auf allen Knoten ändern. In diesem Beispiel wird die Verwendung der /etc/hosts-Datei veranschaulicht. Ersetzen Sie die IP-Adresse und den Hostnamen in den folgenden Befehlen.

    sudo vi /etc/hosts
    

    Fügen Sie „/etc/hosts“ die folgenden Zeilen hinzu. Ändern Sie die IP-Adresse und den Hostnamen Ihrer Umgebung entsprechend.

    # IP addresses of the Gluster nodes
    10.0.0.40 glust-0
    10.0.0.41 glust-1
    10.0.0.42 glust-2
    
  2. [A] Registrieren

    Registrieren Sie Ihre virtuellen Computer, und fügen Sie diese an einen Pool an, der Repositorys für RHEL 7 und GlusterFS enthält.

    sudo subscription-manager register
    sudo subscription-manager attach --pool=<pool id>
    
  3. [A] GlusterFS-Repositorys aktivieren

    Aktivieren Sie die folgenden Repositorys, um die erforderlichen Pakete zu installieren.

    sudo subscription-manager repos --disable "*"
    sudo subscription-manager repos --enable=rhel-7-server-rpms
    sudo subscription-manager repos --enable=rh-gluster-3-for-rhel-7-server-rpms
    
  4. [A] GlusterFS-Pakete installieren

    Installieren Sie diese Pakete auf allen GlusterFS-Knoten.

    sudo yum -y install redhat-storage-server
    

    Starten Sie die Knoten nach der Installation neu.

  5. [A] Firewall ändern

    Fügen Sie Firewallregeln hinzu, um Clientdatenverkehr zu GlusterFS-Knoten zuzulassen.

    # list the available zones
    firewall-cmd --get-active-zones
    
    sudo firewall-cmd --zone=public --add-service=glusterfs --permanent
    sudo firewall-cmd --zone=public --add-service=glusterfs
    
  6. [A] GlusterFS-Dienst aktivieren und starten

    Starten Sie den GlusterFS-Dienst auf allen Knoten.

    sudo systemctl start glusterd
    sudo systemctl enable glusterd
    
  7. [1] GluserFS erstellen

    Führen Sie die folgenden Befehle aus, um den GlusterFS-Cluster zu erstellen.

    sudo gluster peer probe glust-1
    sudo gluster peer probe glust-2
    
    # Check gluster peer status
    sudo gluster peer status
    
    # Number of Peers: 2
    # 
    # Hostname: glust-1
    # Uuid: 10d43840-fee4-4120-bf5a-de9c393964cd
    # State: Accepted peer request (Connected)
    # 
    # Hostname: glust-2
    # Uuid: 9e340385-12fe-495e-ab0f-4f851b588cba
    # State: Accepted peer request (Connected)
    
  8. [2] Peerstatus testen

    Testen Sie den Peerstatus auf dem zweiten Knoten.

    sudo gluster peer status
    # Number of Peers: 2
    #
    # Hostname: glust-0
    # Uuid: 6bc6927b-7ee2-461b-ad04-da123124d6bd
    # State: Peer in Cluster (Connected)
    #
    # Hostname: glust-2
    # Uuid: 9e340385-12fe-495e-ab0f-4f851b588cba
    # State: Peer in Cluster (Connected)
    
  9. [3] Peerstatus testen

    Testen Sie den Peerstatus auf dem dritten Knoten.

    sudo gluster peer status
    # Number of Peers: 2
    #
    # Hostname: glust-0
    # Uuid: 6bc6927b-7ee2-461b-ad04-da123124d6bd
    # State: Peer in Cluster (Connected)
    #
    # Hostname: glust-1
    # Uuid: 10d43840-fee4-4120-bf5a-de9c393964cd
    # State: Peer in Cluster (Connected)
    
  10. [A] LVM erstellen

    In diesem Beispiel wird das verteilte Dateisystem GlusterFS für zwei SAP-Systeme (NW1 und NW2) verwendet. Verwenden Sie die folgenden Befehle, um LVM-Konfigurationen für diese SAP-Systeme zu erstellen.

    Verwenden Sie die folgenden Befehle für NW1:

    sudo pvcreate --dataalignment 1024K /dev/disk/azure/scsi1/lun0
    sudo pvscan
    sudo vgcreate --physicalextentsize 256K rhgs-NW1 /dev/disk/azure/scsi1/lun0
    sudo vgscan
    sudo lvcreate -l 50%FREE -n rhgs-NW1/sapmnt
    sudo lvcreate -l 20%FREE -n rhgs-NW1/trans
    sudo lvcreate -l 10%FREE -n rhgs-NW1/sys
    sudo lvcreate -l 50%FREE -n rhgs-NW1/ascs
    sudo lvcreate -l 100%FREE -n rhgs-NW1/aers
    sudo lvscan
    
    sudo mkfs.xfs -f -K -i size=512 -n size=8192 /dev/rhgs-NW1/sapmnt
    sudo mkfs.xfs -f -K -i size=512 -n size=8192 /dev/rhgs-NW1/trans
    sudo mkfs.xfs -f -K -i size=512 -n size=8192 /dev/rhgs-NW1/sys
    sudo mkfs.xfs -f -K -i size=512 -n size=8192 /dev/rhgs-NW1/ascs
    sudo mkfs.xfs -f -K -i size=512 -n size=8192 /dev/rhgs-NW1/aers
    
    sudo mkdir -p /rhs/NW1/sapmnt
    sudo mkdir -p /rhs/NW1/trans
    sudo mkdir -p /rhs/NW1/sys
    sudo mkdir -p /rhs/NW1/ascs
    sudo mkdir -p /rhs/NW1/aers
    
    sudo chattr +i /rhs/NW1/sapmnt
    sudo chattr +i /rhs/NW1/trans
    sudo chattr +i /rhs/NW1/sys
    sudo chattr +i /rhs/NW1/ascs
    sudo chattr +i /rhs/NW1/aers
    
    echo -e "/dev/rhgs-NW1/sapmnt\t/rhs/NW1/sapmnt\txfs\tdefaults,inode64,nobarrier,noatime,nouuid 0 2" | sudo tee -a /etc/fstab
    echo -e "/dev/rhgs-NW1/trans\t/rhs/NW1/trans\txfs\tdefaults,inode64,nobarrier,noatime,nouuid 0 2" | sudo tee -a /etc/fstab
    echo -e "/dev/rhgs-NW1/sys\t/rhs/NW1/sys\txfs\tdefaults,inode64,nobarrier,noatime,nouuid 0 2" | sudo tee -a /etc/fstab
    echo -e "/dev/rhgs-NW1/ascs\t/rhs/NW1/ascs\txfs\tdefaults,inode64,nobarrier,noatime,nouuid 0 2" | sudo tee -a /etc/fstab
    echo -e "/dev/rhgs-NW1/aers\t/rhs/NW1/aers\txfs\tdefaults,inode64,nobarrier,noatime,nouuid 0 2" | sudo tee -a /etc/fstab
    
    sudo mount -a
    

    Verwenden Sie die folgenden Befehle für NW2:

    sudo pvcreate --dataalignment 1024K /dev/disk/azure/scsi1/lun1
    sudo pvscan
    sudo vgcreate --physicalextentsize 256K rhgs-NW2 /dev/disk/azure/scsi1/lun1
    sudo vgscan
    sudo lvcreate -l 50%FREE -n rhgs-NW2/sapmnt
    sudo lvcreate -l 20%FREE -n rhgs-NW2/trans
    sudo lvcreate -l 10%FREE -n rhgs-NW2/sys
    sudo lvcreate -l 50%FREE -n rhgs-NW2/ascs
    sudo lvcreate -l 100%FREE -n rhgs-NW2/aers
    
    sudo mkfs.xfs -f -K -i size=512 -n size=8192 /dev/rhgs-NW2/sapmnt
    sudo mkfs.xfs -f -K -i size=512 -n size=8192 /dev/rhgs-NW2/trans
    sudo mkfs.xfs -f -K -i size=512 -n size=8192 /dev/rhgs-NW2/sys
    sudo mkfs.xfs -f -K -i size=512 -n size=8192 /dev/rhgs-NW2/ascs
    sudo mkfs.xfs -f -K -i size=512 -n size=8192 /dev/rhgs-NW2/aers
    
    sudo mkdir -p /rhs/NW2/sapmnt
    sudo mkdir -p /rhs/NW2/trans
    sudo mkdir -p /rhs/NW2/sys
    sudo mkdir -p /rhs/NW2/ascs
    sudo mkdir -p /rhs/NW2/aers
    
    sudo chattr +i /rhs/NW2/sapmnt
    sudo chattr +i /rhs/NW2/trans
    sudo chattr +i /rhs/NW2/sys
    sudo chattr +i /rhs/NW2/ascs
    sudo chattr +i /rhs/NW2/aers
    sudo lvscan
    
    echo -e "/dev/rhgs-NW2/sapmnt\t/rhs/NW2/sapmnt\txfs\tdefaults,inode64,nobarrier,noatime,nouuid 0 2" | sudo tee -a /etc/fstab
    echo -e "/dev/rhgs-NW2/trans\t/rhs/NW2/trans\txfs\tdefaults,inode64,nobarrier,noatime,nouuid 0 2" | sudo tee -a /etc/fstab
    echo -e "/dev/rhgs-NW2/sys\t/rhs/NW2/sys\txfs\tdefaults,inode64,nobarrier,noatime,nouuid 0 2" | sudo tee -a /etc/fstab
    echo -e "/dev/rhgs-NW2/ascs\t/rhs/NW2/ascs\txfs\tdefaults,inode64,nobarrier,noatime,nouuid 0 2" | sudo tee -a /etc/fstab
    echo -e "/dev/rhgs-NW2/aers\t/rhs/NW2/aers\txfs\tdefaults,inode64,nobarrier,noatime,nouuid 0 2" | sudo tee -a /etc/fstab
    
    sudo mount -a
    
  11. [1] Verteilte Volumes erstellen

    Verwenden Sie die folgenden Befehle, um das GlusterFS-Volume für NW1 zu erstellen und zu starten.

    sudo gluster vol create NW1-sapmnt replica 3 glust-0:/rhs/NW1/sapmnt glust-1:/rhs/NW1/sapmnt glust-2:/rhs/NW1/sapmnt force
    sudo gluster vol create NW1-trans replica 3 glust-0:/rhs/NW1/trans glust-1:/rhs/NW1/trans glust-2:/rhs/NW1/trans force
    sudo gluster vol create NW1-sys replica 3 glust-0:/rhs/NW1/sys glust-1:/rhs/NW1/sys glust-2:/rhs/NW1/sys force
    sudo gluster vol create NW1-ascs replica 3 glust-0:/rhs/NW1/ascs glust-1:/rhs/NW1/ascs glust-2:/rhs/NW1/ascs force
    sudo gluster vol create NW1-aers replica 3 glust-0:/rhs/NW1/aers glust-1:/rhs/NW1/aers glust-2:/rhs/NW1/aers force
    
    sudo gluster volume start NW1-sapmnt
    sudo gluster volume start NW1-trans
    sudo gluster volume start NW1-sys
    sudo gluster volume start NW1-ascs
    sudo gluster volume start NW1-aers
    

    Verwenden Sie die folgenden Befehle, um das GlusterFS-Volume für NW2 zu erstellen und zu starten.

    sudo gluster vol create NW2-sapmnt replica 3 glust-0:/rhs/NW2/sapmnt glust-1:/rhs/NW2/sapmnt glust-2:/rhs/NW2/sapmnt force
    sudo gluster vol create NW2-trans replica 3 glust-0:/rhs/NW2/trans glust-1:/rhs/NW2/trans glust-2:/rhs/NW2/trans force
    sudo gluster vol create NW2-sys replica 3 glust-0:/rhs/NW2/sys glust-1:/rhs/NW2/sys glust-2:/rhs/NW2/sys force
    sudo gluster vol create NW2-ascs replica 3 glust-0:/rhs/NW2/ascs glust-1:/rhs/NW2/ascs glust-2:/rhs/NW2/ascs force
    sudo gluster vol create NW2-aers replica 3 glust-0:/rhs/NW2/aers glust-1:/rhs/NW2/aers glust-2:/rhs/NW2/aers force
    
    sudo gluster volume start NW2-sapmnt
    sudo gluster volume start NW2-trans
    sudo gluster volume start NW2-sys
    sudo gluster volume start NW2-ascs
    sudo gluster volume start NW2-aers
    

Nächste Schritte