Monter un serveur de stocakge iSCSI rapidement (avec du MPIO)

Ici je détail la procédure pour installer très rapidement, et donc en laissant de coté la sécurité un serveur de stockage sous OmniOS (un autre dérivé de OpenSolaris)
Pour la sécurité allez voir ici

Configuration Matérielle :

  • Le serveur : Dell PowerEdge R515
  • Carte RAID : Perc H700, 512Mo de cache
  • Disques système : 2 disques 300G SAS 10K RPM
  • Disques zpool : 9 disques 3To SAS 6Gb/s 7.2K RPM et 2 SSD Crucial M500 120Gb

A propos de la carte Perc H700:
Ce n’est pas le meilleur choix. En effet elle ne permet pas de présenter les disques en JBOD. Il faut donc créer autant de « virtual disk » en RAID0 qu’il y a de disques. Donc à priori quelques pertes de performances.

Installation du serveur

Télécharger le CD d’installation sur le site d’OmniOS.
Une fois installé, loggez-vous en root (sans mot de passe) via une console.

Configuration des interface réseaux

Liste des interfaces réseaux

# dladm show-phys
Configuration de la première interface (réseau de management)
# ipadm create-if bnx2
# ipadm create-addr -T static -a 10.10.1.1/24 bnx2/v4static
Configuration de la route par défaut
# route -p add default 10.10.1.254
Modification de la configuration de SSH

Pour pouvoir faire le reste de la configuration à distance …

# vi /etc/ssh/sshd_config

Changez « PermitRootLogin no » to « PermitRootLogin yes ».
Relancer ssh

# svcadm restart ssh

Maintenant vous pouvez vous logger en ssh sur le serveur

  • Login : root
  • Passord : y’en a pas. Taper entrer.
Configuration de la deuxième interface (réseau SAN)
# ipadm create-if bnx0
# ipadm create-addr -T static -a 10.10.2.1/24 bnx0/v4static
Configuration de la troisième interface (réseau SAN)
# ipadm create-if bnx1
# ipadm create-addr -T static -a 10.10.3.1/24 bnx1/v4static
Configuration de la résolution DNS
# echo "nameserver 192.168.100.1" >> /etc/resolv.conf
# echo "nameserver 192.168.100.2" >> /etc/resolv.conf
# cp /etc/nsswitch.conf{,.bak}
# cp /etc/nsswitch.{dns,conf}
Création d’un utilisateur non root

Référence : OmniOS : Adding local users

# echo "* localhost:/export/home/&" > /etc/auto_home
# svcadm refresh autofs
# useradd -u 2000 -m -d /export/home/weldone weldone
# usermod -d /home/weldone weldone
# passwd weldone
Configuration sudo pour cet utilisateur
# grep ^root /etc/sudoers | sed -e 's/^root/weldone/' > /etc/sudoers.d/weldone
# chmod 0440 /etc/sudoers.d/weldone

Création du Zpool

Identification des disques
# format < /dev/null 
Création d’un zpool avec les disques disponibles
# zpool create -f vmpool raidz2 c1t1d0 c1t2d0 c1t3d0 c1t4d0 c1t5d0 c1t6d0 c1t7d0 c1t8d0 spare c1t9d0 log mirror c1t11d0 c1t12d0
# zpool status 
# zfs get available vmpool 
Création d’un zvolume
# zfs create -V 15T vmpool/datastore01

ou

# zfs create -V 15899G vmpool/datastore01

ou

# zfs create -V 16280995M vmpool/datastore01

En « M », vous perdez le moins d’espace…

C’est la commande suivante qui vous permet de vérifier l’espace disponible dans votre zpool, et donc d’affiner la taille du zvolume.

# zfs get available vmpool

Attention:
Ne pas donner une taille trop petite, sinon à la création du zvolume vous aurez un message d’erreur car les Metadata ne pourront pas être écrites.

Installation et lancement des services iSCSI et serveur de stockage

Avec la configuration d’un proxy si vous devez en utiliser un.

# echo "export http_proxy=\"http://192.168.100.10:8080/\"" >> /root/.profile
# . .profile
# pkg install storage-server
# svcadm enable stmf
# svcs stmf
# svcadm enable -r svc:/network/iscsi/target:default
# svcs -l iscsi/target
Création d’un Logic Unit (LU) pour notre « vmpool/datastore01 »
# stmfadm create-lu /dev/zvol/rdsk/vmpool/datastore01

En retour nous avons l’ID du LU, par exemple : 600144F0000000000000523AC3FA0001

# stmfadm list-lu
# stmfadm add-view 600144F0000000000000523AC3FA0001
# stmfadm list-view --lu-name 600144F0000000000000523AC3FA0001
# itadm create-target

En retour nous avons l’ID de la target, par exemple : iqn.2010-08.org.illumos:02:2303d8d3-75f9-c341-c389-ff982528211c

# itadm create-tpg tpg01 10.10.2.1:3260 10.10.3.1:3260

Et cerise sur le gâteau !!
Cette commande nous permet d’activer le MPIO

# itadm modify-target -t tpg01 iqn.2010-08.org.illumos:02:2303d8d3-75f9-c341-c389-ff982528211c

Et voilà, mettez un client iSCSI dans le même réseau, ça devrait marcher sans problème.

Ce contenu a été publié dans Mes docs, OpenSolaris, avec comme mot(s)-clé(s) , , , , . Vous pouvez le mettre en favoris avec ce permalien.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.