Skip to main content
NetApp virtualization solutions
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

Konfigurieren Sie LVM Thin mit ONTAP NVMe/TCP für OpenNebula

Beitragende sureshthoppay
Änderungen vorschlagen

Konfigurieren Sie den Logical Volume Manager (LVM)-Datenspeicher für die gemeinsame Nutzung von Speicher über OpenNebula-Hosts mithilfe des NVMe-over-TCP-Protokolls mit NetApp ONTAP. Diese Konfiguration bietet leistungsstarken Block-Level-Speicherzugriff über Standard-Ethernet-Netzwerke mit dem modernen NVMe-Protokoll.

Erste Aufgaben des Virtualisierungsadministrators

Führen Sie diese ersten Aufgaben durch, um OpenNebula-Hosts für die NVMe/TCP-Konnektivität vorzubereiten und die notwendigen Informationen für den Speicheradministrator zu sammeln.

  1. Prüfen Sie, ob zwei Linux-VLAN-Schnittstellen verfügbar sind.

  2. Führen Sie auf jedem OpenNebula Host den folgenden Befehl aus, um die Host-Initiator-Informationen zu erfassen.

    nvme show-hostnqn
  3. Stellen Sie dem Speicheradministrator die gesammelten Host-NQN-Informationen zusammen mit dem Hostnamen zur Verfügung und fordern Sie einen NVMe-Namespace der erforderlichen Größe an.

Aufgaben des Speicheradministrators

Wenn Sie ONTAP noch nicht kennen, nutzen Sie den System Manager für eine bessere Benutzererfahrung.

  1. Stellen Sie sicher, dass die SVM mit aktiviertem NVMe-Protokoll verfügbar ist. Siehe "NVMe-Aufgaben in der ONTAP 9-Dokumentation"Die

  2. Erstellen Sie den NVMe-Namespace.

  3. Erstellen Sie das Subsystem und weisen Sie es den Host-NQNs zu. Erstellen Sie ein Subsystem für alle OpenNebula Hosts in einem Cluster und auch für Frontend-Server. Frontend-Server sind bei der Subsystemzuordnung optional, aber für Image-Datenspeicher erforderlich.

  4. Stellen Sie sicher, dass der Anti-Ransomware-Schutz auf der Registerkarte „Sicherheit“ aktiviert ist.

  5. Benachrichtigen Sie den Virtualisierungsadministrator, dass der NVMe-Namespace erstellt wurde.

Abschließende Aufgaben des Virtualisierungsadministrators

