Skip to main content
NetApp virtualization solutions
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Configurer LVM Thin avec ONTAP iSCSI pour OpenNebula

Contributeurs sureshthoppay

Configurez un datastore Logical Volume Manager (LVM) pour le stockage partagé entre les hôtes OpenNebula en utilisant le protocole iSCSI avec NetApp ONTAP. Cette configuration permet un accès au stockage bloc sur les réseaux Ethernet standard avec prise en charge du multipath.

Tâches initiales de l'administrateur de virtualisation

Effectuez ces tâches initiales pour préparer les hôtes OpenNebula à la connectivité iSCSI et recueillir les informations nécessaires pour l’administrateur de stockage.

  1. Vérifiez que deux interfaces VLAN Linux sont disponibles.

  2. Assurez-vous que les utilitaires multipath-tools et iSCSI initiator sont installés sur tous les hôtes OpenNebula et démarrent au démarrage.

    Debian/Ubuntu
    apt 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-iscsi
    RHEL/AlmaLinux
    dnf 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
  3. Collectez l'IQN de l'hôte iSCSI pour tous les hôtes OpenNebula et fournissez-le à l'administrateur de stockage.

    cat /etc/iscsi/initiator.name

Si vous débutez avec ONTAP, utilisez System Manager pour une meilleure expérience.

  1. Assurez-vous que le SVM est disponible avec le protocole iSCSI activé. Suivre "Documentation ONTAP 9".

  2. Créez deux LIF par contrôleur dédiées à iSCSI. Deux LIF par contrôleur sont recommandées pour la redondance et les performances multipath. Assurez-vous que les LIF sont créées sur les interfaces VLAN configurées sur les hôtes OpenNebula. Les trames jumbo (MTU 9000) sont recommandées pour de meilleures performances.

    détails de l'interface iscsi

  3. Créez des LUN et présentez-les aux initiateurs iSCSI hôtes. En général, un igroup est créé pour un cluster OpenNebula. Incluez les serveurs frontaux et les hôtes hyperviseurs dans le même igroup afin de prendre en charge à la fois les banques de données Image et System.

  4. Informez l'administrateur de virtualisation que le LUN a été créé.

Tâches finales de l'administrateur de virtualisation

Effectuez ces tâches pour configurer le LUN iSCSI en tant que banque de données LVM partagée dans OpenNebula.

  1. Connectez-vous en SSH à l'un des serveurs frontaux et découvrez tous les portails iSCSI Lif en fournissant l'une des adresses iSCSI data lif.

    iscsiadm -m discovery -t sendtargets -p <iscsi data lif address>
    iscsiadm -m node
    iscsiadm -m node -l
    iscsiadm -m session
  2. Exécutez rescan-scsi-bus.sh ou echo "- - -" > /sys/class/scsi_host/host*/scan pour analyser à nouveau le bus SCSI et détecter les nouveaux LUN.

  3. Vérifiez que le LUN est visible sur tous les hôtes OpenNebula à l'aide de lsblk -S ou de la commande fdisk -l.

  4. Exécutez iscsiadm -m session -P 3 pour récupérer la correspondance entre le nom du LUN et le nom du périphérique.

  5. Ajoutez le périphérique à la configuration multipath en exécutant multipath -a /dev/<device_name>. Ensuite, exécutez multipath -r pour recharger la configuration multipath. Vérifiez la configuration multipath en exécutant la commande multipath -ll.

  6. Créez un fichier de configuration en fonction du type de Datastore souhaité. Pour obtenir la liste complète des attributs, consultez "OpenNebula documentation LVM". Des exemples de fichiers sont présentés ci-dessous :

    Sauvegarde
    1. Pour 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>"
    1. Pour 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>"
    Fichier
    $cat iscsi-kernel.conf
    NAME = "File-Kernel-iSCSI03"
    TYPE = "FILE_DS"
    DS_MAD = "fs"
    TM_MAD = "local"
    SAFE_DIRS = "/var/tmp/files"
    Image
    $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"
    Système
    $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"
  7. Exécutez onedatastore create <configuration file>. Notez l’identifiant du datastore renvoyé après la création.

    onedatastore create iscsi-system.conf ID : 106

  8. Créez un groupe de volumes sur le LUN iSCSI à l'aide de la commande vgcreate <vg_name> <multipath_device>. Pour les banques de données d'images, le nom du groupe de volumes peut être choisi librement. Pour les banques de données système, le nom du groupe de volumes doit être au format vg-one-<datastore id>. Ceci est nécessaire pour que OpenNebula identifie le groupe de volumes correct pour les banques de données système. Poursuivez les étapes suivantes si vous créez une banque de données de sauvegarde, de fichiers ou d'images. Pour les banques de données système, arrêtez-vous ici.

  9. Créez un pool de volumes logiques léger à l'aide de la commande lvcreate -l 100%FREE -n <logical volume name> <volume group name>. Pour les banques de données système, OpenNebula crée automatiquement le pool LVM léger lorsque cela est nécessaire.

  10. Créez un système de fichiers sur le volume logique à l'aide de la commande mkfs.ext4 /dev/<volume group>/<logical volume>. Les banques de données système ne nécessitent pas la création d'un système de fichiers.

  11. Mettez à jour /etc/fstab ou la configuration d'automount pour monter le datastore avec les options de montage souhaitées. En supposant que l'emplacement par défaut du datastore est /var/lib/one/datastores. Peut être validé avec onedatastore show <datastore_id>. Sinon, vérifiez le paramètre DATASTORE_LOCATION dans /etc/one/oned.conf. Assurez-vous que le dossier <datastore_id> existe sous l'emplacement des datastores. Des exemples d'entrées sont présentés ci-dessous :

    Utilisation de /etc/fstab
    /dev/<vg name>/<logical volume> /var/lib/one/datastores/<datastore_id> ext4 _netdev,noauto,x-systemd.automount,nofail 0 2
    Utilisation du montage automatique
    /var/lib/one/datastores/<datastore_id> -fstype=ext4,_netdev,noauto,x-systemd.automount,nofail,rw :/dev/<vg name>/<logical volume>
  12. Montez le datastore à l'aide de mount -a ou systemctl reload autofs commande.

  13. Vérifiez que la banque de données est montée avec la commande mount et vérifiez la capacité de la banque de données avec la commande onedatastore show <datastore_id>.

  14. Assurez-vous que l'utilisateur et le groupe oneadmin sont propriétaires du dossier du datastore. Ajustez les permissions à l'aide de la commande chown -R oneadmin:oneadmin /var/lib/one/datastores/<datastore_id>.