Vous pouvez gérer vSphere Auto Deploy avec des cmdlets PowerCLI pour créer des règles qui associent les hôtes ESXi à divers objets sur la cible vCenter.
Vous pouvez gérer vSphere Auto Deploy avec les cmdlets PowerCLI afin de créer des règles qui associent des hôtes à des profils d'image, des profils d'hôte, des scripts personnalisés et des emplacements sur l'instance cible de vCenter Server. Vous pouvez également mettre à niveau les hôtes en testant la conformité aux règles et en résolvant les problèmes de conformité.
Gérer vSphere Auto Deploy avec les cmdlets PowerCLI
Vous pouvez gérer vSphere Auto Deploy avec les cmdlets PowerCLI afin de créer des règles qui associent des hôtes à des profils d'image, des profils d'hôte, des scripts personnalisés et des emplacements sur la cible vCenter Server. Vous pouvez également mettre à niveau les hôtes en testant la conformité aux règles et en résolvant les problèmes de conformité.
Présentation du processus vSphere Auto Deploy au moyen de l'utilisation de PowerCLI
Pour pouvoir utiliser vSphere Auto Deploy, vous devez connaître son fonctionnement, installer le serveur vSphere Auto Deploy, installer PowerCLI, écrire les règles PowerCLI qui provisionnent les hôtes et mettre sous tension les hôtes à démarrer avec le profil d'image que vous définissez. Vous pouvez personnaliser le profil d'image, le profil d'hôte et l'emplacement de vCenter Server.
Reportez-vous à Scénario vSphere PowerCLI pour vSphere Auto Deploy pour effectuer un exercice pas à pas qui vous aidera à configurer votre premier environnement vSphere Auto Deploy.
Pour provisionner les hôtes dans votre environnement avec vSphere Auto Deploy, vous pouvez suivre les instructions suivantes.
- Déployez vCenter Server.
Le serveur vSphere Auto Deploy est inclus.
- Configurez le type de démarrage du service vSphere Auto Deploy.
Reportez-vous à la section Préparer le système pour vSphere Auto Deploy.
- Installez PowerCLI qui comporte les applets de commande de vSphere Auto Deploy et de vSphere ESXi Image Builder.
Voir Configurer vSphere ESXi Image Builder, Utilisation des applets vSphere Auto Deploy et Utilisation d'applets de commande VMware.Image Builder.
- Recherchez le profil d'image qui contient les VIB à déployer sur les hôtes.
- Généralement, vous ajoutez les dépôts qui contiennent le logiciel requis à votre session PowerCLI, puis vous sélectionnez un profil d'image à partir de l'un de ces dépôts.
- Pour créer un profil d'image personnalisé, utilisez les applets de commande de vSphere ESXi Image Builder pour cloner un profil d'image existant et ajoutez les VIB personnalisés au clone. Ajoutez le profil d'image personnalisé à la session PowerCLI.
Utilisez vSphere ESXi Image Builder pour la personnalisation uniquement si vous devez ajouter ou supprimer des VIB. Dans la plupart des cas, vous pouvez ajouter à la session PowerCLI le dépôt dans lequel VMware héberge les profils d'image sous la forme d'une URL.
- Lancez une session PowerCLI et connectez-vous au système vCenter Server dans lequel vSphere Auto Deploy est enregistré.
- Utilisez l'applet de commande New-DeployRule PowerCLI pour écrire une règle qui attribue le profil d'image à un hôte, à plusieurs hôtes définis par un modèle ou à tous les hôtes.
New-DeployRule -Name "testrule" -Item image-profile -AllHosts
Reportez-vous à la section Attribuer un profil d'image à des hôtes.
Note : vSphere Auto Deploy est optimisé pour provisionner les hôtes possédant un mappage d'adresses MAC fixe à une adresse IP dans DHCP (appelé parfois réservation DHCP). Si vous voulez utiliser une adresse IP statique, vous devez configurer un profil d'hôte pour demander la personnalisation de l'hôte. Pour plus d'informations, consultez la documentation Profils d'hôte vSphere. - Mettez sous tension les hôtes à provisionner.
- Configurez l'hôte que vous avez provisionné comme hôte de référence pour le profil d'hôte.
Vous pouvez définir les paramètres syslog de l'hôte de référence, les paramètres de pare-feu, le stockage, les communications réseau, etc.
- Configurez l'hôte que vous avez provisionné comme hôte de référence pour le profil d'hôte.
Vous pouvez définir les paramètres syslog de l'hôte de référence, les paramètres de pare-feu, le stockage, les communications réseau, etc. Reportez-vous à la section Configuration d'un hôte de référence vSphere Auto Deploy.
- Créez et exportez un profil d'hôte pour l'hôte de référence.
Voir la documentation Profils d'hôte.
- Pour provisionner plusieurs hôtes avec le profil d'hôte, utilisez l'applet Copy-DeployRule afin de modifier la règle créée précédemment.
Vous pouvez modifier la règle pour attribuer non seulement un profil d'image, mais également un profil d'hôte, un emplacement vCenter Server et un bundle de scripts personnalisé.
Copy-DeployRule -DeployRule "testrule" -ReplaceItem my_host_profile_from_reference_host,my_target_cluster -ReplacePattern "ipv4=192.XXX.1.10-192.XXX.1.20"
Où my_host_profile_from_reference_host est le nom du profil d'hôte de référence et my_target_cluster le nom du cluster cible.
- Effectuez les opérations de test et de réparation de conformité pour corriger les hôtes.
Reportez-vous à la section Tester et réparer la conformité aux règles.
- Vérifiez que les hôtes que vous provisionnez répondent aux conditions suivantes.
- Chaque hôte est connecté au système vCenter Server.
- Les hôtes ne sont pas en mode maintenance.
- Aucune erreur de conformité n'est associée aux hôtes.
- Chaque hôte possédant un profil d'hôte qui requiert une entrée utilisateur possède des informations de personnalisation de l'hôte mises à jour.
Corrigez les problèmes d'association et de conformité des hôtes et redémarrez les hôtes jusqu'à ce que tous les hôtes répondent aux conditions requises.
Lisez pour consulter une introduction au processus de démarrage, découvrir les différences entre le premier démarrage et les suivants, et obtenir une vue d'ensemble de la personnalisation de l'hôte.
Utilisation des applets vSphere Auto Deploy
Les applets de commande vSphere Auto Deploy sont implémentées comme des applets de commande Microsoft PowerShell et incluses dans PowerCLI. Les utilisateurs des applets de commande vSphere Auto Deploy peuvent tirer parti de toutes les fonctions PowerCLI.
Les utilisateurs PowerShell expérimentés peuvent utiliser les applets de commande vSphere Auto Deploy comme n'importe quelles autres applets de commande PowerShell. Si PowerShell et PowerCLI ne vous sont pas familiers, les conseils suivants peuvent être utiles.
Vous pouvez taper des cmdlets, des paramètres et des valeurs de paramètres dans le shell PowerCLI.
- Obtenez des informations d'aide en exécutant Get-Help
cmdlet_name
. - Notez que PowerShell ne tient pas compte de la casse.
- Utilisez la saisie semi automatique pour les noms de cmdlet et de paramètre.
- Formatez les sorties de variables et d'applets de commande en utilisant Format-List ou Format-Table, ou leur version abrégée fl ou ft. Pour obtenir plus d'informations, exécutez l'applet de commande Get-Help Format-List.
Envoi des paramètres en fonction du nom
Copy-DeployRule -DeployRule testrule -ReplaceItem MyNewProfile
La plupart des exemples de la documentation Installation et configuration de vCenter Server transmettent les paramètres par nom.
Envoi des paramètres sous forme d'objets
Vous pouvez transmettre les paramètres sous forme d'objets si vous voulez utiliser des scripts et l'automatisation. Il est utile d'envoyer les paramètres sous forme d'objets avec les cmdlets qui retournent plusieurs objets et les cmdlets qui retournent un seul objet. Prenez l'exemple suivant.
- Liez à une variable l'objet qui encapsule les informations de conformité aux règles d'un hôte.
$tr = Test-DeployRuleSetCompliance MyEsxi42
- Affichez la propriété itemlist de l'objet pour voir la différence entre le contenu de l'ensemble de règles et ce que l'hôte utilise actuellement.
$tr.itemlist
- Corrigez l'hôte de manière à utiliser l'ensemble de règles révisé à l'aide de l'applet de commande Repair-DeployRuleSetCompliance avec la variable.
Repair-DeployRuleSetCompliance $tr
L'exemple corrige l'hôte lors du démarrage suivant.
Présentation de la cmdlet vSphere Auto Deploy PowerCLI
Vous définissez les règles qui attribuent des profils d'image et des profils d'hôte en utilisant un groupe de cmdlets PowerCLI inclus dans PowerCLI.
Si vous ne connaissez pas PowerCLI, lisez la documentation PowerCLI et consultez Utilisation des applets vSphere Auto Deploy. Vous pouvez obtenir de l'aide sur les commandes depuis l'invite PowerShell.
- Aide de base : Get-Help cmdlet_name
- Aide détaillée : Get-Help cmdlet_name -Detailed
Commande | Description |
---|---|
Get-DeployCommand | Retourne une liste de cmdlets vSphere Auto Deploy. |
New-DeployRule | Crée une règle avec les éléments et les modèles spécifiés. |
Set-DeployRule | Met à jour une règle existante avec les éléments et les modèles spécifiés. Vous ne pouvez pas mettre à niveau une règle qui appartient à un groupe de règles. |
Get-DeployRule | Extrait les règles avec les noms spécifiés. |
Copy-DeployRule | Clone et met à jour une règle existante. |
Add-DeployRule | Ajoute une ou plusieurs règles au groupe de règles opérationnelles et, par défaut, au groupe de règles actives. Utilisez le paramètre NoActivate pour ajouter une règle uniquement au groupe de règles opérationnelles. |
Remove-DeployRule | Supprime une ou plusieurs règles du groupe de règles opérationnelles et du groupe de règles actives. Exécutez cette commande avec le paramètre -Delete pour supprimer complètement la règle. |
Set-DeployRuleset | Définit explicitement la liste des règles du groupe de règles opérationnelles. |
Get-DeployRuleset | Extrait le groupe de règles opérationnelles ou le groupe de règles actives en cours. |
Switch-ActiveDeployRuleset | Active un groupe de règles pour que les nouvelles demandes soient évaluées via le groupe de règles. |
Get-VMHostMatchingRules | Extrait les règles correspondant à un modèle. Par exemple, vous pouvez récupérer toutes les règles qui s'appliquent à un ou des hôtes. Utilisez cette cmdlet principalement pour le débogage. |
Test-DeployRulesetCompliance | Détermine si les éléments associés à un hôte défini sont conformes au groupe de règles actives. |
Repair-DeployRulesetCompliance | Compte tenu de la sortie de Test-DeployRulesetCompliance, cette cmdlet met à jour le profil d'image, le profil d'hôte et l'emplacement de chaque hôte dans l'inventaire vCenter Server. La cmdlet peut appliquer des profils d'image et des profils d'hôte ou transférer des hôtes vers des dossiers ou des clusters prédéfinis sur le système vCenter Server. |
Apply-EsxImageProfile | Associe le profil d'image spécifié à l'hôte défini. |
Get-VMHostImageProfile | Extrait le profil d'image utilisé par un hôte donné. Cette cmdlet est différente de la cmdlet Get-EsxImageProfile dans vSphere ESXi Image Builder. |
Repair-DeployImageCache | Utilisez cette cmdlet uniquement si le cache d'image vSphere Auto Deploy est supprimé accidentellement. |
Get-VMHostAttributes | Extrait les attributs d'un hôte, qui sont utilisés lorsque le serveur vSphere Auto Deploy évalue les règles. |
Get-DeployMachineIdentity | Retourne une valeur de chaîne que vSphere Auto Deploy utilise pour lier logiquement un hôte ESXi dans vCenter Server à une machine physique. |
Set-DeployMachineIdentity | Lie logiquement un objet hôte dans la base de données vCenter Server à un ordinateur physique. Utilisez cette cmdlet pour ajouter des hôtes sans définir de règles. |
Get-DeployOption | Extrait les options de configuration globale vSphere Auto Deploy. Cette cmdlet prend actuellement en charge l'option vlan-id qui spécifie l'ID VLAN par défaut pour le réseau de gestion ESXi d'un hôte provisionné avec vSphere Auto Deploy. vSphere Auto Deploy utilise cette valeur uniquement si l'hôte démarre sans profil d'hôte. |
Set-DeployOption | Définit la valeur d'une option de configuration globale. Prend actuellement en charge l'option vlan-id pour définir l'ID VLAN par défaut du réseau de gestion ESXi. |
Add-ProxyServer | Ajoute un serveur proxy à la base de données vSphere Auto Deploy. Exécute la commande avec le paramètre -Address pour spécifier l'adresse IPv4 ou IPv6. L'adresse peut comprendre un numéro de port. |
List-ProxyServer | Liste les serveurs proxy actuellement enregistrés avec vSphere Auto Deploy. |
Delete-ProxyServer | Supprime au moins un serveur proxy de la liste des serveurs proxy enregistrés avec vSphere Auto Deploy. Vous pouvez exécuter la commande avec le paramètre -id de la liste des serveurs proxy ou avec le paramètre -Address en spécifiant l'adresse IPv4 ou IPv6 du serveur proxy que vous souhaitez supprimer. |
Add-ScriptBundle | Ajoute au moins un bundle de scripts au serveur vSphere Auto Deploy. |
Get-ScriptBundle | Récupère la liste des bundles de scripts sur le serveur vSphere Auto Deploy et les scripts qu'ils contiennent. |
Remove-ScriptBundle | Supprime un bundle de scripts de vSphere Auto Deploy. Applicable pour vSphere version 6.7 et versions ultérieures. |
Get-CustomCertificate | Récupère le certificat d'hôte personnalisé chargé dans AutoDeploy. Vous devez exécuter la commande avec le paramètre -HostId [MAC_Address | BIOS_UUID]. La première fois que vous ajoutez des certificats personnalisés, vous ne voyez aucun certificat renvoyé par cette cmdlet. |
List-CustomCertificates | Récupère des informations sur tous les certificats d'hôte personnalisés utilisés par Auto Deploy. La liste fournit des détails sur le nom du certificat, Host ID et Associated Host Name, ce qui reflète le nom du vCenter Server pour le serveur Auto Deploy. |
Add-CustomCertificate | Ajoute un certificat personnalisé au magasin de certificats de point de terminaison VMware et l'associe à un hôte ESXi. Le certificat devient actif lors du redémarrage de l'hôte. Vous pouvez utiliser la cmdlet Get-CustomCertificate pour récupérer la clé de certificat d'hôte personnalisée. Vous pouvez exécuter la commande avec le paramètre -HostId [MAC_Address | BIOS_UUID] pour associer le certificat à l'hôte, en spécifiant une -Key [file:///path/to/key.key] et un -Cert [file:///path/to/cert.crt]. L'utilisation de cette cmdlet nécessite le privilège AutoDeploy.Rule.Create sur le dossier racine de vCenter Server. |
Remove-CustomCertificate | Supprime un ensemble de certificats d'hôte personnalisés d'Auto Deploy. Les entrées de certificat sont supprimées de la base de données et les fichiers de certificat sont supprimés du magasin de fichiers. Les hôtes qui ont déjà démarré avec un certificat personnalisé doivent être redémarrés pour recevoir un nouveau certificat. Vous devez fournir au moins l'un des paramètres -Cert ou -HostId. L'utilisation de cette cmdlet nécessite le privilège AutoDeploy.Rule.Create sur le dossier racine de vCenter Server. |
Attribuer un profil d'image à des hôtes
Pour pouvoir provisionner un hôte, vous devez créer des règles qui attribuent un profil d'image à chaque hôte à provisionner en utilisant vSphere Auto Deploy.
Les règles d'extensibilité de vSphere Auto Deploy veillent à ce que les VIB au niveau CommunitySupported ne contiennent que des fichiers provenant de certains emplacements prédéfinis, tels que le chemin du plug-in ESXCLI, le chemin du plug-in jumpstart, etc. Si vous ajoutez un VIB d'un emplacement différent à un profil d'image, un avertissement est généré. Vous pouvez remplacer l'avertissement en utilisant l'option force.
Si vous appelez le cmdlet New-DeployRule sur un profil d'image qui inclut des VIB de niveau CommunitySupported qui violent la règle, configurez $DeployNoSignatureCheck = $true
avant d'ajouter le profil d'image. Avec ce réglage, le système ignore la validation de la signature et ne vérifie pas les règles d'extensibilité.
Procédure
Résultats
Lorsque l'hôte démarre depuis iPXE, il affiche les attributs de la machine sur la console. Utilisez le même format des attributs lors de l'écriture des règles de déploiement.
****************************************************************** * Booting through VMware AutoDeploy... * * Machine attributes: * . asset=No Asset Tag * . domain=vmware.com * . hostname=myhost.mycompany.com * . ipv4=XX.XX.XXX.XXX * . mac=XX:Xa:Xb:Xc:Xx:XX * . model=MyVendorModel * . oemstring=Product ID: XXXXXX-XXX * . serial=XX XX XX XX XX XX... * . uuid=XXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX * . vendor=MyVendor ******************************************************************
Que faire ensuite
- Pour les hôtes déjà provisionnés avec vSphere Auto Deploy, exécutez les opérations de test de conformité et de réparation pour les provisionner avec le nouveau profil d'image. Reportez-vous à la section Tester et réparer la conformité aux règles.
- Mettez sous tension les hôtes non provisionnés pour les provisionner avec le nouveau profil d'image.
Écrire une règle et attribuer un profil d'hôte à des hôtes
vSphere Auto Deploy peut attribuer un profil à un ou plusieurs hôtes ESXi.
Dans la plupart des cas, vous affectez un hôte à un cluster au lieu de définir un profil d'hôte explicitement. L'hôte utilise le profil d'hôte du cluster.
Conditions préalables
- Installez PowerCLI et tous les logiciels nécessaires. Pour plus d'informations, reportez-vous à Installation et configuration de vCenter Server.
- Exportez le profil d'hôte à utiliser.
Procédure
Que faire ensuite
- Attribuez à un hôte déjà provisionné avec vSphere Auto Deploy le nouveau profil d'hôte en effectuant un test de conformité et des opérations de réparation sur ces hôtes. Pour plus d'informations, consultez Tester et réparer la conformité aux règles.
- Mettez sous tension les hôtes non provisionnés pour les provisionner avec le profil d'hôte.
Écrire une règle et attribuer un hôte à un dossier ou un cluster
vSphere Auto Deploy peut attribuer un hôte à un dossier ou un cluster. Lorsque l'hôte démarre, vSphere Auto Deploy l'ajoute à l'emplacement défini dans vCenter Server. Les hôtes affectés à un cluster héritent du profil d'hôte du cluster.
Conditions préalables
- Préparez votre système et installez le serveur Auto Deploy. Pour plus d'informations, consultez Préparer le système pour vSphere Auto Deploy.
- Assurez-vous de sélectionner un dossier qui se trouve dans un centre de données ou un cluster. Vous ne pouvez pas attribuer l'hôte à un dossier de niveau supérieur autonome.
Procédure
Que faire ensuite
- Attribuez un hôte déjà provisionné à l'aide de vSphere Auto Deploy au nouvel emplacement de dossier ou de cluster, par le biais d'une opération de test et de réparation de la conformité. Reportez-vous à la section Tester et réparer la conformité aux règles.
- Mettez sous tension les hôtes non provisionnés pour les ajouter à l'emplacement vCenter Server défini.
Configurer un système sans état en exécutant un script personnalisé
Vous pouvez utiliser vSphere Auto Deploy pour configurer un ou plusieurs hôtes en associant des scripts personnalisés avec une règle vSphere Auto Deploy.
Les scripts sont exécutés par ordre alphabétique après le workflow de démarrage initial ESXi de l'hôte.
Conditions préalables
- Vérifiez que bundle de scripts que vous souhaitez associer avec une règle vSphere Auto Deploy est au format .tgz, d'une taille maximum de 10 Mo et écrit en langage de script Python ou ash de BusyBox.
Procédure
Que faire ensuite
- Pour les hôtes déjà provisionnés avec vSphere Auto Deploy, exécutez les opérations de test de conformité et de réparation pour les provisionner avec les nouveaux scripts. Reportez-vous à la section Tester et réparer la conformité aux règles.
- Mettez sous tension les hôtes non provisionnés pour les provisionner avec les nouveaux scripts.
Tester et réparer la conformité aux règles
Testez la conformité des règles nouvelles ou modifiées et réparez-les en conséquence, car les modifications apportées à l'ensemble de règles vSphere Auto Deploy ne sont pas mises à jour automatiquement.
Conditions préalables
- Préparez votre système et installez le serveur Auto Deploy. Pour plus d'informations, consultez Préparer le système pour vSphere Auto Deploy.
- Vérifiez que votre infrastructure comporte un ou plusieurs hôtes ESXi provisionnés avec vSphere Auto Deploy et que l'hôte sur lequel vous avez installé PowerCLI peut accéder à ces hôtes ESXi.
Procédure
Que faire ensuite
Si la règle que vous avez changée définissait l'emplacement d'inventaire, la modification est appliquée lorsque vous réparez la conformité. Pour toutes les autres modifications, redémarrez votre hôte pour que vSphere Auto Deploy applique la nouvelle règle et pour assurer la conformité entre le groupe de règles et l'hôte.
Enregistrer l'adresse d'un serveur proxy de mise en cache avec vSphere Auto Deploy
Le démarrage simultané d'un grand nombre d'hôtes sans état augmente considérablement la charge sur le serveur vSphere Auto Deploy. Vous pouvez équilibrer la charge des demandes entre le serveur vSphere Auto Deploy et un ou plusieurs serveurs proxy que vous pouvez enregistrer avec vSphere Auto Deploy.