Führen Sie diese Aufgaben aus, um den NVMe-Namespace als gemeinsam genutzten LVM-Datenspeicher in OpenNebula zu konfigurieren.

  1. Navigieren Sie zu einer Shell auf jedem OpenNebula-Host im Cluster und erstellen Sie die Datei /etc/nvme/discovery.conf. Aktualisieren Sie den Inhalt entsprechend Ihrer Umgebung.

    root@onehost01:~# cat /etc/nvme/discovery.conf
    # Used for extracting default parameters for discovery
    #
    # Example:
    # --transport=<trtype> --traddr=<traddr> --trsvcid=<trsvcid> --host-traddr=<host-traddr> --host-iface=<host-iface>
    
    -t tcp -l 1800 -a 172.21.118.153
    -t tcp -l 1800 -a 172.21.118.154
    -t tcp -l 1800 -a 172.21.119.153
    -t tcp -l 1800 -a 172.21.119.154
  2. Melden Sie sich beim NVMe-Subsystem an.

    nvme connect-all
  3. Um den NVMe-Namensraum über Neustarts hinweg beizubehalten, aktivieren Sie den nvmf-autoconnect service.

    systemctl enable nvmf-autoconnect
  4. Gerätedetails prüfen und erfassen.

    nvme list
    nvme netapp ontapdevices
    nvme list-subsys
    lsblk -N
  5. Stellen Sie eine SSH-Verbindung zu einem der Frontend-Server her und erstellen Sie eine Konfigurationsdatei basierend auf dem gewünschten Datenspeichertyp. Eine vollständige Attributliste finden Sie "OpenNebula LVM-Dokumentation". Beispieldateien sind unten aufgeführt:

    Backup
    1. Für Restic,

    $cat nvmetcp-restic.conf
    NAME = "Backup-Restic-NVMETCP"
    TYPE = "BACKUP_DS"
    
    DS_MAD = "restic"
    TM_MAD = "-"
    
    RESTIC_PASSWORD = "<restic_password>"
    RESTIC_SFTP_SERVER = "<backup server>"
    1. Für Rsync,

    $cat nvmetcp-rsync.conf
    NAME = "Backup-Rsync-NVMETCP"
    TYPE = "BACKUP_DS"
    
    DS_MAD = "rsync"
    TM_MAD = "-"
    
    RSYNC_USER = "<rsync_user>"
    RSYNC_HOST = "<backup server>"
    Datei
    $cat nvmetcp-kernel.conf
    NAME = "File-Kernel-NVMETCP"
    TYPE = "FILE_DS"
    DS_MAD = "fs"
    TM_MAD = "local"
    SAFE_DIRS = "/var/tmp/files"
    Bild
    $cat nvmetcp-image.conf
    NAME = "Image-NVMETCP01"
    TYPE = "IMAGE_DS"
    DS_MAD = "fs"
    TM_MAD = "fs_lvm_ssh"
    DISK_TYPE = "block"
    LVM_THIN_ENABLE = "yes"
    System
    $cat nvmetcp-system.conf
    NAME = "System-NVMETCP02"
    TYPE = "SYSTEM_DS"
    TM_MAD = "fs_lvm_ssh"
    DISK_TYPE = "block"
    BRIDGE_LIST = "<space-separated list of OpenNebula hosts>" # If NVMe namespace not presented to frontend hosts
    LVM_THIN_ENABLE = "yes"
  6. Führen Sie onedatastore create <configuration file> aus. Notieren Sie sich die nach der Erstellung zurückgegebene Datenspeicher-ID.

    onedatastore create nvmetcp-system.conf ID: 109

  7. Erstellen Sie eine Volume-Gruppe im NVMe-Namespace mit dem vgcreate <vg_name> <nvme_device> Befehl. Für Image-Datenspeicher kann der Name der Volume-Gruppe beliebig gewählt werden. Für System-Datenspeicher muss der Name der Volume-Gruppe das Format vg-one-<datastore id> haben. Dies ist erforderlich, damit OpenNebula die richtige Volume-Gruppe für System-Datenspeicher identifizieren kann. Fahren Sie mit den folgenden Schritten fort, wenn Sie einen Backup-/Datei-/Image-Datenspeicher erstellen. Für System-Datenspeicher stoppen Sie hier.

  8. Erstellen Sie einen logischen Volume-Thin-Pool mit dem lvcreate -l 100%FREE -n <logical volume name> <volume group name> Befehl. Für Systemdatenspeicher erstellt OpenNebula den LVM-Thin-Pool bei Bedarf automatisch.

  9. Erstellen Sie ein Dateisystem auf dem logischen Volume mit dem mkfs.ext4 /dev/<volume group>/<logical volume>-Befehl. Für Systemdatenspeicher ist keine Dateisystemerstellung erforderlich.

  10. Aktualisieren Sie /etc/fstab oder die Automount-Konfiguration, um den Datenspeicher mit den gewünschten Mount-Optionen einzubinden. Angenommen wird der Standardspeicherort /var/lib/one/datastores. Kann mit onedatastore show <datastore_id> validiert werden. Falls nicht, prüfen Sie den Parameter DATASTORE_LOCATION in /etc/one/oned.conf. Stellen Sie sicher, dass der <datastore_id> Ordner unter dem Datenspeicherort existiert. Beispielhafte Einträge sind unten aufgeführt:

    Verwendung von /etc/fstab
    /dev/<vg name>/<logical volume> /var/lib/one/datastores/<datastore_id> ext4 _netdev,noauto,x-systemd.automount,nofail 0 2
    Automount verwenden
    /var/lib/one/datastores/<datastore_id> -fstype=ext4,_netdev,noauto,x-systemd.automount,nofail,rw :/dev/<vg name>/<logical volume>
  11. Mounten Sie den Datenspeicher mit mount -a oder systemctl reload autofs-Befehl.

  12. Überprüfen Sie mit dem Befehl mount, ob der Datenspeicher eingebunden ist, und überprüfen Sie die Datenspeicherkapazität mit dem onedatastore show <datastore_id> Befehl.

  13. Stellen Sie sicher, dass der Benutzer und die Gruppe „oneadmin“ Eigentümer des Datenspeicherordners sind. Passen Sie die Berechtigungen mit dem chown -R oneadmin:oneadmin /var/lib/one/datastores/<datastore_id> Befehl an.