Starwind : mise en place d’un stockage hautement disponible

StarWind Virtual SAN est logiciel qui permet de transformer un Windows en serveur cible iSCSI. L’avantage de StarWind est qu’il peut être utiliser pour mettre le stockage en haute disponibilité en installant deux serveurs StarWind, du fait que cela soit gérer au niveau logiciel, il peut être utiliser avec tout type de stockage (SAN, DAS) et il est indépendant du matériel utilisé.

Il est également possible d’installé StarWind sur des serveurs Hyper-V afin d’avoir une solution hyperconvergée, avec un réplication du stockage des hyperviseurs. L’inconvénient de cette solution est que l’espace disponible est divisé par le nombre de nœud composant le cluster.

Dans ce tutoriel, nous allons voir comment mettre en place un volume iSCSI avec starwind que nous présenterons à un serveur, puis dans un second temps comment mettre ce volume en haute disponibilité.

Le but de ce tutoriel est d’arriver à la représentation ci-dessous :

starwind ha

Les adresses IP et les noms des serveurs ne correspondent pas au LAB rédigé ci-après mais à la vidéo disponible à la fin de ce tutoriel.

Retrouver le tutoriel en vidéo :

Prérequis

Pour la réalisation de lab, il faut avoir au minimum 3 serveurs :

  • 2 serveurs pour StarWind avec 3 cartes réseaux (LAN / iSCSI / HB) / 2 deux partitions OS / Stockage
  • 1 serveur qui sera l’initiateur avec 2 cartes réseaux (LAN / iSCSI)

Les cartes dédiés au réseau iSCSI et HB n’ont pas besoin de composant Windows et ne doivent pas s’enregistrer sur les serveurs DNS.

Réseaux utilisés :

  • 10.0.0.0/24 : LAN
  • 172.16.100.0/24 : iSCSI
  • 192.168.100.0/24 : HB

Avant de commencer il faut télécharger et récupérer la clef de licence (gratuite) sur StardWind.

Installation de starwind

Sur le premier serveur StarWind, lancer l’exécutable téléchargé.

Starwind installer

Accepter le contrat de licence 1 et cliquer sur Next 2.

Accept license

Passer le message d’information en cliquant sur Next 1.

pass the information message

Si nécessaire modifier le chemin d’installation sinon cliquer sur Next 1.

Destination location

Type d’installation sélectionner Full 1 et cliquer sur Next 2.

type install

Cliquer sur Next 1 pour les deux fenêtres suivante.

License Key, sélectionner l’option Thank, I do have a key already 1 et cliquer sur Next 2.

License key

Choisir le fichier de licence télécharger en même temps que le logiciel 1 et cliquer sur Next 2.

licence file

Un résume de la license s’affiche, confirmer en cliquant sur Next 1.

Licence resume

Le résumé des options d’installation s’affiche, cliquer sur Install 1.

Start install

Confirmer le démarrage des services iSCSI en cliquant sur OK 1.

Si l’installation est en erreur, cliquer sur Back, ouvrir le panneau de configuration et lancer le service Initiateur iSCSI manuellement. Une fois la fenêtre de configuration iSCSI lancée, retourner sur l’assistant d’installation et cliquer de Nouveau sur Install.

Patienter pendant l’installation …

Passer la configuration de l’agent SMI en cliquant sur Non 1.

Config SMI Agent

L’agent SMI permet de piloter StarWind depuis une application tier comme SCVMM.

L’installation terminée, cliquer sur Finish 1 pour quitter l’assistant.

installation completed

Patienter durant l’ouverture de la console, une fenêtre va s’ouvrir pour configurer le pool de stockage. Cliquer sur Yes 1, le logiciel devrait directement choisir la second partition du serveur.

Configure pool

La console StarWind doit s’ouvrir automatiquement. Ce que l’on va faire en premier, c’est de configurer l’utilisation des cartes réseaux. Dans le menu de gauche, sélectionner le serveur 1, aller sur l’onglet Configuration 2 et cliquer sur Network 3. Choisir la carte réseau de management 4 et cliquer sur Modify 5.

Décocher la case Enable Network Interface 1 et cliquer sur OK 2.

Disable portal

On peut voir dans l’interface que la carte est maintenant désactivé de Starwind.

