Recherche de site Web

Comment créer et ajouter des référentiels de stockage Citrix XenServer – Partie 4


Dans le quatrième article de cette série XenServer, les solutions de stockage seront abordées. Tout comme la mise en réseau, les solutions de stockage dans XenServer sont souvent difficiles à comprendre au début. Avant de commencer toute configuration, la nouvelle terminologie et les nouveaux concepts impliqués dans le stockage XenServer doivent être discutés.

Mise à jour : En mai 2016, Citrix a publié la nouvelle version de la plateforme XenServer 7. Pour l'installation, suivez : Nouvelle installation de XenServer 7.

XenServer introduit plusieurs nouveaux termes dans la liste terminologique de stockage traditionnelle. Bien qu’il soit toujours important de comprendre les concepts lorsque l’on travaille avec n’importe quel système informatique, le stockage n’est pas aussi crucial que l’article précédent traitant des concepts de mise en réseau. Cependant, cet article prendra tout de même le temps d’expliquer et de tenter de clarifier ces notions de stockage.

La première chose à retenir avec le stockage XenServer est que nous disposons d'un stockage pour l'hôte XenServer réel, puis que nous disposons également d'un stockage pour l'invité ou les machines virtuelles qui s'exécuteront sur l'hôte XenServer. D'un point de vue conceptuel, cela est simple à comprendre, mais sa gestion peut s'avérer une tâche ardue si l'administrateur n'est pas familier avec les objectifs de chacun des aspects du stockage.

Le premier terme est connu sous le nom de « SR » ou Storage Repository. Il s'agit sans doute du terme le plus important dans le domaine du stockage XenServer, car il représente le support physique sur lequel les disques des machines virtuelles seront stockés et récupérés. Les référentiels de stockage peuvent être différents types de systèmes de stockage, notamment un stockage local connecté physiquement à l'hôte XenServer, un LUN iSCSI/Fibre Channel, des partages de fichiers réseau NFS ou un stockage sur une appliance de stockage Dell/NetApp.

Les référentiels de stockage peuvent être partagés ou dédiés et peuvent prendre en charge de nombreuses fonctionnalités utiles telles que le clonage rapide, l'allocation fragmentée (stockage provisionné selon les besoins de la machine virtuelle) et les images de disque virtuel redimensionnables (nous en parlerons plus tard).

Les référentiels de stockage, SR, sont logiquement connectés à un hôte XenServer avec ce que l'on appelle un Périphérique de bloc physique, plus communément appelé « PBD ». Le PBD est simplement une référence à un emplacement de stockage. Ces objets PBD peuvent être « branchés » sur un hôte XenServer pour permettre à cet hôte de lire/écrire des informations sur ce référentiel de stockage.

L'objectif des référentiels de stockage est principalement de stocker les fichiers Virtual Disk Image (VDI) de la machine virtuelle. Les fichiers VDI sont des emplacements sur un SR qui ont été alloués pour contenir le système d'exploitation et d'autres fichiers pour la machine virtuelle exécutée sur l'hôte XenServer. Les fichiers VDI peuvent être de plusieurs types différents. Le type est déterminé par le type de référentiel de stockage.

Les types VDI courants dans XenServer sont les volumes logiques (LV) gérés par Logical Volume Manager, le disque dur virtuel (VHD), ou ils peuvent être des numéros d'unité logique (LUN) sur un périphérique de stockage Dell ou NetApp. Remarque : Cet article utilisera des LUN sur un périphérique de stockage Dell.

Ces fichiers VDI sont connectés logiquement aux machines virtuelles via un objet appelé Virtual Block Device, communément appelé « VBD ». Ces objets VBD peuvent être attachés à des invités virtuels, ce qui permet ensuite à la machine invitée d'accéder aux données stockées dans ce VDI particulier sur un SR respectif.

Tout comme la mise en réseau dans XenServer, lire sur le stockage est une chose, mais être capable de voir la relation entre chacun de ces éléments consolide souvent les concepts. Les diagrammes courants utilisés pour représenter les concepts de stockage XenServer déroutent souvent les nouveaux utilisateurs, car ils sont souvent lus de manière linéaire. Vous trouverez ci-dessous une de ces images empruntées à Citrix.

De nombreuses personnes lisent ceci linéairement de gauche à droite en pensant que chaque pièce est un dispositif physique distinct. Ce n’est pas le cas et cela conduit souvent à beaucoup de confusion sur le fonctionnement du stockage XenServer. Le graphique ci-dessous tente d'expliquer les concepts d'une manière moins linéaire mais plus pragmatique.

Espérons que le graphique ci-dessus ne confonde pas davantage les individus à propos du stockage XenServer. La deuxième image tente d'afficher les connexions logiques (PBD et VBD) qui sont utilisées pour connecter les XenServers et les invités au stockage distant via une connexion réseau réelle.

