Le MOB selon vCenter
Le MOB de vCenter n’a aucun rapport avec les MMORPG (ou encore MEUPORG ^^) mais fait plutôt référence au Managed Object Browser En fait, c’est un naviguateur d’objet (au sens API) accessible directement depuis le serveur vCenter :
https://vcenter/mob/
PowerCLI utilise des objets dits managés (managed objects) qui sont accessible via la cmdlet Get-View
Par exemple :
Get-View -ViewType VirtualMachine
Get-VM | Get-View
Pourquoi utiliser des objets managés ? Tout simplement parce que certaines propriétés ne sont accessibles que via des objets managés.
Pour mieux comprendre, il suffit d’exécuter 2 commandes et comparer les résultats.
Get-VM -Name "VM"
Get-View -ViewType VirtualMachine | Where-Object { $_.Name -eq "VM" }
Donc, ici nous attaquons le même objet vCenter (la machine virtuelle finale) mais de 2 manières différentes.
Ce qui est intéressant, est de voir quand utiliser telle ou telle manière. Pour cela, regardons les méthode/propriétés de chaque accès :
Get-VM -Name "VM" | Get-Member
Get-View -ViewType VirtualMachine | Where-Object { $_.Name -eq "VM" } | Get-Member
Les méthodes et propriétés ne sont donc pas du tout les mêmes, et comme vous pouvez le voir, le Get-View donne accès à moult méthodes/propriétés.
La question (et le but de ce billet initialement) est de savoir qu’est ce qu’on peut utiliser suivant le type d’objet instancié.
Pour cela, plusieurs choix : Soit passer par le Get-View directement en PowerCLI. Cela peut être pratique pour un cas concret mais assez long à utiliser en général (pas en temps d’exécution, le Get-View est généralement bien plus rapide que les cmdlets classiques, mais plus en termes de tatonnement
).
Soit accéder au SDK du PowerCLI très pratique, complet mais ! complet :p C’est très utile (ne serait-ce que pour la curiosité personnelle) de naviguer dans le SDK pour voir ce que l’on peut y trouver. Cependant, son principal défaut est que cela reste générique et ne sera jamais plaqué à ce que vous recherchez.
Au final, il y a le MOB (pour Managed Object Browser). Ce navigateur permet d’avoir rapidement toute les informations que l’on peut récupérer.
La page d’accueil est peu user-friendly
mais il suffit de cliquer sur le lien content pour commencer a retrouver des choses que l’on connait.
La page suivante présente une liste de tous les objets racine et notemment un rootFolder qui nous intéresse :
Ensuite vous allez retrouver des éléments qui parle un peu plus
, à savoir datacenter, datastore, host, etc! Par exemple, sur la page d’un hôte, on pourra retrouver plein d’informations relatives aux réseaux, datastore, machines virtuelles hébergées, configuration hardware, etc!
Le principal intêret du MOB est de pouvoir naviguer en cliquant sur les liens qui représentent les objets vCenter de votre infrastructure.
Si vous prenez l’habitude d’utiliser le MOB et de s’appuyer sur le SDK pour la partie définition/déclaration des API, vous aurez le couple gagnant, je peux vous l’assurer !