Network list

Maintenant que StarWind est configuré, nous allons voir comment configurer une cible iSCSI et créer un volume.

Configurer et présenter un stockage

Configuration du stockage


Depuis la console, cliquer sur Add Device 1 pour lancer l’assistant.

Starwind add device

Nommer de la stockage (cible)  1 puis indiquer la taille du disque 2 et cliquer sur Next 3.

Name and size disk - Starwind

Confirmer l’action en cliquant sur Create 1.

Confirm the creation of the target and disk - Starwind

Une fois terminée, quitter l’assistant Starwind en cliquant sur Close 1.

Device was created in starwind

On voit dans la console que la cible 1 et le disque 2 ont bien été créés.

Starwind - target and device

Pour information, il est possible sur une même cible (Storage1) de présenter plusieurs disques (Device) en même temps.


Maintenant que la cible et le disque sont créés, nous allons voir comment les utiliser depuis un client (Initiateur).

Présentation du stockage

Depuis un client qui va devenir initiateur du stockage, ouvrir le panneau de configuration et cliquer sur Initiateur iSCSI 1.

control panel

Si c’est la premier fois que vous lancez l’initiateur iSCSI, configurer le service en démarrage automatique en cliquant sur Oui 1.

config service

Sur la fenêtre de propriétés de l’initiateur iSCSI, aller sur l’onglet Découverte 1 et cliquer sur Découvrir un portail 2.

Add portal

Entrer l’adresse IP du portail (interface iSCSI du serveur Starwind) 1 et cliquer sur OK 2.

portal ip of starwind server

Une fois le portail ajouté, sélectionner le 1 et cliquer sur Connexion 2.

connection to the portal

Cliquer sur OK 1 pour confirmer la connexion.

connection to the portal

L’ordinateur est maintenant connecté à la cible.

Connected to the starwind portal

Ouvrir le gestionnaire de disque, vérifier que le disque créé précédemment soit bien présenté. Initialiser le.

Sur la console Starwind, on peut également voir la connexion iSCSI.

Sessions from the starwind console

Maintenant que nous avons présenté le stockage et configuré celui-ci sur l’initiateur, nous allons voir comment le mettre en haute disponibilité.

Mise en haute disponibilité

Sur le second serveur Starwind installer le logiciel comme sur le premier et configurer le de la même façon (carte réseau, désactivation de l’interface de management sur les portails), configurer également sur les 2 serveurs cette fois la troisième carte réseau destiné au HeartBeat (cette interface est destinée à la communication entre les nœuds Starwind).

Sur la premier serveur, depuis l’interface d’administration cliquer sur Add Server 1.

Starwind add server

Entrer l’adresse IP du second serveur 1 (j’ai choisi la carte iSCSI) et cliquer sur OK 2.

remote host address

Patienter pendant la connexion à l’hôte…

Connect remote host starwind

Depuis une même console, on peut administrer l’ensemble des serveurs StarWind.

Server connected

Sélectionner le disque créé précédemment 1 et cliquer sur Replication Manager 2.

configure replication

Durant la configuration, le disque sera hors ligne, fermer le message en cliquant sur OK 1.

Cliquer sur « Click to add replication partner » 1 pour ouvrir l’assistant de configuration de réplication.

Configure partner for replication

Choisir la réplication synchrone en sélectionner Synchronous « Two-Way » Replication 1 et cliquer sur Next 2.

Replication mode

Entrer l’adresse IP du partenaire 1 et cliquer sur Next 2.

Partner node

Sélectionner Hearbeat 1 pour la stratégie de basculement et cliquer sur Next 2.

Failover strategy

Sélectionner Create new Partner Device 1 et cliquer sur Next 2.

Partner device

Cliquer sur Next 1. Il est possible de modifier IQN si nécessaire.

Configure partner

Il faut maintenant configurer l’attribution des différentes cartes réseaux, cliquer sur Changer Network Settings 1.

Network settings

Pour chaque interface, configurer si elle est dédiée à la synchronisation ou au heartbeat 1 et cliquer sur OK 2 pour valider.

Configure interface

Passer à l’étape suivante en cliquant sur Next 1.

Network configured

Sélectionner l’option « Synchronize from existing Device » 1 pour copier les données puis cliquer sur Next 2.

