Mise en place d’iSCSI pour le partage de données

4 février 2010 par Gaëtan Laisser une réponse »

plopinou …

Petit tuto rapide sur la mise en place d’un serveur et d’un client iSCSI sur linux … Alors c’est quoi l’iSCSI ?? c’est un peu comme un partage de disque en réseau du style SMB ou NFS … sauf que c’est plus rapide (c’était téléphoné ;)). C’est du SCSI encapsulé sur IP pas de surcouche RPC (comme pour NFS).

Niveau performance vis-à-vis du NFS ça donne ça (tiré de cet article) :

En français (pour ceux qui n’aime pas l’anglais et qui ne veulent pas tout lire), les performances en écriture sont supérieurs à 20% et en lecture à 400%.

Un petit point négatif par rapport à du NFS ou du SMB, on ne peut pas partager de dossiers en particulier, c’est soit un disque ou un fake disque  (via dd … où qu’il est déééédéééé ??).

Côté serveur la manip (très simple) :

  1. sudo apt-get install iscsitarget

Si l’on ne veut pas partager un disque, on peut se créer un disque de 10Go :

  1. dd if=/dev/zero of=fs.iscsi.disk bs=1M count=10000

Ensuite on ouvre le fichier /etc/ietd.conf et on y met les lignes suivantes pour un « fake » dd :

  1. Target iqn.2010-01:fs.iscsi.disk
  2.  Lun 0 Path=/path/to/disk/fs.iscsi.disk,Type=fileio

Pour un le partage d’un disque dur complet :

  1. Target iqn.2010-01:sdb2
  2.  Lun 0 Path=/dev/sdb2,Type=fileio

Le iqn.2010-02:… est arbitraire, on peut mettre ce que l’on veut, il faut juste que ça ait une logique si l’on en a plusieurs pour les retrouver après … (pour ma part : iqn.année-mois, certain rajoute le ndd)

Une fois terminé, pour vérifier que tout est bon (on redémarre le serveur iSCSI) :

  1. sudo /etc/init.d/iscsitarget restart
  2. cat /proc/net/iet/volume

Le cat vous renverra quelque chose qui ressemble à :

  1. tid:1 name:iqn.2010-01:sdb2
  2.  lun:0 state:0 iotype:fileio iomode:wt path:/media/disque/fs.iscsi.disk

Coté client maintenant :

  1. sudo apt-get install open-iscsi

Pour découvrir les services disponible sur le serveur :

  1. sudo iscsiadm – -mode discovery – -type sendtargets – -portal ip-serveur

Qui peut retourner un truc du genre :

  1. ip-serveur:3260,1 iqn.2010-01:sdb2

Enfin, pour se connecter, on réutilise le iqn récupéré :

  1. sudo iscsiadm – -mode node – -targetname iqn.2010-01:sdb2 – -portal ip-serveur – -login

Qui va renvoyer :

  1. Logging in to [iface: default, target: iqn.2010-01:sdb2, portal: ip-serveur,3260]
  2. Login to [iface: default, target: iqn.2010-01:sdb2, portal: ip-serveur,3260]: successful

Attention, le disque monté n’est peut être pas formaté (dans le cas de l’utilisation de dédé), sinon on peut vérifier que le disque est bien monté via un fdisk -l (et le formater si besoin est)

Pour ce déconnecter :

  1. sudo iscsiadm – -mode node – -targetname iqn.2010-01:sdb2 – -portal ip-serveur – -logout

et voilà, avec ça vous pourrez déjà utiliser votre disque partagé, cela dit, il est possible de restreindre les accès par login/mdp, ip, …

Plus d’info (liens) :

Publicité