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.

  1. Déployez vCenter Server.

    Le serveur vSphere Auto Deploy est inclus.

  2. Configurez le type de démarrage du service vSphere Auto Deploy.

    Reportez-vous à la section Préparer le système pour vSphere Auto Deploy.

  3. 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.

  4. 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.

  5. Lancez une session PowerCLI et connectez-vous au système vCenter Server dans lequel vSphere Auto Deploy est enregistré.
  6. 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.
  7. Mettez sous tension les hôtes à provisionner.
  8. 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.

  9. 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.

  10. Créez et exportez un profil d'hôte pour l'hôte de référence.

    Voir la documentation Profils d'hôte.

  11. 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"

    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.

  12. 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.

  13. 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-Helpcmdlet_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

Vous pouvez envoyer les paramètres en fonction du nom dans la plupart des cas et placer entre guillemets doubles les valeurs de paramètres qui contiennent des espaces ou des caractères spéciaux.
 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.

  1. Liez à une variable l'objet qui encapsule les informations de conformité aux règles d'un hôte.
    $tr = Test-DeployRuleSetCompliance MyEsxi42
  2. 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
  3. 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
Note : Lorsque vous exécutez des cmdlets vSphere Auto Deploy, indiquez tous les paramètres sur la ligne de commande lorsque vous appelez la cmdlet. Il n'est pas recommandé d'indiquer des paramètres en mode interactif.
Tableau 1. Cmdlets PowerCLI du moteur de règles
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é.

Note : Les profils d'image qui incluent des VIB de niveau CommunitySupported ne sont pas pris en charge sur les systèmes de production.

