Titre

Ajouter une VM à un catalogue en Powershell pour Citrix Xendesktop V7.5

Comment ajouter une VM à un catalogue en ligne de commande pour Xendesktop V7.5

L'exemple suivant se base sur une infrastructure XenDesktop 7.5.
L'hyperviseur est ici celui de Microsoft, sous 2012 R2.

Commencez par charger les modules Citrix :

Lien vers le fichier : cliquez ici

La commande pour ajouter une machine dans un catalogue Citrix ressemble à ceci :

Lien vers le fichier : cliquez ici

Il vous faut donc renseigner ces paramètres :
CatalogUid
HypervisorConnectionUid
MachineName
HostedMachineId

On va commencer par récupérer le HypervisorConnectionUid, c'est à dire l'UID de la connexion de l'hyperviseur.

Pour cela utilisez la commande

Lien vers le fichier : cliquez ici

Ensuite récupérez l'Uid du catalogue où vous voulez déclarer votre machine.
Pour cela j'ai utilisez cette commande :

Lien vers le fichier : cliquez ici

Voici comment faire si votre hyperviseur est MS Hyper-V 2012.

Depuis la machine qui héberge la Virtual Machine Manager Console, tapez :

Lien vers le fichier : cliquez ici

Exemple d'Id récupéré et qui servira à renseigner le HostedMachineId :

Pour mettre tout votre code dans un seul script, vous allez être embêtés car les commandes Citrix doivent être passées depuis un DDC alors que les commandes d'interrogation de votre Hyperviseur doivent être exécutées sur une autre machine.

Heureusement, en Powershell vous pouvez exécuter du code à distance. Voici un exemple pour récupérer l'ID depuis la machine qui dispose de la console de gestion de l'hyperviseur :

Lien vers le fichier : cliquez ici

On va maintenant voir l'autre méthode pour récupérer le HostedMachineId.
On va utiliser les commandes Powershell de Citrix et passer par la connexion qui pointe sur votre hyperviseur et qui est déclarée sous Hosting dans la console de Citrix Studio.

Pour cela connectez vous sur un DDC Citrix, lancez une console powershell et tapez :

Lien vers le fichier : cliquez ici

De là vous pouvez naviguer dans l'arborescence Hyper-V comme si vous étiez en train de naviguer dans un système de fichiers Linux.
Ainsi vous pouvez utiliser les commandes suivantes :

Lien vers le fichier : cliquez ici

Beaucoup d'information seront affichées.
Si vous ne souhaitez afficher que les noms, faites :

Lien vers le fichier : cliquez ici

Exemple de résultat de commande ls filtrée

Ce que vous voyez la racine de XdHyp:\Connections correspond aux connexion vers vos hyperviseurs que vous retrouverez dans la console Citrix Studio, sous Hosting :

Entrez dans l'arborescence d'une connexion. Ici l'une d'elle se nomme Test, aussi pour y entrer, tapez cd Test (les majuscules et minuscules sont importantes).

A partir de là, ce que vous verrez avec la commande ls | Select PSChildName (par exemple) correspondra à ce que vous avez sur votre Hyperviseur

Notre but va être d'aller dans l'emplacement qui contient la VM que vous voulez ajouter au catalogue.

Ici la VM à ajouter se trouve sous France, production etc ... Donc commencez par taper cd France etc .. jusqu'à l'emplacement de la machine à ajouter puis notez précisément le chemin d'accès complet à votre machine (le PSPath de mémoire)

Quand vous aurez le chemin complet de votre VM, vous pourrez récupérer son ID en vous inspirant de cette commande

Lien vers le fichier : cliquez ici

Comme chaque commande peut être très longue à répondre, sachez que vous pouvez extraire l'ensemble du contenu d'une partie de l'arborescence et la filtrer pour n'avoir que les machines avec ce type de commande :

Lien vers le fichier : cliquez ici

Une fois que vous aurez récupéré tout le nécessaire pour ajouter une machine dans un catalogue, et donc tout le nécessaire pour renseigner la commande New-BrokerMachine, y compris l'ID de la VM à ajouter qui servira à renseigner le paramètre HostedMachineId, la prochaine étape sera d'affecter votre machine à un delivery group. Pour cela utilisez ce type de commande :

Lien vers le fichier : cliquez ici

Si vous voulez affecter un user à la machine, faites ainsi :

Lien vers le fichier : cliquez ici

Au final voici un exemple complet d'ajout d'une VM dans le catalogue

Lien vers le fichier : cliquez ici

Si vous voulez contrôler l'id utilisé par Citrix d'une machine déjà entrée dans le catalogue, utilisez ce type de commande :

Lien vers le fichier : cliquez ici