Configuration d'hôte NVMe/FC pour Oracle Linux 7.7 avec ONTAP
Vous pouvez configurer NVMe over Fibre Channel (NVMe/FC) sur des hôtes initiateurs exécutant Oracle Linux 7.7 et ONTAP comme cible.
Prise en charge
Depuis la version ONTAP 9.6, NVMe/FC est pris en charge pour Oracle Linux 7.7. L'hôte Oracle Linux 7.7 peut exécuter le trafic NVMe et SCSI via les mêmes ports d'adaptateur d'initiateur Fibre Channel. Consultez la "Hardware Universe" pour obtenir la liste des adaptateurs et contrôleurs FC pris en charge. Pour obtenir la liste actuelle des configurations prises en charge, reportez-vous au "Matrice d'interopérabilité".
|
|
Vous pouvez utiliser les paramètres de configuration fournis dans cette procédure pour configurer les clients cloud connectés à "Cloud Volumes ONTAP" et "Amazon FSX pour ONTAP". |
Limites connues
-
Les scripts natifs de connexion automatique NVMe/FC ne sont pas disponibles dans le pack nvme-cli. Vous pouvez utiliser les scripts de connexion automatique externes fournis par le fournisseur de l'adaptateur HBA.
-
Par défaut, l'équilibrage de la charge Round-Robin n'est pas activé. Vous devez écrire une règle udev pour activer cette fonctionnalité. Des étapes sont décrites dans la section relative à l'activation de NVMe/FC sur OL 7.7.
-
Le démarrage SAN à l'aide du protocole NVMe-of n'est pas pris en charge pour le moment.
Activation de NVMe sur OL 7.7
-
Assurez-vous que le noyau Oracle Linux 7.7 par défaut est installé.
-
Redémarrez l'hôte et vérifiez qu'il démarre dans le noyau OL 7.7 spécifié.
# uname -r 4.14.35-1902.9.2.el7uek
-
Mise à niveau vers le package nvme-cli-1.8.1-3.el7.
# rpm -qa|grep nvme-cli nvme-cli-1.8.1-3.el7.x86_64
-
Ajoutez la chaîne ci-dessous en tant que règle udev séparée à
/lib/udev/rules.d/71-nvme-iopolicy-netapp-ONTAP.rules. Cela permet d'équilibrer la charge Round-Robin pour les chemins d'accès multiples NVMe.# Enable round-robin for NetApp ONTAP ACTION==”add”, SUBSYSTEM==”nvme-subsystem”, ATTR{model}==”NetApp ONTAP Controller”, ATTR{iopolicy}=”round-robin -
Sur l'hôte OL 7.7, vérifiez la chaîne NQN hôte à
/etc/nvme/hostnqnEt vérifiez qu'il correspond à la chaîne NQN hôte pour le sous-système correspondant de la matrice ONTAP.# cat /etc/nvme/hostnqn nqn.2014-08.org.nvmexpress:uuid:75953f3b-77fe-4e03-bf3c-09d5a156fbcd
*> vserver nvme subsystem host show -vserver vs_nvme_10 Vserver Subsystem Host NQN ------- --------- -------------------------------------- ----------- ol_157_nvme_ss_10_0 nqn.2014-08.org.nvmexpress:uuid:75953f3b-77fe-4e03-bf3c-09d5a156fbcd
|
|
Si les chaînes NQN hôte ne correspondent pas, vous devez utiliser la commande vserver modify pour mettre à jour la chaîne NQN hôte sur le sous-système de la baie ONTAP correspondant afin qu'elle corresponde à la chaîne NQN hôte à partir de /etc/nvme/hostnqn sur l'hôte.
|
-
Redémarrez l'hôte.
Configuration de l'adaptateur FC Broadcom pour NVMe/FC
-
Vérifiez que vous utilisez un adaptateur pris en charge. Pour obtenir la liste actuelle des cartes prises en charge, reportez-vous au "Matrice d'interopérabilité".
# cat /sys/class/scsi_host/host*/modelname LPe32002-M2 LPe32002-M2
# cat /sys/class/scsi_host/host*/modeldesc Emulex LightPulse LPe32002-M2 2-Port 32Gb Fibre Channel Adapter Emulex LightPulse LPe32002-M2 2-Port 32Gb Fibre Channel Adapter
-
Copiez et installez le package de scripts de connexion automatique de la boîte d'envoi Broadcom.
# rpm -ivh nvmefc-connect-12.4.65.0-1.noarch.rpm
-
Redémarrez l'hôte.
-
Vérifiez que vous utilisez le micrologiciel Broadcom lpfc recommandé, le pilote natif de la boîte de réception et les versions du package de connexion automatique de la boîte de réception. Pour obtenir la liste des versions prises en charge, reportez-vous au "Matrice d'interopérabilité".
# cat /sys/class/scsi_host/host*/fwrev 12.4.243.17, sil-4.2.c 12.4.243.17, sil-4.2.c # cat /sys/module/lpfc/version 0:12.0.0.10 # rpm -qa | grep nvmefc nvmefc-connect-12.4.65.0-1.noarch
-
Vérifiez que lpfc_enable_fc4_type est défini sur 3.
# cat /sys/module/lpfc/parameters/lpfc_enable_fc4_type 3
-
Vérifiez que les ports initiateurs sont opérationnels.
# cat /sys/class/fc_host/host*/port_name 0x10000090fae0ec61 0x10000090fae0ec62
# cat /sys/class/fc_host/host*/port_state Online Online
-
Vérifiez que les ports initiateurs NVMe/FC sont activés, s'exécutant et qu'ils peuvent voir les LIF cibles.
# cat /sys/class/scsi_host/host*/nvme_info NVME Initiator Enabled XRI Dist lpfc0 Total 6144 NVME 2947 SCSI 2977 ELS 250 NVME LPORT lpfc0 WWPN x10000090fae0ec61 WWNN x20000090fae0ec61 DID x012000 ONLINE NVME RPORT WWPN x202d00a098c80f09 WWNN x202c00a098c80f09 DID x010201 TARGET DISCSRVC ONLINE NVME RPORT WWPN x203100a098c80f09 WWNN x202c00a098c80f09 DID x010601 TARGET DISCSRVC ONLINE NVME Statistics …
Validation des protocoles NVMe/FC
-
Vérifiez les paramètres NVMe/FC suivants.
# cat /sys/module/nvme_core/parameters/multipath Y # cat /sys/class/nvme-subsystem/nvme-subsys*/model NetApp ONTAP Controller NetApp ONTAP Controller # cat /sys/class/nvme-subsystem/nvme-subsys*/iopolicy round-robin round-robin
-
Vérifier que les espaces de noms sont créés.
# nvme list Node SN Model Namespace Usage Format FW Rev ---------------- -------------------- ----------------------- /dev/nvme0n1 80BADBKnB/JvAAAAAAAC NetApp ONTAP Controller 1 53.69 GB / 53.69 GB 4 KiB + 0 B FFFFFFFF
-
Vérifiez le statut des chemins ANA.
# nvme list-subsys/dev/nvme0n1 Nvme-subsysf0 – NQN=nqn.1992-08.com.netapp:sn.341541339b9511e8a9b500a098c80f09:subsystem.ol_157_nvme_ss_10_0 \ +- nvme0 fc traddr=nn-0x202c00a098c80f09:pn-0x202d00a098c80f09 host_traddr=nn-0x20000090fae0ec61:pn-0x10000090fae0ec61 live optimized +- nvme1 fc traddr=nn-0x207300a098dfdd91:pn-0x207600a098dfdd91 host_traddr=nn-0x200000109b1c1204:pn-0x100000109b1c1204 live inaccessible +- nvme2 fc traddr=nn-0x207300a098dfdd91:pn-0x207500a098dfdd91 host_traddr=nn-0x200000109b1c1205:pn-0x100000109b1c1205 live optimized +- nvme3 fc traddr=nn-0x207300a098dfdd91:pn-0x207700a098dfdd91 host traddr=nn-0x200000109b1c1205:pn-0x100000109b1c1205 live inaccessible
-
Vérifier le plug-in NetApp pour les systèmes ONTAP.
# nvme netapp ontapdevices -o column Device Vserver Namespace Path NSID UUID Size ------- -------- ------------------------- ------ ----- ----- /dev/nvme0n1 vs_nvme_10 /vol/rhel_141_vol_10_0/ol_157_ns_10_0 1 55baf453-f629-4a18-9364-b6aee3f50dad 53.69GB # nvme netapp ontapdevices -o json { "ONTAPdevices" : [ { Device" : "/dev/nvme0n1", "Vserver" : "vs_nvme_10", "Namespace_Path" : "/vol/rhel_141_vol_10_0/ol_157_ns_10_0", "NSID" : 1, "UUID" : "55baf453-f629-4a18-9364-b6aee3f50dad", "Size" : "53.69GB", "LBA_Data_Size" : 4096, "Namespace_Size" : 13107200 } ]
Activation d'une taille d'E/S de 1 Mo pour Broadcom NVMe/FC
ONTAP signale une taille de transfert de données maximale (MDTS) de 8 dans les données du contrôleur d'identification. Cela signifie que la taille maximale de la demande d'E/S peut atteindre 1 Mo. Pour émettre des requêtes d'E/S d'une taille de 1 Mo pour un hôte Broadcom NVMe/FC, vous devez augmenter la lpfc valeur de la lpfc_sg_seg_cnt paramètre à 256 à partir de la valeur par défaut de 64.
|
|
Ces étapes ne s'appliquent pas aux hôtes NVMe/FC Qlogic. |
-
Réglez le
lpfc_sg_seg_cntparamètre sur 256 :cat /etc/modprobe.d/lpfc.confVous devriez voir une sortie similaire à l’exemple suivant :
options lpfc lpfc_sg_seg_cnt=256
-
Exécutez
dracut -fla commande et redémarrez l'hôte. -
Vérifier que la valeur de
lpfc_sg_seg_cntest 256 :cat /sys/module/lpfc/parameters/lpfc_sg_seg_cnt
Consignation détaillée LPFC
Définissez le pilote lpfc pour NVMe/FC.
-
Réglez le
lpfc_log_verboseParamètre du pilote sur l'une des valeurs suivantes pour enregistrer les événements NVMe/FC.#define LOG_NVME 0x00100000 /* NVME general events. */ #define LOG_NVME_DISC 0x00200000 /* NVME Discovery/Connect events. */ #define LOG_NVME_ABTS 0x00400000 /* NVME ABTS events. */ #define LOG_NVME_IOERR 0x00800000 /* NVME IO Error events. */
-
Une fois les valeurs définies, exécutez le
dracut-fcommande et redémarre l'hôte. -
Vérifiez les paramètres.
# cat /etc/modprobe.d/lpfc.conf options lpfc lpfc_log_verbose=0xf00083 # cat /sys/module/lpfc/parameters/lpfc_log_verbose 15728771