Cet article vous a-t-il été utile ?
Comment pourrions-nous l'améliorer ?
Vous pouvez utiliser lmacli pour configurer un chemin d'accès aux données iSCSI entre un hôte Linux et un Lyve Mobile Rackmount Receiver connecté au même réseau de données.
Les étapes suivantes sont obligatoires :
Pour installer Open-iSCSI et les outils Multipath :
sudo yum install lsscsi device-mapper-multipath iscsi-initiator-utils
Pour installer Open-iSCSI et les outils Multipath :
sudo apt install lsscsi multipath-tools open-iscsi
Le chemin d’accès aux données iSCSI entre l’hôte Linux et le Lyve Mobile Rackmount Receiver est constitué de 1 à 4 interfaces réseau. Sur l’hôte Linux, les interfaces réseau utilisées pour transporter le trafic iSCSI doivent être configurées avec des adresses IP statiques.
Vous pouvez identifier visuellement une interface réseau en faisant clignoter la LED correspondante.
Pour identifier un port réseau :
sudo ethtool --identify nom de l’interface
où : nom de l’interface est une interface réseau sur l’hôte Linux, par exemple :
sudo ethtool --identify eno1
Netplan est le moteur de rendu d'abstraction de la configuration réseau utilisé par Ubuntu Server.
L'exemple de fichier de configuration Netplan ci-dessous définit des adresses IP statiques sur 4 ports réseau et active des trames géantes de 9 000 octets.
Exemple de fichier de configuration |
---|
network: version: 2 ethernets: ens3f0np0: adresses: [192.168.0.1/24] mtu: 9000 ens3f1np1: adresses: [192.168.1.1/24] mtu: 9000 ens1f0np0: adresses: [192.168.2.1/24] mtu: 9000 ens1f1np1: adresses: [192.168.3.1/24] mtu: 9000 |
NetworkManager est le démon de gestion des réseaux utilisé par Red Hat Enterprise Linux ou Ubuntu Desktop.
nmcli est une interface de ligne de commande utilisée pour le démon NetworkManager. L'exemple d'utilisation de nmcli suivant permet de créer une connexion réseau avec une adresse IP et des trames géantes.
nmcli device
Exemple de résultat |
---|
DEVICE TYPE STATE CONNECTION eno1 ethernet connected eno1 enp108s0f0 ethernet disconnected -- enp108s0f1 ethernet disconnected -- |
nmcli connection add type ethernet ifname nom de l’interface ipv4.method manual ipv4.addr "adresse IP" 802-3-ethernet.mtu 9000
où : nom de l’interface est un port iSCSI du Rackmount Receiver et adresse IP est l’adresse IP d’un port du RackmountReceiver, par exemple :
nmcli connection add type ethernet ifname enp108s0f0 ipv4.method manual ipv4.addr "192.168.0.1/24" 802-3-ethernet.mtu 9000
Exemple de résultat |
---|
Connection 'ethernet-enp108s0f0' (93b21958-1e3e-49e8-9c38-0a63f0e6c77c) successfully added. |
nmcli device show
Exemple de résultat | |
---|---|
GENERAL.DEVICE: | enp108s0f0 |
GENERAL.TYPE: | ethernet |
GENERAL.HWADDR: | F4:E9:D4:73:AE:14 |
GENERAL.MTU: | 9000 |
GENERAL.STATE: | 100 (connected) |
GENERAL.CONNECTION: | ethernet-enp108s0f0 |
GENERAL.CON-PATH: | /org/freedesktop/NetworkManager/ActiveConnection/17 |
WIRED-PROPTERTIES.CARRIER: | on |
IP4.ADDRESS[1]: | 192.168.0.1/24 |
IP4.GATEWAY: | -- |
IP4.ROUTE[1]: | dst = 192.168.0.0/24, nh = 0.0.0.0, mt = 103 |
IP6.ADDRESS[1]: | fe80::2b25:ace7:3d38:979a/64 |
IP6.GATEWAY: | -- |
IP6.ROUTE[1]: | dst = fe80::/64, nh = ::, mt = 103 |
IP6.ROUTE[2]: | dst = ff00::/8, nh = ::, mt = 256, table=255 |
Le type de connexion affiché pour votre Lyve Mobile Array est iSCSI.
Pour afficher les informations sur le périphérique :
lmacli info adresse IP
où : adresse IP est l’adresse IP d’un port du Rackmount Receiver, par exemple :
lmacli info 192.168.0.100
Exemple de résultat | |
---|---|
=== Identification === | |
Product | : STJX46000400 |
Serial number | : NB261234 |
Connection type | : iSCSI |
Name | : |
=== Disk encryption === | |
Status | : Secured, unlocked |
=== Pools === | |
Name | : dg |
Total size | : 46.0TB |
Available size | : 0B |
Number of volumes | : 1 |
=== Volumes === | |
Name | : volume-0 |
Pool name | : dg |
Size | : 46.0TB |
RAID level | : RAID0 |
Status | : OK |
Mapped | : No |
lmacli lit la configuration iSCSI d’un Lyve Mobile Rackmount Receiver dans un fichier. Vous pouvez modifier la configuration iSCSI d'un Lyve Mobile Rackmount Receiver dans ce fichier.
Un exemple de fichier de configuration iSCSI est inclus dans le paquet lmacli.
Copiez l'exemple de fichier de configuration iSCSI et modifiez la copie de sorte qu'elle corresponde à votre environnement.
Notez certains paramètres iSCSI importants :
Le fichier de configuration iSCSI pour LMACLI ci-dessous active les trames géantes et configure les ports de réseau réservés au trafic iSCSI de sorte qu'ils appartiennent tous à des sous-réseaux différents.
Exemple de fichier | |
---|---|
# | |
# Exemple de fichier de configuration iSCSI pour la « configuration du lmacli » | |
# | |
# Les paramètres spécifiés dans ce fichier sont utilisés pour configurer les | |
# ports réseau et le service cible iSCSI d’un Lyve Mobile | |
# Rackmount Receiver. | |
# | |
# Vous pouvez utiliser la commande suivante pour appliquer la configuration iSCSI : | |
# $ lmacli rackmount-setup --iscsi-config DESTINATION FICHIER | |
# | |
# | |
# paramètres cibles iSCSI. | |
# | |
[iscsi] | |
# Un initiateur au moins doit être spécifié. | |
# Pour déterminer la nom de l’initiateur iSCSI | |
# * Linux : cat /etc/iscsi/initiatorname.iscsi | |
# * Windows : Panneau de configuration > Initiateur iSCSI > Configuration > Nom de l’initiateur | |
allowed_initiators = ["iqn.2001-04.com.example:initiator", ] | |
# Assurez-vous d’activer les trames géantes sur votre adaptateur réseau avant | |
# de définir le paramètre "jumbo_frame" suivant sur true. | |
jumbo_frame = true | |
# | |
# Configuration des ports réseau. | |
# Jusqu’à 4 ports réseau, numérotés de 0 (le plus à gauche) à 3 (le plus à droite). | |
# Veuillez mettre en commentaire les ports que vous ne souhaitez pas utiliser. | |
# | |
[[ports]] | |
index = 0 | |
ip = "192.168.0.100" | |
netmask = "255.255.255.0" | |
# gateway = | |
[[ports]] | |
index = 1 | |
ip = "192.168.1.100" | |
netmask = "255.255.255.0" | |
# gateway = | |
[[ports]] | |
index = 2 | |
ip = "192.168.2.100" | |
netmask = "255.255.255.0" | |
# gateway = | |
[[ports]] | |
index = 3 | |
ip = "192.168.3.100" | |
netmask = "255.255.255.0" | |
# gateway = |
Pour appliquer la configuration iSCSI :
lmacli rackmount-setup --iscsi-config my-server.conf adresse IP
où : adresse IP est l’adresse IP d’un port du Rackmount Receiver, par exemple :
lmacli rackmount-setup --iscsi-config my-server.conf 192.168.0.100
Exemple de résultat |
---|
Checking device configuration (iSCSI) Checking iSCSI configuration file Clearing existing rackmount configuration Creating new rackmount configuration |
Cette vérification permettra peut-être d’éviter d’autres problèmes à l’avenir. Chaque port du Rackmount Receiver déclaré dans le fichier de configuration iSCSI doit être testé à l’aide de la commande ping.
Pour vérifier la connectivité réseau sur les trames réseau :
ping -s 8972 adresse IP
où : adresse IP est l’adresse IP d’un port du Rackmount Receiver déclarée dans le fichier de configuration iSCSI, par exemple :
ping -s 8972 192.168.0.100
Exemple de résultat |
---|
PING 192.168.0.100 (192.168.0.100) 8972(9000) bytes of data. 8980 bytes from 192.168.0.100: icmp_seq=1 ttl=64 time=0.150 ms 8980 bytes from 192.168.0.100: icmp_seq=2 ttl=64 time=0.150 ms |
La commande iscsiadm permet de détecter la cible iSCSI sur le Lyve Mobile Rackmount Receiver. Le paramètre --portal doit être défini sur l'une des adresses IP déclarées dans le fichier de configuration iSCSI de lmacli.
Pour détecter la cible iSCSI :
sudo iscsiadm --mode discovery --type sendtargets --portal adresse IP
où : adresse IP est l’adresse IP d’un port du Rackmount Receiver déclarée dans le fichier de configuration iSCSI, par exemple :
sudo iscsiadm --mode discovery --type sendtargets --portal 192.168.0.100
Exemple de résultat |
---|
192.168.0.100:3260,1 iqn.1995-03.com.dothill:01.array.00c0fff39296-624ebda2.a 192.168.1.100:3260,2 iqn.1995-03.com.dothill:01.array.00c0fff39296-624ebda2.a 192.168.2.100:3260,3 iqn.1995-03.com.dothill:01.array.00c0fff39296-624ebda2.a 192.168.3.100:3260,4 iqn.1995-03.com.dothill:01.array.00c0fff39296-624ebda2.a |
La commande iscsiadm permet également de connecter l'initiateur iSCSI à la cible iSCSI via tous ses portails.
Pour se connecter à la cible iSCSI :
sudo iscsiadm --mode node --target IQN --login
où : IQN est un nom qualifié iSCSI obtenu par la commande discover, par exemple :
sudo iscsiadm --mode node --target iqn.1995-03.com.dothill:01.array.00c0fff39296-624ebda2.a --login
Exemple de résultat |
---|
Logging in to [iface: default, target: iqn.1995-03.com.dothill:01.array.00c0fff39296-624ebda2.a, portal: 192.168.2.100,3260] (multiple) Logging in to [iface: default, target: iqn.1995-03.com.dothill:01.array.00c0fff39296-624ebda2.a, portal: 192.168.1.100,3260] (multiple) Logging in to [iface: default, target: iqn.1995-03.com.dothill:01.array.00c0fff39296-624ebda2.a, portal: 192.168.3.100,3260] (multiple) Logging in to [iface: default, target: iqn.1995-03.com.dothill:01.array.00c0fff39296-624ebda2.a, portal: 192.168.0.100,3260] (multiple) Login to [iface: default, target: iqn.1995-03.com.dothill:01.array.00c0fff39296-624ebda2.a, portal: 192.168.2.100,3260] successful. Login to [iface: default, target: iqn.1995-03.com.dothill:01.array.00c0fff39296-624ebda2.a, portal: 192.168.1.100,3260] successful. Login to [iface: default, target: iqn.1995-03.com.dothill:01.array.00c0fff39296-624ebda2.a, portal: 192.168.3.100,3260] successful. Login to [iface: default, target: iqn.1995-03.com.dothill:01.array.00c0fff39296-624ebda2.a, portal: 192.168.0.100,3260] successful. |
La commande lsscsi permet d’afficher les périphériques de traitement par blocs. Chaque périphérique de traitement par blocs représente un chemin d'accès au même LUN.
Exemple de résultat | |||||
---|---|---|---|---|---|
[5:0:0:0] | enclosu | SEAGATE | STJX46000400 | M100 | - |
[5:0:0:1] | disk | SEAGATE | STJX46000400 | M100 | /dev/sdc |
[6:0:0:0] | enclosu | SEAGATE | STJX46000400 | M100 | - |
[6:0:0:1] | disk | SEAGATE | STJX46000400 | M100 | /dev/sde |
[7:0:0:0] | enclosu | SEAGATE | STJX46000400 | M100 | - |
[7:0:0:1] | disk | SEAGATE | STJX46000400 | M100 | /dev/sdd |
[8:0:0:0] | enclosu | SEAGATE | STJX46000400 | M100 | - |
[8:0:0:1] | disk | SEAGATE | STJX46000400 | M100 | /dev/sdf |
Le démon multipath du mappeur de périphériques fusionne les différents chemins d'accès aux périphériques.
Vous trouverez ci-dessous des informations détaillées sur la configuration MPIO d'un Lyve Mobile Rackmount Receiver.
Le rôle du démon multipath du mappeur de périphériques est de détecter et de fusionner plusieurs chemins d'accès à des périphériques lors d'un basculement ou pour des raisons de performances.
Pour afficher la liste des périphériques multipath :
sudo multipath -ll
Exemple de résultat |
---|
mpatha (3600c0ff000f390bace61ac6201000000) dm-1 SEAGATE,STJX46000400 size=40T features='0' hwhandler='1 alua' wp=rw |-+- policy='service-time 0' prio=50 status=active | `- 5:0:0:1 sdc 8:32 active ready running |-+- policy='service-time 0' prio=50 status=enabled | `- 6:0:0:1 sde 8:64 active ready running |-+- policy='service-time 0' prio=50 status=enabled | `- 8:0:0:1 sdf 8:80 active ready running `-+- policy='service-time 0' prio=50 status=enabled `- 7:0:0:1 sdd 8:48 active ready running |
Pour améliorer la bande passante d’E/S, il est recommandé de remplacer le paramètre path_grouping_policy du basculement par défaut par group_by_prio. Pour définir path_grouping_policy sur group_by_prio pour tous les Lyve Mobile Array, ajoutez l'extrait de code suivant à /etc/multipath.conf :
Exemple de résultat |
---|
devices { device { vendor "SEAGATE" product "STJX.*" path_grouping_policy "group_by_prio" } } |
Une fois le démon multipath du mappeur de périphériques redémarré, le résultat de multipath -ll se présente comme suit :
Exemple de résultat |
---|
mpatha (3600c0ff000f390bac420bb6201000000) dm-1 SEAGATE,STJX46000400 size=40T features='0' hwhandler='1 alua' wp=rw `-+- policy='service-time 0' prio=50 status=active |- 5:0:0:1 sdc 8:32 active ready running |- 6:0:0:1 sdd 8:48 active ready running |- 7:0:0:1 sde 8:64 active ready running `- 8:0:0:1 sdf 8:80 active ready running |
La première ligne commence avec le nom du périphérique multipath (mpatha dans l’exemple ci-dessus). Le chemin d’accès complet au périphérique est /dev/mapper/mpatha.