Procédure

  1. Dans une session PowerCLI, exécutez la cmdlet Connect-VIServer pour vous connecter au système vCenter Server sur lequel vSphere Auto Deploy est enregistré.
    Connect-VIServer ipv4_or_ipv6_address
    La cmdlet peut retourner un avertissement de certificat de serveur. Dans un environnement de production, vérifiez qu'aucun avertissement de certificat de serveur n'est généré. Dans un environnement de développement, vous pouvez ignorer l'avertissement.
  2. Déterminez l'emplacement d'un dépôt de logiciels publics ou définissez un profil d'image personnalisé en utilisant vSphere ESXi Image Builder.
  3. Exécutez Add-EsxSoftwareDepot pour ajouter le dépôt de logiciels qui contient le profil d'image à la session PowerCLI.
    Type de dépôt Cmdlet
    Dépôt distant Exécutez Add-EsxSoftwareDepot depot_ur.
    Fichier ZIP
    1. Téléchargez le fichier ZIP vers un chemin de fichier local.
    2. Exécutez Add-EsxSoftwareDepot C:\file_path\my_offline_depot.zip.
  4. Dans le dépôt, recherchez le profil d'image que vous voulez utiliser en exécutant la cmdlet Get-EsxImageProfile.
    Par défaut, le dépôt ESXi contient un profil d'image de base qui inclut VMware Tools et dont le nom contient la chaîne full et un profil d'image de base qui ne contient pas VMware Tools.
  5. Définissez une règle dans laquelle les hôtes ayant certains attributs (une plage d'adresses IP, par exemple) sont affectés au profil d'image.
    New-DeployRule -Name "testrule" -Item "My Profile25" -Pattern "vendor=Acme,Zven", "ipv4=192.XXX.1.10-192.XXX.1.20"

    Des guillemets doubles sont nécessaires si un nom contient des espaces. Autrement, ils sont facultatifs. Définissez -AllHosts au lieu d'un modèle pour appliquer l'élément à tous les hôtes.

    La cmdlet crée la règle nommée testrule. La règle affecte le profil d'image My Profile25 à tous les hôtes ayant Acme ou Zven comme fournisseur et une adresse IP dans la page d'adresses définie.
  6. Ajoutez la règle au groupe de règles.
    Add-DeployRule testrule
    Par défaut, la règle est ajoutée au groupe de règles opérationnelles et au groupe de règles actives. Si vous utilisez le paramètre NoActivate, le groupe de règles opérationnelles ne devient pas le groupe de règles actives.

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

Le profil d'un hôte peut contenir des informations sur la configuration du stockage, la configuration du réseau ou d'autres caractéristiques de l'hôte. Si vous ajoutez un hôte à un cluster, le profil d'hôte du cluster est utilisé.

Procédure

  1. Dans une session PowerCLI, exécutez la cmdlet Connect-VIServer pour vous connecter au système vCenter Server sur lequel vSphere Auto Deploy est enregistré.
    Connect-VIServer ipv4_or_ipv6_address
    La cmdlet peut retourner un avertissement de certificat de serveur. Dans un environnement de production, vérifiez qu'aucun avertissement de certificat de serveur n'est généré. Dans un environnement de développement, vous pouvez ignorer l'avertissement.
  2. En utilisant vSphere Client, configurez un hôte avec les paramètres de votre choix et créez un profil d'hôte à partir de cet hôte.
  3. Recherchez le nom du profil d'hôte en exécutant l'applet de commande Get-VMhostProfile PowerCLI, transmettant l'hôte ESXi depuis lequel vous créez un profil d'hôte.
  4. À l'invite PowerCLI, définissez une règle dans laquelle des profils d'hôte sont attribués aux hôtes présentant certains attributs (par exemple, une plage d'adresses IP).
    New-DeployRule -Name "testrule2" -Item my_host_profile -Pattern "vendor=Acme,Zven", "ipv4=192.XXX.1.10-192.XXX.1.20"
    L'élément défini est affecté à tous les hôtes ayant les attributs définis. Cet exemple spécifie la règle testrule2. La règle attribue le profil d'hôte spécifié my_host_profile à tous les hôtes dont l'adresse IP se situe dans la plage spécifiée et dont le fabricant est Acme ou Zven.
  5. Ajoutez la règle au groupe de règles.
    Add-DeployRule testrule2
    Par défaut, le groupe de règles opérationnelles devient le groupe de règles actives et les modifications apportées à ce dernier sont appliquées lorsque vous ajoutez une règle. Si vous utilisez le paramètre NoActivate, le groupe de règles opérationnelles ne devient pas le groupe de règles actives.

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

  1. Dans une session PowerCLI, exécutez la cmdlet Connect-VIServer pour vous connecter au système vCenter Server sur lequel vSphere Auto Deploy est enregistré.
    Connect-VIServer ipv4_or_ipv6_address
    La cmdlet peut retourner un avertissement de certificat de serveur. Dans un environnement de production, vérifiez qu'aucun avertissement de certificat de serveur n'est généré. Dans un environnement de développement, vous pouvez ignorer l'avertissement.
  2. Définissez une règle dans laquelle les hôtes ayant certains attributs (une plage d'adresses IP, par exemple) sont affectés à un dossier ou un cluster.
    New-DeployRule -Name testrule3 -Item « mon dossier »	-Pattern "vendor=Acme,Zven", "ipv4=192.XXX.1.10-192.XXX.1.20"
    Cet exemple envoie le dossier en fonction de son nom. Au lieu de cela, vous pouvez transmettre un objet de dossier, de cluster ou de centre de données, récupéré à l'aide du cmdlet Get-Folder, Get-Cluster ou Get-Datacenter.
  3. Ajoutez la règle au groupe de règles.
    Add-DeployRule testrule3
    Par défaut, le groupe de règles opérationnelles devient le groupe de règles actives et les modifications apportées à ce dernier sont appliquées lorsque vous ajoutez une règle. Si vous utilisez le paramètre NoActivate, le groupe de règles opérationnelles ne devient pas le groupe de règles actives.

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

  1. Dans une session PowerCLI, exécutez la cmdlet Connect-VIServer pour vous connecter au système vCenter Server sur lequel vSphere Auto Deploy est enregistré.
    Connect-VIServer ipv4_or_ipv6_address
    La cmdlet peut retourner un avertissement de certificat de serveur. Dans un environnement de production, vérifiez qu'aucun avertissement de certificat de serveur n'est généré. Dans un environnement de développement, vous pouvez ignorer l'avertissement.
  2. Exécutez la cmdlet Add-ScriptBundle pour ajouter le bundle de script qui contient les scripts nécessaires à l'inventaire vSphere Auto Deploy.
    Add-ScriptBundle c:/temp/MyScriptBundle.tgz
    Le nom du bundle de scripts sans l'extension .tgz est l'identifiant ou l'objet du nom de l'élément du bundle de scripts. Vous pouvez mettre à jour un bundle de scripts existant en utilisant le paramètre -Update avec la cmdlet Add-ScriptBundle.
  3. (Facultatif) Exécutez la cmdlet Get-ScriptBundle pour vérifier que le bundle de scripts est ajouté à l'inventaire vSphere Auto Deploy.
  4. Définissez une règle dans laquelle les hôtes ayant certains attributs, par exemple une plage d'adresses IP, sont affectés au bundle de scripts.
    New-DeployRule -Name "testrule4" -Item "MyScriptBundle" -Pattern "vendor=Acme,Zven", "ipv4=192.XXX.1.10-192.XXX.1.20"

    Des guillemets doubles sont nécessaires si un nom contient des espaces. Autrement, ils sont facultatifs. Définissez -AllHosts au lieu d'un modèle pour appliquer l'élément à tous les hôtes.

    Vous créez une règle dénommée testrule4. La règle affecte le bundle de scripts My Script Bundle à tous les hôtes ayant Acme ou Zven comme fournisseur et une adresse IP dans la page d'adresses définie. Vous pouvez utiliser l'identifiant du bundle de scripts ou de l'objet retourné par la cmdlet Get-ScriptBundle pour identifier le bundle de scripts que vous souhaitez associer à la règle.
  5. Ajoutez la règle au groupe de règles.
    Add-DeployRule testrule4
    Par défaut, la règle est ajoutée au groupe de règles opérationnelles et au groupe de règles actives. Si vous utilisez le paramètre NoActivate, le groupe de règles opérationnelles ne devient pas le groupe de règles actives.

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

Lorsque vous ajoutez une règle à un groupe de règles vSphere Auto Deploy ou modifiez une ou plusieurs règles, les hôtes ne sont pas mis à jour automatiquement. vSphere Auto Deploy applique les nouvelles règles uniquement lorsque vous testez leur conformité et exécutez une correction.
  • 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

  1. Dans une session PowerCLI, exécutez la cmdlet Connect-VIServer pour vous connecter au système vCenter Server sur lequel vSphere Auto Deploy est enregistré.
    Connect-VIServer ipv4_or_ipv6_address
    La cmdlet peut retourner un avertissement de certificat de serveur. Dans un environnement de production, vérifiez qu'aucun avertissement de certificat de serveur n'est généré. Dans un environnement de développement, vous pouvez ignorer l'avertissement.
  2. Utilisez PowerCLI pour identifier les règles vSphere Auto Deploy disponibles actuellement.
    Get-DeployRule
    Le système retourne les règles et les éléments et modèles associés.
  3. Modifiez l'une des règles disponibles.

    Par exemple, vous pouvez modifier le profil d'image et le nom de la règle.

    Copy-DeployRule -DeployRule testrule -ReplaceItem MyNewProfile 
    			 
    Vous ne pouvez pas modifier une règle qui se trouve déjà dans le groupe de règles actif. À la place, vous pouvez copier la règle et remplacer l'élément ou le modèle à changer.
  4. Vérifiez que vous pouvez accéder à l'hôte pour lequel vous souhaitez tester la conformité de l'ensemble de règles.
    Get-VMHost -Name MyEsxi42
  5. Exécutez la cmdlet qui teste la conformité des groupes de règles de l'hôte et liez la valeur de retour à une variable pour une utilisation ultérieure.
    $tr = Test-DeployRuleSetCompliance MyEsxi42
  6. Examinez les différences entre le contenu de l'ensemble de règles et la configuration de l'hôte.
    $tr.itemlist
    Si l'hôte pour lequel vous souhaitez tester la conformité du nouvel ensemble de règles est conforme au groupe de règles actives, le système renvoie une table des éléments actuels et attendus.
    CurrentItem                             ExpectedItem
    -----------                             ------------   
    My Profile 25                           MyNewProfile
    
  7. Corrigez l'hôte pour utiliser le groupe de règles modifié lors du prochain démarrage de l'hôte.
    Repair-DeployRuleSetCompliance $tr

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.

Conditions préalables

Procédure

  1. Dans une session PowerCLI, exécutez la cmdlet Connect-VIServer pour vous connecter au système vCenter Server sur lequel vSphere Auto Deploy est enregistré.
    Connect-VIServer ipv4_or_ipv6_address
    La cmdlet peut retourner un avertissement de certificat de serveur. Dans un environnement de production, vérifiez qu'aucun avertissement de certificat de serveur n'est généré. Dans un environnement de développement, vous pouvez ignorer l'avertissement.
  2. Enregistrer une adresse de serveur proxy de mise en cache avec vSphere Auto Deploy en exécutant la cmdlet Add-ProxyServer.
    Add-ProxyServer -Address 'https://proxy_server_ip_address:port_number'
    Vous pouvez exécuter la cmdlet plusieurs fois pour enregistrer plusieurs serveurs proxy. L'adresse peut comprendre un numéro de port.
  3. (Facultatif) Exécutez la List-ProxyServer cmdlet pour vérifier que le serveur proxy de mise en cache est enregistré avec vSphere Auto Deploy.