ISCSI sous Red Hat avec un NetApp

De Wiki de Romain RUDIGER
Aller à : navigation, rechercher


Installation de la couche iSCSI

Étapes :

  • Installer le RPM
  • Changer le Initiator ID (cela permet de retrouver quel ID appartient à quel serveur rapidement)
  • Lancer le daemon
  • Installer le RPM iscsi-initiator-utils :
[root@serv ~]# yum install iscsi-initiator-utils.x86_64
...
Installed:
  iscsi-initiator-utils.x86_64 0:6.2.0.871-0.16.el5
  • Changer le Initiator ID en modifiant le fichier /etc/iscsi/initiatorname.iscsi
[root@serv ~]# cat /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.1994-05.com.redhat.serv:a8836c333a15
  • Lancer le daemon
[root@serv ~]# service iscsi start
iscsid is stopped
Starting iSCSI daemon:                                     [  OK  ]
                                                           [  OK  ]
Setting up iSCSI targets: iscsiadm: No records found!
                                                           [  OK  ]

Ajouter un target iSCSI

Ajout du target iSCSI avec le nom du target :

[root@serv ~]# iscsiadm -m node -o new -T iqn.1992-08.com.netapp:sn.1574092964 -p 10.1.1.1:3260
New iSCSI node [tcp:[hw=,ip=,net_if=,iscsi_if=default] 10.1.1.1,3260,-1 iqn.1992-08.com.netapp:sn.1574092964] added

Ajout sans le nom du target (Ce n'est la meilleure méthode car il y a souvent un target par réseau, cette commande les ajoutant tous, il y en aura certains injoignable...) :

[root@serv ~]# iscsiadm -m discovery -t sendtargets -p 10.1.1.1
10.1.2.1:3260,2002 iqn.1992-08.com.netapp:sn.1574092964
10.1.3.1:3260,2007 iqn.1992-08.com.netapp:sn.1574092964
10.1.4.1:3260,2005 iqn.1992-08.com.netapp:sn.1574092964
10.1.88.6:3260,2006 iqn.1992-08.com.netapp:sn.1574092964

Ici, il vaut mieux supprimer les targets injoignables !

Relance du daemon pour qu'il se connecte aux targets configurés :

[root@serv ~]# service iscsi restart
Stopping iSCSI daemon:
iscsid dead but pid file exists                            [  OK  ]
Starting iSCSI daemon:                                     [  OK  ]
                                                           [  OK  ]
Setting up iSCSI targets: Logging in to [iface: default, target: iqn.1992-08.com.netapp:sn.1574092964, portal: 10.1.1.1,3260]
Login to [iface: default, target: iqn.1992-08.com.netapp:sn.1574092964, portal: 10.1.1.1,3260]: successful
                                                           [  OK  ]

Si il y avait des disques publiés pour cet Initiator ID, il seront automatiquement créés (voir /var/log/message "SCSI device sdb:..."

Faire détecter un nouveau LUN ou un LUN modifié

Il y a la solution de relancer le daemon iscsid mais cette solution est impossible s'il y a déjà un LUN en cours d'utilisation.

L'autre solution consiste à demander au daemon de re-scanner le target en question.

Voir les targets :

[root@serv ~]# iscsiadm -m session
tcp: [1] 10.1.1.1:3260,2000 iqn.1992-08.com.netapp:sn.1574092964

Ou :

[root@serv ~]# ls /var/lib/iscsi/nodes/
iqn.1992-08.com.netapp:sn.1574092964

Re-scanner le target :

[root@serv ~]# iscsiadm -m node -R -T iqn.1992-08.com.netapp:sn.1574092964
Rescanning session [sid: 1, target: iqn.1992-08.com.netapp:sn.1574092964, portal: 10.1.1.1,3260]

Il suffit de regarder le résultat dans /var/log/messages.

  • Si le disque a été créé :
Jul 27 12:38:18 serv kernel: SCSI device sdb: 41943040 512-byte hdwr sectors (21475 MB)
Jul 27 12:38:18 serv kernel: sdb: Write Protect is off
Jul 27 12:38:18 serv kernel: sdb: Mode Sense: bd 00 00 08
Jul 27 12:38:18 serv kernel: SCSI device sdb: drive cache: write through
Jul 27 12:38:18 serv kernel:  sdb: unknown partition table
Jul 27 12:38:18 serv kernel: sd 20:0:0:0: Attached scsi disk sdb
Jul 27 12:38:18 serv kernel: sd 20:0:0:0: Attached scsi generic sg3 type 0
  • Si le disque a été agrandis :
Jul 27 14:45:52 serv kernel: SCSI device sdb: 52428800 512-byte hdwr sectors (26844 MB)
Jul 27 14:45:52 serv kernel: sdb: Write Protect is off
Jul 27 14:45:52 serv kernel: sdb: Mode Sense: bd 00 00 08
Jul 27 14:45:52 serv kernel: SCSI device sdb: drive cache: write through
Jul 27 14:45:52 serv kernel: sdb: detected capacity change from 21474836480 to 26843545600
Jul 27 14:45:58 serv kernel: SCSI device sdb: 52428800 512-byte hdwr sectors (26844 MB)
Jul 27 14:45:58 serv kernel: sdb: Write Protect is off
Jul 27 14:45:58 serv kernel: sdb: Mode Sense: bd 00 00 08
Jul 27 14:45:58 serv kernel: SCSI device sdb: drive cache: write through
Jul 27 14:45:58 serv kernel:  sdb: unknown partition table

Agrandir un disque

Après que le LUN ait été agrandis sur la baie de disque, il faut re-scanner le target.

Ici on passe de 20 à 26 Go :

[root@serv ~]# pvs
  PV         VG                        Fmt  Attr PSize  PFree
  /dev/sdb   vg-san-a-cluster_smg lvm2 a-   20.00G 0.00G
[root@serv ~]# iscsiadm -m node -R -T iqn.1992-08.com.netapp:sn.1574092964
Rescanning session [sid: 1, target: iqn.1992-08.com.netapp:sn.1574092964, portal: 10.1.1.1,3260]
[root@serv ~]# pvs
  PV         VG                        Fmt  Attr PSize  PFree
  /dev/sdb   vg-san-a-cluster_smg lvm2 a-   26.00G 6.00G

Il est possible de voir la modification dans /var/log/message avec quelque chose comme "detected capacity change from... to..."