Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Provisionnement iSCSI pour Linux
FSx car ONTAP prend en charge le protocole iSCSI. Vous devez configurer le protocole iSCSI à la fois sur le client Linux et sur votre système de fichiers afin d'utiliser le protocole iSCSI pour transporter des données entre les clients et votre système de fichiers. Le protocole iSCSI est disponible sur tous les systèmes de fichiers dotés de 6 paires de haute disponibilité (HA) ou moins.
Le processus de configuration iSCSI sur votre Amazon FSx pour NetApp ONTAP comporte trois étapes principales, qui sont décrites dans les procédures suivantes :
Installez et configurez le client iSCSI sur l'hôte Linux.
Configurez l'iSCSI sur la SVM du système de fichiers.
Créez un groupe d'initiateurs iSCSI.
Mappez le groupe d'initiateurs au LUN.
Montez un LUN iSCSI sur le client Linux.
Avant de commencer
Avant de commencer le processus de configuration de votre système de fichiers pour iSCSI, vous devez avoir effectué les étapes suivantes.
Créez un système de fichiers FSx pour ONTAP. Pour de plus amples informations, veuillez consulter Création de systèmes de fichiers.
Créez un LUN iSCSI sur le système de fichiers. Pour de plus amples informations, veuillez consulter Création d'un LUN iSCSI.
Créez une EC2 instance exécutant l'Amazon Machine Image (AMI) Amazon Linux 2 dans le même VPC que le système de fichiers. Il s'agit de l'hôte Linux sur lequel vous allez configurer iSCSI et accéder aux données de vos fichiers.
Au-delà de ces procédures, si l'hôte est situé dans un autre VPC, vous pouvez utiliser le peering VPC ou accorder un autre VPCs accès aux points de AWS Transit Gateway terminaison iSCSI du volume. Pour de plus amples informations, veuillez consulter Accès aux données depuis l'extérieur du VPC de déploiement.
Configurez les groupes de sécurité VPC de l'hôte Linux pour autoriser le trafic entrant et sortant, comme décrit dans. Contrôle d'accès au système de fichiers avec Amazon VPC
Obtenez les informations d'identification pour ONTAP utilisateur doté de
fsxadminprivilèges que vous utiliserez pour accéder au ONTAP CLI. Pour de plus amples informations, veuillez consulter ONTAPrôles et utilisateurs.L'hôte Linux que vous allez configurer pour iSCSI et que vous utiliserez FSx pour accéder au système de fichiers ONTAP se trouve dans le même VPC et. Compte AWS
Nous recommandons que l' EC2 instance se trouve dans la même zone de disponibilité que le sous-réseau préféré de votre système de fichiers, comme illustré dans le graphique suivant.
Si votre EC2 instance exécute une AMI Linux différente de celle d'Amazon Linux 2, certains des utilitaires utilisés dans ces procédures et exemples sont peut-être déjà installés, et vous pouvez utiliser des commandes différentes pour installer les packages requis. Hormis l'installation des packages, les commandes utilisées dans cette section sont valides pour les autres EC2 systèmes Linux AMIs.
Rubriques
Installation et configuration de l'iSCSI sur l'hôte Linux
Pour installer le client iSCSI
-
Confirmez-le
iscsi-initiator-utilsetdevice-mapper-multipathils sont installés sur votre appareil Linux. Connectez-vous à votre instance Linux à l'aide d'un client SSH. Pour plus d'informations, consultez Se connecter à votre instance Linux à l'aide de SSH. Installez
multipathet le client iSCSI à l'aide de la commande suivante. L'installationmultipathest nécessaire si vous souhaitez basculer automatiquement entre vos serveurs de fichiers.~$sudo yum install -y device-mapper-multipath iscsi-initiator-utils-
Pour accélérer la réponse en cas de basculement automatique entre les serveurs de fichiers lors de l'utilisation
multipath, définissez la valeur du délai d'expiration de remplacement dans le/etc/iscsi/iscsid.conffichier sur une valeur égale à5au lieu d'utiliser la valeur par défaut de120.~$sudo sed -i 's/node.session.timeo.replacement_timeout = .*/node.session.timeo.replacement_timeout = 5/' /etc/iscsi/iscsid.conf; sudo cat /etc/iscsi/iscsid.conf | grep node.session.timeo.replacement_timeout Démarrez le service iSCSI.
~$sudo service iscsid startNotez qu'en fonction de votre version de Linux, vous devrez peut-être utiliser cette commande à la place :
~$sudo systemctl start iscsid-
Vérifiez que le service est en cours d'exécution à l'aide de la commande suivante.
~$sudo systemctl status iscsid.serviceLe système répond avec le résultat suivant :
iscsid.service - Open-iSCSI Loaded: loaded (/usr/lib/systemd/system/iscsid.service; disabled; vendor preset: disabled) Active: active (running) since Fri 2021-09-02 00:00:00 UTC; 1min ago Docs: man:iscsid(8) man:iscsiadm(8) Process: 14658 ExecStart=/usr/sbin/iscsid (code=exited, status=0/SUCCESS) Main PID: 14660 (iscsid) CGroup: /system.slice/iscsid.service ├─14659 /usr/sbin/iscsid └─14660 /usr/sbin/iscsid
Pour configurer iSCSI sur votre client Linux
-
Pour permettre à vos clients de basculer automatiquement entre vos serveurs de fichiers, vous devez configurer le multipath. Utilisez la commande suivante :
~$sudo mpathconf --enable --with_multipathd y -
Déterminez le nom de l'initiateur de votre hôte Linux à l'aide de la commande suivante. L'emplacement du nom de l'initiateur dépend de votre utilitaire iSCSI. Si vous utilisez
iscsi-initiator-utils, le nom de l'initiateur se trouve dans le fichier/etc/iscsi/initiatorname.iscsi.~$sudo cat /etc/iscsi/initiatorname.iscsiLe système répond avec le nom de l'initiateur.
InitiatorName=iqn.1994-05.com.redhat:abcdef12345
Configuration de l'iSCSI sur le système de fichiers FSx for ONTAP
-
Connectez-vous à la CLI NetApp ONTAP sur le système FSx de fichiers ONTAP sur lequel vous avez créé le LUN iSCSI à l'aide de la commande suivante. Pour de plus amples informations, veuillez consulter Utilisation de l’NetApp ONTAP CLI.
~$ssh fsxadmin@your_management_endpoint_ip -
Créez le groupe d'initiateurs (
igroup) à l'aide de la NetApp commande ONTAP lun igroup createCLI. Un groupe d'initiateurs est mappé à LUNs iSCSI et contrôle les initiateurs (clients) auxquels ils ont accès. LUNs host_initiator_nameRemplacez-le par le nom de l'initiateur de votre hôte Linux que vous avez récupéré lors de la procédure précédente.::>lun igroup create -vserver-igroupsvm_nameigroup_name-initiatorhost_initiator_name-protocol iscsi -ostype linuxSi vous souhaitez que le LUNs mappé à cet igroup soit accessible à plusieurs hôtes, vous pouvez spécifier plusieurs noms d'initiateurs séparés par une virgule. Pour plus d'informations, consultez lun igroup create
dans le centre de documentation NetApp ONTAP. -
Vérifiez qu'il
igroupexiste à l'aide de la lun igroup showcommande : ::>lun igroup showLe système répond avec le résultat suivant :
Vserver Igroup Protocol OS Type Initiators --------- ------------ -------- -------- ------------------------------------svm_nameigroup_nameiscsi linux iqn.1994-05.com.redhat:abcdef12345 -
Cette étape suppose que vous avez déjà créé un LUN iSCSI. Si ce n'est pas le cas, consultez step-by-step les instructions Création d'un LUN iSCSI pour le faire.
Créez un mappage entre le LUN que vous avez créé et l'igroup que vous avez créé, en utilisant le lun mapping create
, en spécifiant les attributs suivants : -
— Nom de la machine virtuelle de stockage fournissant la cible iSCSI. L'hôte utilise cette valeur pour atteindre le LUN.svm_name -
— Nom du volume hébergeant le LUN.vol_name -
— Le nom que vous avez attribué au LUN.lun_name -
— Nom du groupe d'initiateurs.igroup_name -
— L'entier de l'ID de LUN est spécifique au mappage, et non au LUN lui-même. Ceci est utilisé par les initiateurs de l'igroup car le numéro d'unité logique utilise cette valeur pour l'initiateur lors de l'accès au stockage.lun_id
::>lun mapping create -vserversvm_name-path /vol/vol_name/lun_name-igroupigroup_name-lun-idlun_id -
-
Utilisez la
lun show -pathcommande pour confirmer que le LUN est créé, en ligne et mappé. ::>lun show -path /vol/vol_name/lun_name-fields state,mapped,serial-hexLe système répond avec le résultat suivant :
Vserver Path serial-hex state mapped --------- ------------------------------- ------------------------ -------- --------svm_name/vol/vol_name/lun_name6c5742314e5d52766e796150 online mappedEnregistrez la
serial_hexvaleur (dans cet exemple, elle l'est6c5742314e5d52766e796150), vous l'utiliserez ultérieurement pour créer un nom convivial pour le périphérique de blocage. -
Utilisez la
network interface show -vservercommande pour récupérer les adresses des iscsi_2interfacesiscsi_1et de la SVM dans laquelle vous avez créé votre LUN iSCSI.::>network interface show -vserversvm_nameLe système répond avec le résultat suivant :
Logical Status Network Current Current Is Vserver Interface Admin/Oper Address/Mask Node Port Home ----------- ---------- ---------- ------------------ ------------- ------- ----svm_nameiscsi_1 up/up 172.31.0.143/20 FSxId0123456789abcdef8-01 e0e true iscsi_2 up/up 172.31.21.81/20 FSxId0123456789abcdef8-02 e0e true nfs_smb_management_1 up/up 198.19.250.177/20 FSxId0123456789abcdef8-01 e0e true 3 entries were displayed.Dans cet exemple, l'adresse IP de
iscsi_1is172.31.0.143etiscsi_2is172.31.21.81.
Montez un LUN iSCSI sur votre client Linux
Le processus de montage du LUN iSCSI sur votre client Linux comporte trois étapes :
Découverte des nœuds iSCSI cibles
Partitionnement du LUN iSCSI
Montage du LUN iSCSI sur le client
Ces questions sont abordées dans les procédures suivantes.
Pour découvrir les nœuds iSCSI cibles
Sur votre client Linux, utilisez la commande suivante pour découvrir les nœuds iSCSI cibles à l'aide
iscsi_1de l'adresse IP.iscsi_1_IP~$sudo iscsiadm --mode discovery --op update --type sendtargets --portaliscsi_1_IP172.31.0.143:3260,1029 iqn.1992-08.com.netapp:sn.9cfa2c41207a11ecac390182c38bc256:vs.3 172.31.21.81:3260,1028 iqn.1992-08.com.netapp:sn.9cfa2c41207a11ecac390182c38bc256:vs.3Dans cet exemple,
iqn.1992-08.com.netapp:sn.9cfa2c41207a11ecac390182c38bc256:vs.3correspond autarget_initiatorLUN iSCSI dans la zone de disponibilité préférée.(Facultatif) Pour obtenir un débit supérieur au maximum de 5 Gbit/s (~625 MBps) fixé à un client EC2 unique Amazon pour votre LUN iSCSI, suivez les procédures décrites dans la section Bande passante du EC2 réseau d'instances Amazon dans le guide de l'utilisateur Amazon Elastic Compute Cloud pour les instances Linux afin d'établir des sessions supplémentaires afin d'augmenter le débit.
La commande suivante établit 8 sessions par initiateur et par nœud ONTAP dans chaque zone de disponibilité, permettant au client de générer jusqu'à 40 Gbit/s (5 000 MBps) de débit agrégé vers le LUN iSCSI.
~$sudo iscsiadm --mode node -Ttarget_initiator--op update -n node.session.nr_sessions -v 8Connectez-vous aux initiateurs cibles. Vos iSCSI LUNs sont présentés sous forme de disques disponibles.
~$sudo iscsiadm --mode node -Ttarget_initiator--loginLogging in to [iface: default, target: iqn.1992-08.com.netapp:sn.9cfa2c41207a11ecac390182c38bc256:vs.3, portal: 172.31.14.66,3260] (multiple) Login to [iface: default, target: iqn.1992-08.com.netapp:sn.9cfa2c41207a11ecac390182c38bc256:vs.3, portal: 172.31.14.66,3260] successful.Le résultat ci-dessus est tronqué ; vous devriez voir une
Logging inet uneLogin successfulréponse pour chaque session sur chaque serveur de fichiers. Dans le cas de 4 sessions par nœud, il y aura 8Logging inet 8Login successfulréponses.Utilisez la commande suivante pour vérifier que les sessions iSCSI ont
dm-multipathété identifiées et fusionnées en affichant un seul LUN avec plusieurs politiques. Il doit y avoir un nombre égal d'appareils répertoriés commeactiveet ceux répertoriés commeenabled.~$sudo multipath -llDans la sortie, le nom du disque est formaté sous la forme
dm-xyz, oùxyzest un entier. S'il n'existe aucun autre disque à chemins multiples, cette valeur estdm-0.3600a09806c5742314e5d52766e79614fdm-xyzNETAPP ,LUN C-Mode size=10G features='4 queue_if_no_path pg_init_retries 50 retain_attached_hw_handle' hwhandler='0' wp=rw |-+- policy='service-time 0' prio=50 status=active | |- 0:0:0:1 sda 8:0 active ready running | |- 1:0:0:1 sdc 8:32 active ready running | |- 3:0:0:1 sdg 8:96 active ready running | `- 4:0:0:1 sdh 8:112 active ready running `-+- policy='service-time 0' prio=10 status=enabled |- 2:0:0:1 sdb 8:16 active ready running |- 7:0:0:1 sdf 8:80 active ready running |- 6:0:0:1 sde 8:64 active ready running `- 5:0:0:1 sdd 8:48 active ready runningVotre périphérique de blocage est désormais connecté à votre client Linux. Il est situé sous le chemin
/dev/. Vous ne devez pas utiliser ce chemin à des fins administratives ; utilisez plutôt le lien symbolique situé sous le chemindm-xyz/dev/mapper/, où sewwidtrouve un identifiant unique pour votre LUN qui est cohérent sur tous les appareils. À l'étape suivante, vous allez donner un nom convivial auwwidafin de le distinguer des autres disques à chemins multiples.wwid
Pour attribuer un nom convivial au périphérique de blocage
Pour attribuer un nom convivial à votre appareil, créez un alias dans le
/etc/multipath.conffichier. Pour ce faire, ajoutez l'entrée suivante au fichier à l'aide de votre éditeur de texte préféré, en remplaçant les espaces réservés suivants :Remplacez
serial_hexpar la valeur que vous avez enregistrée dans la Configuration de l'iSCSI sur le système de fichiers FSx for ONTAP procédure.Ajoutez le préfixe
3600a0980à laserial_hexvaleur comme indiqué dans l'exemple. Il s'agit d'un préambule unique pour la distribution NetApp ONTAP utilisée par Amazon FSx pour NetApp ONTAP.device_nameRemplacez-le par le nom convivial que vous souhaitez utiliser pour votre appareil.
multipaths { multipath { wwid 3600a0980serial_hexaliasdevice_name} }Vous pouvez également copier et enregistrer le script suivant dans un fichier bash, tel que
multipath_alias.sh. Vous pouvez exécuter le script avec les privilèges sudo, en le remplaçant(sans le préfixe 3600a0980) par votre numéro de série respectif etserial_hexle nom convivial souhaité. Ce script recherche unedevice_namemultipathssection non commentée du/etc/multipath.conffichier. S'il en existe une, elle ajoute unemultipathentrée à cette section ; sinon, elle créera une nouvellemultipathssection avec unemultipathentrée pour votre appareil bloqué.#!/bin/bash SN=serial_hex ALIAS=device_name CONF=/etc/multipath.conf grep -q '^multipaths {' $CONF UNCOMMENTED=$? if [ $UNCOMMENTED -eq 0 ] then sed -i '/^multipaths {/a\\tmultipath {\n\t\twwid 3600a0980'"${SN}"'\n\t\talias '"${ALIAS}"'\n\t}\n' $CONF else printf "multipaths {\n\tmultipath {\n\t\twwid 3600a0980$SN\n\t\talias $ALIAS\n\t}\n}" >> $CONF fiRedémarrez le
multipathdservice pour que les modifications/etc/multipathd.confprennent effet.~$systemctl restart multipathd.service
Pour partitionner le LUN
L'étape suivante consiste à formater et partitionner votre LUN à l'aide fdisk de.
-
Utilisez la commande suivante pour vérifier que le chemin d'accès à votre
device_name~$ls /dev/mapper/device_name/dev/device_name Partitionnez le disque en utilisant
fdisk. Vous allez entrer une invite interactive. Entrez les options dans l'ordre indiqué. Vous pouvez créer plusieurs partitions en utilisant une valeur inférieure au dernier secteur (20971519dans cet exemple).Note
La
Last sectorvaleur varie en fonction de la taille de votre LUN iSCSI (10 Go dans cet exemple).~$sudo fdisk /dev/mapper/device_nameL'invite
fsdiskinteractive démarre.Welcome to fdisk (util-linux 2.30.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table. Created a new DOS disklabel with disk identifier 0x66595cb0. Command (m for help):nPartition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p):pPartition number (1-4, default 1):1First sector (2048-20971519, default 2048):2048Last sector, +sectors or +size{K,M,G,T,P} (2048-20971519, default 20971519):20971519Created a new partition 1 of type 'Linux' and of size 512 B. Command (m for help):wThe partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.Une fois que vous
wêtes entrée, votre nouvelle/dev/mapper/partition est disponible.partition_namepartition_nameIl a le format<device_name><partition_number>.1a été utilisé comme numéro de partition utilisé dans lafdiskcommande de l'étape précédente.-
Créez votre système de fichiers en utilisant
/dev/mapper/comme chemin.partition_name~$sudo mkfs.ext4 /dev/mapper/partition_nameLe système répond avec le résultat suivant :
mke2fs 1.42.9 (28-Dec-2013) Discarding device blocks: done Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=16 blocks 655360 inodes, 2621184 blocks 131059 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=2151677952 80 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done
Pour monter le LUN sur le client Linux
-
Créez un répertoire
directory_pathcomme point de montage pour votre système de fichiers.~$sudo mkdir /directory_path/mount_point -
Montez le système de fichiers à l'aide de la commande suivante.
~$sudo mount -t ext4 /dev/mapper/partition_name/directory_path/mount_point -
(Facultatif) Si vous souhaitez attribuer à un utilisateur spécifique la propriété du répertoire de montage, remplacez-le
par le nom d'utilisateur du propriétaire.username~$sudo chownusername:username/directory_path/mount_point -
(Facultatif) Vérifiez que vous pouvez lire et écrire des données dans le système de fichiers.
~$echo "Hello world!" > /directory_path/mount_point/HelloWorld.txt~$catdirectory_path/HelloWorld.txtHello world!Vous avez créé et monté avec succès un LUN iSCSI sur votre client Linux.