Avec la conceptualisation à l'écart ; la configuration peut commencer. Rappelant le premier article de cette série, ce guide utilise un périphérique de stockage iSCSI Dell PS5500E pour le stockage des disques de la machine virtuelle (invités). Ce guide ne passera pas en revue la configuration du périphérique Dell iSCSI.

Configuration du système:

  1. XenServer 6.5 installé et corrigé (partie 1 de la série)
  2. Périphérique iSCSI Dell PS5500E (d'autres périphériques iSCSI peuvent être utilisés en remplaçant simplement les informations d'environnement si nécessaire).
  3. Interfaces réseau XenServer configurées (partie 3 de la série).
  4. Le périphérique iSCSI et XenServer peuvent logiquement se voir (via l'utilitaire ping).
  5. Serveur CIFS (SAMBA) exécutant et hébergeant un partage de fichiers ISO sur CD (non requis mais très utile).

Création d'un référentiel de stockage Citrix XenServer

Ce premier processus passera par les étapes de création d'un initiateur logiciel iSCSI depuis l'hôte XenServer vers le Dell PS5500E.

Ce LUN particulier utilise le Challenge-Handshake Authentication Protocol (CHAP) pour restreindre l'accès au volume iSCSI à certaines parties autorisées.

Pour créer le référentiel de stockage, une commande traditionnelle 'xe' sera exécutée. Les informations iSCSI appropriées doivent être obtenues avant de créer le référentiel de stockage.

La transmission du paramètre 'sr-probe' à l'utilitaire 'xe' demandera au XenServer d'interroger un périphérique de stockage pour l'IQN iSCSI (nom qualifié iSCSI).

La première commande semblera intense au début, mais elle n’est pas aussi mauvaise qu’il y paraît.


xe sr-probe type=lvmoiscsi device-config:target=X.X.X.X device-config:chapuser="tecmint" device-config:chappassword="tecmint_chap"

Cette première commande est nécessaire pour collecter le IQN SCSI pour la configuration du référentiel de stockage. Avant de continuer, examinons toutes les parties de cette commande.

  1. sr-probe – Utilisé pour interroger le périphérique iSCSI pour obtenir des informations sur le volume créé pour cet hôte XenServer.
  2. type= Utilisé pour indiquer au XenServer le type de référentiel de stockage. Cela varie en fonction du système utilisé. En raison de l'utilisation du Dell PS5500, lvm sur iSCSI est utilisé dans cette commande. Assurez-vous de modifier pour l'adapter au type de périphérique de stockage.
  3. device-config:target= Utilisé pour indiquer au XenServer quel périphérique iSCSI interroger par adresse IP.
  4. device-config:chapuser= Ceci est utilisé pour s'authentifier auprès du périphérique iSCSI. Dans cet exemple, un volume iSCSI a été créé précédemment pour l'utilisateur « tecmint ». En envoyant le nom d'utilisateur et le mot de passe dans cette commande, le périphérique iSCSI répondra avec les informations nécessaires pour terminer la création du référentiel de stockage.
  5. device-config:chappassword= Il s'agit du mot de passe du nom d'utilisateur CHAP ci-dessus.

Une fois la commande saisie et soumise, le XenServer tentera de se connecter au périphérique iSCSI et renverra certaines informations nécessaires pour ajouter réellement ce périphérique iSCSI en tant que référentiel de stockage.

Vous trouverez ci-dessous ce que le système de test a renvoyé à partir de cette commande.


Error code: SR_BACKEND_FAILURE_96
Error parameters: , The SCSIid parameter is missing or incorrect , <?xml version"1.0" ?>
<iscsi-target-iqns>
        <TGT>
                 <Index>
                              0
                 </Index>
                 <IPAddress>
                 </IPAddress>
                 <TargetIQN>
                              iqn.2001-05.com.equallogic:0-8a096-0d9a4ab02-46600020343560ef-xenct-xen2
                 </TargetIQN>
        </TGT>
        <TGT>
                 <Index>
                 
                 </Index>
                 <IPAddress>

                 </IPAddress>
                 <TargetIQN>

                 </TargetIQN>
        </TGT>
</iscsi-target-iqns>

L'élément mis en évidence ici est connu sous le nom de iSCSI IQN. Ceci est très important et est nécessaire pour déterminer le SCSIid du référentiel de stockage. Avec ces nouvelles informations, la commande précédente peut être modifiée pour obtenir le SCSIid.


xe sr-probe type=lvmoiscsi device-config:target=X.X.X.X device-config:targetIQN=iqn.2001-05.com.equallogic:0-8a0906-0d9a4ab02-46600020343560ef-xenct-xen2 device-config:chapuser="tecmint" device-config:chappassword="tecmint_chap"

La seule chose ajoutée à la commande est la strophe targetIQN. En émettant cette nouvelle commande, le système répondra avec la dernière information nécessaire pour créer un référentiel de stockage iSCSI. Cette dernière information est l'identifiant SCSI.


Error code: SR_BACKEND_FAILURE_107
Error parameters: , The SCSIid parameter is missing or incorrect , <?xml version"1.0" ?>
<iscsi-target>
        <LUN>
                 <vendor>
                        EQLOGIC
                 </vendor>
                 <serial>
                 </serial>
                 <LUNid>
                         0
                 </LUNid>
                 <size>
                         107379425280
                 </size>
                 <SCSIid>
                         36090a028b04a9a0def60353420006046
                 </SCSIid>
        </LUN>
</iscsi-target>

À partir de ce point, tous les éléments nécessaires pour créer un référentiel de stockage iSCSI sont disponibles et il est temps d'émettre la commande pour ajouter ce SR à ce XenServer particulier. La création du référentiel de stockage à partir des informations combinées s'effectue comme suit :


xe sr-create name-label="Tecmint iSCSI Storage" type=lvmoiscsi content-type=user device-config:target=X.X.X.X device-config:port=3260 device-config:targetIQN=iqn.2001-05.com.equallogic:0-8a0906-0d9a4ab02-46600020343560ef-xenct-xen2 device-config:chapuser="tecmint" device-config:chappassword="tecmint_chap" device-config:SCSIid=36090a028b04a9a0def60353420006046

Si tout se passe bien, le système se connectera au périphérique iSCSI, puis renverra le UUID du référentiel de stockage nouvellement ajouté.


bea6caa4-ecab-8509-33a4-2cda2599fb75

La sortie UUID est un bon signe ! Comme pour toutes les tâches d’administration système, c’est toujours une bonne idée de confirmer que la commande a réussi. Ceci peut être accompli avec une autre commande 'xe'.


xe sr-list name-label="Tecmint iSCSI Storage"
Exemple de sortie

uuid ( RO)                 : bea6caa4-ecab-8509-33a4-2cda2599fb75
          name-label ( RW) : Tecmint iSCSI Storage
    name-description ( RW) :
                host ( RO) : xenct-xen2
                type ( RO) : lvmoiscsi
        content-type ( RO) : user

À partir de la sortie CLI, ce XenServer s'est connecté avec succès au périphérique Dell iSCSI et est prêt à stocker les fichiers VDI invités.

Création d'un référentiel de stockage ISO

La série d'étapes suivante parcourt le processus de création d'une bibliothèque ISO. Les fichiers ISO sont généralement des images du support d'installation d'un disque compact (CD).

En créant un référentiel de stockage spécial pour ces fichiers ISO, l'installation de nouveaux invités peut être effectuée très rapidement. Lorsqu'un administrateur souhaite créer un nouvel invité, il peut simplement sélectionner un des fichiers ISO qui existent dans cette bibliothèque ISO plutôt que d'avoir à mettre physiquement un CD dans un XenServer du pool.

Cette partie du guide supposera que l'utilisateur dispose d'un serveur SAMBA fonctionnel. Si aucun serveur SAMBA n'est configuré, n'hésitez pas à lire cet article sur la façon d'effectuer cette tâche dans Red Hat/Fedora (j'aurai un guide du serveur Debian SAMBA à l'avenir) :

  1. Configurer le serveur Samba pour le partage de fichiers

La première étape consiste à rassembler les informations d'identification et de configuration nécessaires pour la bibliothèque SAMBA ISO. Une fois que le nom d'utilisateur, le mot de passe et les informations de connectivité sont disponibles, une simple variante de commande 'xe' peut être utilisée pour connecter la bibliothèque SAMBA au XenServer.


xe-mount-iso-sr //<servername>/ISO -o username=<user>,password=<password>

Cette commande n’affichera rien à l’écran sauf en cas d’échec. Pour confirmer qu'il a bien monté le partage ISO SAMBA, exécutez une autre commande 'xe' :


xe sr-list
Exemple de sortie

uuid ( RO)                 : 1fd75a51-10ee-41b9-9614-263edb3f40d6
          name-label ( RW) : Remote ISO Library on: //                  /ISO
    name-description ( RW) :
                host ( RO) : xenct-xen2
                type ( RO) : iso
        content-type ( RO) : iso

Cet hôte XenServer est désormais configuré avec à la fois un dépôt de stockage iSCSI ainsi qu'une bibliothèque ISO CIFS pour stocker les supports d'installation des machines virtuelles (invités).

Les prochaines étapes seront la création de machines virtuelles et la connexion de ces systèmes aux réseaux appropriés de l'article précédent sur les réseaux.