Synchronize data

Cliquer sur Create Replica 1.

Create replica

Le disque est créé, fermer l’assistant en cliquant sur Close 1.

Device created

Patienter pendant le synchronisation …

La synchronisation terminée, cliquer sur Close 1 pour quitter l’assistant.

synchronization completed

Dans l’interface, on peut voir le disque sur chaque noeud StarWind.

Disk in HA

En sélectionnant la cible sur le premier serveur 1 on peut voir les 3 sessions iSCSI 2 contrairement au second serveur 3 où il n’y a que 2 sessions pour le moment 4.


Maintenant que nous avons un disque en haute disponibilité sur les 2 nœuds StarWind, nous allons comment configurer le serveur initiateur pour exploiter le HA.

Configuration de l’initiateur iSCSI pour la haute disponibilité

Sur le serveur où est présenté le stockage, installer la fonctionnalité MPIO. Ouvrir les propriétés MPIO dans le panneau de configuration aller sur l’onglet Découvrir plusieurs chemins 1, cocher la case Ajouter la prise en charge des périphériques iSCSI 2 et cliquer sur Ajouter 3.

MPIO config

Redémarrer le serveur en cliquant sur Oui 1.

Reboot

Une fois l’ordinateur redémarré, ouvrir les propriétés de l’initiateur iSCSI et ajouter le portail du second serveur StarWind en cliquant sur Découvrir un portail 1.

Add portal

Entrer l’adresse IP du portail 1 et cliquer sur OK 2.

Add portal


Aller sur l’onglet Cibles 1, sélectionner le portail 2 qui vient d’être ajouté puis cliquer sur Connexion 3.

connection to the portal

Cocher la case Activer la prise en charge de plusieurs chemins d’accès et valider 1 en cliquant sur OK 2.

connection configuration

L’ordinateur est maintenant connecté aux deux portails, nous allons vérifier la prise en comte du MPIO, cliquer sur Périphériques 1.

Sélectionner le disque 1 et cliquer sur MPIO 2.

On peut voir qu’il y a plusieurs chemin d’accès au disque.

MPIO verification

Il est également possible de faire cette vérification par le gestionnaire de disque, en aller sur les Propriétés du disques 1 et en allant ensuite sur l’onglet MPIO 2.

Depuis les propriétés il est possible de configurer le mode de fonctionnement du MPIO.

Sur la console d’administration, il est également possible de voir que l’ordinateur est connecté à le second cible.

Starwind console HA

Test de la haute disponibilité

Maintenant pour valider le bon fonctionnement de la haute disponibilité du stockage, il est possible de lancer une copie sur le disque iSCSI et d’arrêter un des nœuds Starwind. On peut voir sur la capture ci-dessous que le second nœud n’est plus actif.

Starwind node down

Sur le serveur, on voit que la copie continue de se faire avec un petit ralentissement au moment de la coupure.

copy file

Une fois le second nœud disponible, le disque se resynchronise sur les serveurs starwind.

Il est possible de voire les événements dans les logs sur la console.

Starwind events

Conclusion

Starwind est un produit qui se situe entre SANsymfony et le rôle cible iSCSI disponible dans Windows.

J’ai découvert ce logiciel il y a maintenant quelques années quand j’ai eu besoin de présenter du stockage disponible sur un serveur physique vers un autre serveur pour le déploiement de WSUS qui ne supporte pas le stockage des mises à jour sur un partage réseau.

La fonctionnalité de HA est pour moi un vrai plus par rapport au rôle Windows.

J’ai également pu mettre en LAB, le couplage StarWind et Hyper-V pour la mise en cluster de machines virtuelles dans une solution Hyperconvegée qui permet de s’affranchir d’une baie de stockage et donc de réduire les coûts, ce qui permet pour les petites structures d’avoir un vrai PRA.

Romain Drouche
Architecte Système | MCSE: Core Infrastructure
Expert en infrastructures IT avec plus de 15 ans d’expérience sur le terrain. Actuellement Chef de projet Systèmes et Réseaux et Référent SSI (Sécurité des Systèmes d’Information), je mets mon expertise au service de la fiabilité et de la sécurité des environnements technologiques.

Laisser un commentaire