Installation et configuration QuadStor avec Mirrorring HA

Bonsoir,

Une fois n’est pas coutume, je vais vous parler d’une techno que nous venons de mettre en qualification ici et qui n’a rien à voir, mais alors strictement rien avoir avec PowerShell!

Je ne sais pas si je vous l’ai dit ici, mais c’est finit pour moi le monde joyeux des SSII et des projets où je pondais du code PowerShell à longueur de journées, maintenant je suis multi tâches et depuis quelques jours, j’avais pour mission de trouver une solution de stockage Open Source qui proposait les mêmes services  que des grosses baies Netapp et EMC (pour ne citer qu’eux). Après de longues journées infructueuses à tester Open Filer et son socle rPath tout pourri, bien qu’apparement certaines personnes aient réussi à le  faire fonctionner… être passé par Nas4free, le fameux fork de FreeNas et m’être aperçu que DRDB c’est quand même super lent niveau synchro pour du mirrorring de Datastore rempli de VM, je suis tombé sur un truc qui semblait parfait sur le papier: QUADSTOR et leur projet nommé Storage Virtualization. Au début, je l’avoue j’étais sceptique sur un produit qui parraissait vraiment simple d’utilisation (on parle d’Open Source là, faut pas déconner 😉 -troll windowsien inside-), mais je dois l’avouer leur produit marche à la perfection et avec des performances qui sont au niveau, sans soucis de notre Datacore ici. Je n’ai pas de quoi comparer avec des baies de compétition, si il y a des lecteurs motivés !!

Les prérequis

 

Donc, je vais essayer de vous éclairer dans ce post sur les rudiments d’installation et de configuration de ce produit génialissime, en tout cas sur la partie Mirrorring Actif/Actif que j’ai pû mettre en place ici.

Tout d’abord la base:
– 2 serveurs. Personellement, vu que nous allons en faire une baie de stockage avec des VLANs dédiés auxquels les VMs de peuvent pas avoir accès, le choix été vite fait pour moi.
– Chaque serveur doit avoir au moins 3 cartes réseau (management, ISCSI et Replication), L’idéal était des cartes 10gbits pour la partie ISCSi et la réplication.
– Au moins 4GB de RAM par serveur, et tous les 4 VDisks 2GB de RAM en plus (on parle de recommandation là, ça fonctionne aussi très bien avec 16GB et 120TB de disque ;))
– L’application peut s’installer sur tout un tas d’OS Linux et Unix. Je vais vous proposer une installation sur CentOS 6.5.

Installation

 

Faites d’abord une installation classique de votre CentOS en proposant un root de 10GB, un /point de montage quadstor de 20GB et votre swap. Les autres disques doivent être formattés, mais surtout pas montés. Il seront reconnus par QuadStor qui attaque directement les couches physiques.

Une fois votre installation maison de CentOS faite avec vos dépots et votre réseau configuré, allons télécharger la dernière version de QuadStor sur le site de l’éditeur

yum install httpd gcc perl kernel-devel sg3_utils policycoreutils-python fence-agents
cd /tmp
wget http://www.quadstor.com/virtdownloads/quadstor-core-3.0.56-rhel6.x86_64.rpm
wget http://www.quadstor.com/virtdownloads/quadstor-itf-3.0.56-rhel6.x86_64.rpm
reboot

Suite à ce petit reboot, notamment car le kernel a été modifié  (?) -je suis pas un pro de linux :p-, installons donc ces packages.

rpm -ivh quadstor-core-3.0.56-rhel6.x86_64.rpm
rpm -ivh quadstor-itf-3.0.56-rhel6.x86_64.rpm
reboot

Configuration

Apache

 

Ca y est les modules core et itf sont installés, vous pouvez maintenant accéder à l’interface web.. et non! Il faut d’abord configurer Apache, du moins le démarrer.

service httpd start
chkconfig httpd on

En tapotant l’adresse de votre serveur dans votre navigateur préféré, vous accéder maintenant à l’interface épurée de quadstor où vous devez voir une page récapitulative de votre configuration QuadStor et un menu

 home_quadstor

Stockage

 

Si vous cliquez sur Physical Storage, vous trouverez une liste de vos disques durs que vous n’avez pas montés auparavant, et bien cliquez sur Add. Vous avez maintenant votre disque qui apparaît comme sur l’écran suivant, avec tout un tas d’options et d’informations “statisticiennes”. Cette action est bien évidement à effectuer sur chacun des deux noeuds ;). Pour la petite histoire, si comme moi vous aimez tout automatiser, il est évidement possible de faire toutes les actions qui vont suivre en commandes, et donc de se passer de l’interface web par la même occasion.

