Konfigurieren Sie LVM Thin mit ONTAP iSCSI für OpenNebula
Konfigurieren Sie den Logical Volume Manager (LVM)-Datenspeicher für die gemeinsame Nutzung von Speicher über OpenNebula-Hosts mithilfe des iSCSI-Protokolls mit NetApp ONTAP. Diese Konfiguration ermöglicht Blockzugriff auf Speicher über Standard-Ethernet-Netzwerke mit Multipath-Unterstützung.
Erste Aufgaben des Virtualisierungsadministrators
Führen Sie diese ersten Schritte durch, um OpenNebula-Hosts für die iSCSI-Konnektivität vorzubereiten und die notwendigen Informationen für den Speicheradministrator zu sammeln.
-
Prüfen Sie, ob zwei Linux-VLAN-Schnittstellen verfügbar sind.
-
Stellen Sie sicher, dass multipath-tools und iSCSI-Initiator-Dienstprogramme auf allen OpenNebula Hosts installiert sind und beim Systemstart automatisch gestartet werden.
Debian/Ubuntuapt list | grep multipath-tools # If need to install, execute the following line. apt-get install multipath-tools open-iscsi # If /etc/multipath.conf is not present, first make sure the multipathd service is started. systemctl enable --now multipathd systemctl enable --now open-iscsiRHEL/AlmaLinuxdnf list installed | grep device-mapper-multipath # If need to install, execute the following line. dnf install device-mapper-multipath iscsi-initiator-utils # If /etc/multipath.conf is not present, first make sure the multipathd service is started. systemctl enable --now multipathd systemctl enable --now iscsid -
Sammeln Sie die iSCSI-Host-IQN für alle OpenNebula Hosts und übermitteln Sie diese dem Speicheradministrator.
cat /etc/iscsi/initiator.name
Wenn Sie ONTAP noch nicht kennen, nutzen Sie den System Manager für eine bessere Benutzererfahrung.
-
Stellen Sie sicher, dass die SVM mit aktiviertem iSCSI-Protokoll verfügbar ist. Folgen "ONTAP 9 Dokumentation"Die
-
Erstellen Sie zwei LIFs pro Controller, die für iSCSI dediziert sind. Zwei LIFs pro Controller werden für Redundanz und Multipath-Performance empfohlen. Stellen Sie sicher, dass die LIFs auf den VLAN-Schnittstellen erstellt werden, die auf OpenNebula Hosts konfiguriert sind. Jumbo-Frames (MTU 9000) werden für bessere Performance empfohlen.

-
Erstellen Sie LUNs und stellen Sie sie den Host-iSCSI-Initiatoren bereit. Typischerweise wird eine Initiatorgruppe für einen OpenNebula Cluster erstellt. Schließen Sie Frontend-Server und Hypervisor-Hosts in dieselbe Initiatorgruppe ein, um sowohl Image- als auch System-Datenspeicher zu unterstützen.
-
Benachrichtigen Sie den Virtualisierungsadministrator, dass die LUN erstellt wurde.
Abschließende Aufgaben des Virtualisierungsadministrators
Führen Sie diese Aufgaben aus, um die iSCSI LUN als gemeinsam genutzten LVM-Datenspeicher in OpenNebula zu konfigurieren.
-
Stellen Sie eine SSH-Verbindung zu einem der Frontend-Server her und ermitteln Sie alle iSCSI Lif-Portale, indem Sie eine der iSCSI data lif-Adressen angeben.
iscsiadm -m discovery -t sendtargets -p <iscsi data lif address> iscsiadm -m node iscsiadm -m node -l iscsiadm -m session -
Führen Sie
rescan-scsi-bus.shoderecho "- - -" > /sys/class/scsi_host/host*/scanaus, um den SCSI-Bus erneut zu scannen und neue LUNs zu erkennen. -
Überprüfen Sie, ob die LUN auf allen OpenNebula-Hosts mit
lsblk -Soder dem Befehl fdisk -l sichtbar ist. -
Führen Sie
iscsiadm -m session -P 3aus, um die Zuordnung von LUN zu Gerätenamen abzurufen. -
Fügen Sie das Gerät zur Multipath-Konfiguration hinzu, indem Sie
multipath -a /dev/<device_name>ausführen. Führen Sie dannmultipath -raus, um die Multipath-Konfiguration neu zu laden. Überprüfen Sie die Multipath-Konfiguration, indem Sie den Befehlmultipath -llausführen. -
Erstellen Sie eine Konfigurationsdatei basierend auf dem gewünschten Datenspeichertyp. Eine vollständige Attributliste finden Sie unter "OpenNebula LVM-Dokumentation". Beispieldateien sind unten aufgeführt:
Backup-
Für Restic,
$cat iscsi-restic.conf NAME = "Backup-Restic-iSCSI01" TYPE = "BACKUP_DS" DS_MAD = "restic" TM_MAD = "-" RESTIC_PASSWORD = "<restic_password>" RESTIC_SFTP_SERVER = "<backup server>"
-
Für Rsync,
$cat iscsi-rsync.conf NAME = "Backup-Rsync-iSCSI02" TYPE = "BACKUP_DS" DS_MAD = "rsync" TM_MAD = "-" RSYNC_USER = "<rsync_user>" RSYNC_HOST = "<backup server>"
Datei$cat iscsi-kernel.conf NAME = "File-Kernel-iSCSI03" TYPE = "FILE_DS" DS_MAD = "fs" TM_MAD = "local" SAFE_DIRS = "/var/tmp/files"Bild$cat iscsi-image.conf NAME = "Image-iSCSI04" TYPE = "IMAGE_DS" DS_MAD = "fs" TM_MAD = "fs_lvm_ssh" DISK_TYPE = "block" LVM_THIN_ENABLE = "yes"System$cat iscsi-system.conf NAME = "System-iSCSI05" TYPE = "SYSTEM_DS" TM_MAD = "fs_lvm_ssh" DISK_TYPE = "block" BRIDGE_LIST = "<space-separated list of OpenNebula hosts>" # If LUN not presented to frontend hosts LVM_THIN_ENABLE = "yes" -
-
Führen Sie
onedatastore create <configuration file>aus. Notieren Sie sich die nach der Erstellung zurückgegebene Datenspeicher-ID.onedatastore create iscsi-system.conf ID: 106
-
Erstellen Sie eine Volume-Gruppe auf der iSCSI-LUN mit dem
vgcreate <vg_name> <multipath_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 Formatvg-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 beenden Sie hier. -
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. -
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. -
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 2Automount verwenden/var/lib/one/datastores/<datastore_id> -fstype=ext4,_netdev,noauto,x-systemd.automount,nofail,rw :/dev/<vg name>/<logical volume> -
Mounten Sie den Datenspeicher mit
mount -aodersystemctl reload autofs-Befehl. -
Ü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. -
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.