quadstor_disk

Rien de bien compliqué là dedans, je vous laisserais découvrir ça tranquilement 😉

Vous pouvez aussi naviguez sur Storage Pool qui vous permettra de regrouper vos VDisks par pools, pour le moment je n’ai pas touché à ça, sachant que la partie interessante se situe au niveau des vdisks pour moi afin de pouvoir mettre en place le mirroring.

Pour créer un VDisk, rien de plus simple, cliquez sur Add VDisk et remplissez comme ci-dessous, à savoir surtout bien cocher la case 512 byte emulation si vous voulez monter des VMs dessus par la suite et cliquez sur Submit

quadstor_addvd

vdisk

Vous voyez maintenant un joli VDisk ajouté dans la liste, avec pour status D et E. Donc la déduplication est activée et l’émulation pour les hyperviseurs aussi. Si vous souhaitez activer ou désactiver certaines options, c’est tout à fait possible en cliquant sur modify. D’ailleurs vous verrez aussi une partie sur le Mirroring, mais cela sera pour plus tard 😉

NB: Cette action d’ajout de VDisk n’est à faire que sur le Noeud 1 dans le cadre d’un mirrorring !!

Mirroring

 

Maintenant, configurons donc ce mirroring, pour cela ouvrez un shell sur chacun des noeuds et créez un fichier

echo RecvAddr=<ip_utilisée_pour_la_réplication> >> /quadstor/etc/ndrecv.conf
service quadstor restart

Si vous êtes resté dans les options de votre VDisk sur le noeud 1, dans la partie Mirror, renseigner le Disk Pool, si vous n’avez pas laissé Default, et dans la partie Mirror indiquez l’adresse ip du RecvAddr que vous avez renseigné sur le Noeud 2 et cliquez sur Submit.

Un VDisk identique est créé sur le Noeud 2 et maintenant votre configuration Mirroring apparaît

Il reste à configurer le fencing pour vraiment avoir de la haute dispo sur votre miroir. Pour ceci, il faut s’appuyer sur le matériel de votre serveur, où sur les appliances VMWare/KVM/etc. La procédure qui va suivre fonctionne sur les serveurs DELL où vous avez pris la licence DRAC.

Tout d’abord, IPMI doit être activé et accessible sans avoir besoin de votre compte avec tous les droits. La procédure suivante va vous expliquer comment créer un compte juste pour “fencer”.

Dans le menu de gauche aller dans Paramètres iDRAC, puis sur la droite naviguez dans Réseau/Sécurité. Et sur la ligne juste dessous, cliquez sur Utilisateurs

idrac1

 

Sélectionnez un utilisateur désactivé en cliquant sur le numéro en début de ligne, puis cochez la case comme ci-dessous et faites suivant.

idrac2

 

Puis sur la page suivante, renseignez en choisissant login et mot de passe. Pour les autres champs, remplissez à l’identique.

idrac3

Maintenant faites appliquer et refaites la procédure sur le deuxième noeud.

Ok, maintenant, il ne reste plus qu’à configurer le fencing pour que le miroir fonctionne en Actif/Actif, pour cela connectez vous d’abord sur le noeud 1 et tapez la commande suivante:

/quadstor/bin/qmirrorcheck -a -t fence -r <ip_replication_noeud_2> -v ' /usr/bin/ipmitool -I lanplus -H '<node2_ilo>' -U 'f<ipmi_user>' -P '<ipmi_password>*' -v chassis power off'
service quadstor restart

Attendez bien que le service soit redémarré et faites maintenant la commande suivante sur le noeud 2

/quadstor/bin/qmirrorcheck -a -t fence -r <ip_replication_noeud_1> -v ' /usr/bin/ipmitool -I lanplus -H '<node1_ilo>' -U 'f<ipmi_user>' -P '<ipmi_password>*' -v chassis power off'
service quadstor restart

Une fois le service redémarré vous êtes maintenant avec un VDisk que vous pouvez attacher en iSCSi sur tous vos périphériques et ce avec de la haute dispo, sans jamais perdre le lien avec vos données.

Conclusion

 

Pour le moment, j’ai 5 VM qui tournent dessus un datastore monté en VMFS5, pour l’instant personne ne constate de ranlentissement.

Je vous proposerais dans un article futur un article concernant les temps d’accès, vitesse écriture, etc .. enfin un vrai test de performances du produit QuadStor.

@+ !