Puede administrar vSphere Auto Deploy con cmdlets de PowerCLI para crear reglas que asocien hosts ESXi con varios objetos en la instancia de destino de vCenter.

Puede administrar vSphere Auto Deploy con cmdlets de PowerCLI para crear reglas que asocien hosts con perfiles de imagen, perfiles de host, scripts personalizados y ubicaciones en la instancia de destino de vCenter Server. También es posible actualizar los hosts mediante la comprobación del cumplimiento de normas y la corrección de los problemas de cumplimiento de normas que correspondan.

Administrar vSphere Auto Deploy con cmdlets de PowerCLI

Puede administrar vSphere Auto Deploy con cmdlets de PowerCLI para crear reglas que asocien hosts con perfiles de imagen, perfiles de host, scripts personalizados y ubicaciones en la instancia de vCenter Server de destino. También es posible actualizar los hosts mediante la comprobación del cumplimiento de normas y la corrección de los problemas de cumplimiento de normas que correspondan.

Introducción al proceso de vSphere Auto Deploy con PowerCLI

Para comenzar a usar vSphere Auto Deploy, debe aprender cómo funciona vSphere Auto Deploy, instalar el servidor vSphere Auto Deploy, instalar PowerCLI, escribir reglas de PowerCLI que aprovisionen hosts y encender los hosts que deben arrancarse con el perfil de imagen especificado. Puede personalizar el perfil de imagen, el perfil de host y la ubicación de vCenter Server.

Consulte Escenario de vSphere PowerCLI para vSphere Auto Deploy para obtener un ejercicio paso a paso que lo ayude a configurar su primer entorno de vSphere Auto Deploy.

Para aprovisionar correctamente los hosts en su entorno con vSphere Auto Deploy, puede seguir estos pasos.

  1. Implementar vCenter Server.

    Se incluye el servidor vSphere Auto Deploy.

  2. Configure el tipo de inicio para el servicio de vSphere Auto Deploy.

    Consulte Preparar el sistema para vSphere Auto Deploy.

  3. Instale PowerCLI, que incluye cmdlets de vSphere Auto Deploy y vSphere ESXi Image Builder.

    Consulte Configurar vSphere ESXi Image Builder, Usar los cmdlets de vSphere Auto Deploy y Usar cmdlets de VMware.Image Builder.

  4. Busque el perfil de imagen que incluye los VIB que desea implementar en los hosts.
    • A menudo, deberá agregar los almacenes que contienen el software necesario a la sesión de PowerCLI y, a continuación, seleccionar un perfil de imagen desde uno de esos almacenes.
    • Si desea crear un perfil de imagen personalizado, use los cmdlets de vSphere ESXi Image Builder para clonar un perfil de imagen existente y agregue los VIB personalizados al clon. Agregue el perfil de imagen personalizado a la sesión de PowerCLI.

    Debe utilizar vSphere ESXi Image Builder para la personalización solamente si tiene que agregar o quitar VIB. En la mayoría de los casos, puede agregar el almacén en el que VMware aloja los perfiles de imagen a la sesión de PowerCLI como una URL.

  5. Inicie una sesión de PowerCLI y conéctese con el sistema vCenter Server con el que vSphere Auto Deploy está registrado.
  6. Use el cmdlet New-DeployRule de PowerCLI para escribir una regla que asigne el perfil de imagen a un host, a varios hosts especificados mediante un patrón o a todos los hosts.
    New-DeployRule -Name "testrule" -Item perfil-imagen -AllHosts

    Consulte Asignar un perfil de imagen a hosts.

    Nota: vSphere Auto Deploy se optimizó para aprovisionar hosts que contienen una dirección MAC fija a una asignación de dirección IP en DHCP (a veces se denominan reservas de DHCP). Si desea utilizar direcciones IP estáticas, debe configurar el perfil de host para que solicite la personalización del host. Para obtener más información, consulte la documentación sobre Perfiles de host de vSphere.
  7. Encienda los hosts que desea aprovisionar.
  8. Configure el host aprovisionado como host de referencia para el perfil de host.

    Puede especificar la configuración de Syslog del host de referencia, la configuración del firewall, el almacenamiento, las redes, etc.

  9. Configure el host aprovisionado como host de referencia para el perfil de host.

    Puede especificar la configuración de Syslog del host de referencia, la configuración del firewall, el almacenamiento, las redes, etc. Consulte Configurar un host de referencia de vSphere Auto Deploy.

  10. Cree y exporte un perfil de host para el host de referencia.

    Consulte la documentación sobre perfiles de host.

  11. Para aprovisionar varios hosts con el perfil de host, use el cmdlet Copy-DeployRule para editar la regla creada anteriormente.

    Puede revisar la regla para asignar no solo un perfil de imagen, sino también un perfil de host, una ubicación de vCenter Server y un paquete de scripts personalizado.

    Copy-DeployRule -DeployRule "testrule" -ReplaceItem mi_perfil_de_host_de_referencia,mi_clúster_de_destino
                   -ReplacePattern  "ipv4=192.XXX.1.10-192.XXX.1.20"

    Donde mi_perfil_de_host_de_referencia es el nombre del perfil de host de referencia y mi_clúster_de_destino es el nombre del clúster de destino.

  12. Realice las operaciones de cumplimiento de prueba y reparación para corregir los hosts.

    Consulte Probar y reparar cumplimiento de reglas.

  13. Compruebe que los hosts aprovisionados cumplan los siguientes requisitos:
    • Cada host está conectado al sistema vCenter Server.
    • Los hosts no están en modo de mantenimiento.
    • Los hosts no presentan instancias de incumplimiento de normas.
    • Cada host con un perfil de host que requiere entradas del usuario tiene información actualizada de personalización del host.

    Corrija los problemas de cumplimiento y asociaciones de hosts, y reinicie los hosts hasta que todos los hosts cumplan con los requisitos.

Consulte para obtener una introducción al proceso de arranque, las diferencias entre el primer arranque y los arranques posteriores y una descripción general del uso de la personalización de hosts.

Usar los cmdlets de vSphere Auto Deploy

Los cmdlets de vSphere Auto Deploy se implementan como cmdlets de Microsoft PowerShell y se incluyen en PowerCLI. Los usuarios de los cmdlets de vSphere Auto Deploy pueden aprovechar todas las funciones de PowerCLI.

Los usuarios experimentados de PowerShell también pueden utilizar los cmdlets de vSphere Auto Deploy del mismo modo que los cmdlets de PowerShell. Si no está familiarizado con PowerShell y PowerCLI, las sugerencias siguientes pueden ser de utilidad.

Puede escribir cmdlets, parámetros y valores de parámetros en el shell de PowerCLI.

  • Obtenga ayuda para cualquier cmdlet a través de Get-Helpcmdlet_name.
  • Recuerde que PowerShell no distingue mayúsculas de minúsculas.
  • Utilice la opción de finalización con tabulación para los nombres de cmdlets y parámetros.
  • Puede aplicar formato a cualquier resultado de cmdlet o variable mediante Format-List o Format-Table, o mediante sus formas abreviadas: fl o ft. Para obtener más información, ejecute el cmdlet Get-Help Format-List.

Transmitir parámetros por nombre

Puede transmitir parámetros por nombre en la mayoría de los casos y rodear los valores de parámetros que contienen espacios o caracteres especiales con comillas dobles.
 Copy-DeployRule -DeployRule testrule -ReplaceItem MyNewProfile

La mayoría de los ejemplos de la documentación Instalar y configurar vCenter Server transmiten parámetros por nombre.

Transmitir parámetros como objetos

Puede transmitir parámetros como objetos si desea ejecutar scripts y automatización. Transmitir parámetros como objetos resulta útil con los cmdlets que devuelven varios objetos y con los cmdlets que devuelven un solo objeto. Tenga en cuenta el ejemplo siguiente:

  1. Vincule a una variable el objeto que contiene la información de cumplimiento de normas de un conjunto de reglas para un host.
    $tr = Test-DeployRuleSetCompliance MyEsxi42
  2. Vea la propiedad itemlist del objeto para determinar la diferencia entre lo que contiene el conjunto de reglas y lo que usa el host actualmente.
    $tr.itemlist
  3. Corrija el host para que use el conjunto de reglas modificado, utilizando el cmdlet Repair-DeployRuleSetCompliance con la variable.
    Repair-DeployRuleSetCompliance $tr

En este ejemplo, se corrige el host la próxima vez que se arranca.

Descripción general de cmdlets de vSphere Auto Deploy PowerCLI

El usuario especifica las reglas que asignan perfiles de imagen y perfiles de host a los hosts mediante un conjunto de cmdlets de PowerCLI que se incluyen en PowerCLI.

Si no está familiarizado con PowerCLI, lea la documentación de PowerCLI y consulte Usar los cmdlets de vSphere Auto Deploy. Puede obtener ayuda en relación con cualquier comando en la línea de comandos de PowerShell.

  • Ayuda básica: Get-Help nombre_del_cmdlet
  • Ayuda detallada: Get-Help nombre_del_cmdlet -Detailed
Nota: Al ejecutar cmdlets de vSphere Auto Deploy, proporcione todos los parámetros en la línea de comandos cuando invoque el cmdlet. No se recomienda proporcionar parámetros en modo interactivo.
Tabla 1. Cmdlets de PowerCLI del motor de reglas
Comando Descripción
Get-DeployCommand Devuelve una lista de cmdlets de vSphere Auto Deploy.
New-DeployRule Crea una nueva regla con los elementos y los patrones especificados.
Set-DeployRule Actualiza una regla existente con los elementos y los patrones especificados. No es posible actualizar una regla que forma parte de un conjunto de reglas.
Get-DeployRule Recupera las reglas con los nombres especificados.
Copy-DeployRule Clona y actualiza una regla existente.
Add-DeployRule Agrega una regla o más al conjunto de reglas de trabajo y, de forma predeterminada, también al conjunto de reglas activo. Utilice el parámetro NoActivate para agregar una regla solamente al conjunto de reglas de trabajo.
Remove-DeployRule Elimina una regla o más del conjunto de reglas de trabajo y del conjunto de reglas activo. Ejecute este comando con el parámetro -Delete para eliminar la regla por completo.
Set-DeployRuleset Establece de manera explícita la lista de reglas en el conjunto de reglas de trabajo.
Get-DeployRuleset Recupera el conjunto de reglas de trabajo o el conjunto de reglas activo actuales.
Switch-ActiveDeployRuleset Activa un conjunto de reglas para que todas las solicitudes nuevas se evalúen mediante el conjunto de reglas.
Get-VMHostMatchingRules Recupera las reglas que coinciden con un patrón. Por ejemplo, es posible recuperar todas las reglas que se aplican a un host o a varios. Utilice este cmdlet principalmente para depuración.
Test-DeployRulesetCompliance Comprueba si los elementos asociados con un host especificado cumplen los criterios del conjunto de reglas activo.
Repair-DeployRulesetCompliance En función del resultado de Test-DeployRulesetCompliance, este cmdlet actualiza el perfil de imagen, el perfil de host y la ubicación de cada host en el inventario de vCenter Server. El cmdlet puede aplicar perfiles de imagen, aplicar perfiles de host o transferir hosts a carpetas o clústeres especificados previamente en el sistema vCenter Server.
Apply-EsxImageProfile Asocia el perfil de imagen especificado con el host especificado.
Get-VMHostImageProfile Recupera el perfil de imagen que utiliza un host especificado. Este cmdlet es diferente al cmdlet Get-EsxImageProfile en vSphere ESXi Image Builder.
Repair-DeployImageCache Utilice este cmdlet solamente si la memoria caché de imagen de vSphere Auto Deploy se elimina por accidente.
Get-VMHostAttributes Recupera los atributos de un host que se utilizan cuando el servidor vSphere Auto Deploy evalúa las reglas.
Get-DeployMachineIdentity Devuelve un valor de cadena que vSphere Auto Deploy utiliza para vincular forma lógica un host ESXi de vCenter Server con una máquina física.
Set-DeployMachineIdentity Vincula de forma lógica un objeto de host en la base de datos de vCenter Server con una máquina física. Utilice este cmdlet para agregar hosts sin especificar reglas.
Get-DeployOption Recupera las opciones de configuración globales de vSphere Auto Deploy. Actualmente, este cmdlet es compatible con la opción vlan-id, la cual especifica el identificador de VLAN predeterminado para la red de administración de ESXi de un host aprovisionado con vSphere Auto Deploy. vSphere Auto Deploy utiliza el valor solo si el host se arranca sin un perfil de host.
Set-DeployOption Establece el valor de una opción de configuración global. Actualmente, es compatible con la opción vlan-id para establecer un identificador de la VLAN predeterminado para la red de administración de ESXi.
Add-ProxyServer Agrega un servidor proxy a la base de datos de vSphere Auto Deploy. Ejecute el comando con el parámetro -Address para especificar la dirección IPv4 o IPv6. La dirección puede incluir un número de puerto.
List-ProxyServer Lista los servidores proxy que están registrados actualmente en vSphere Auto Deploy.
Delete-ProxyServer Elimina uno o varios servidores proxy de la lista de los servidores proxy registrados en vSphere Auto Deploy. Puede ejecutar el comando con el parámetro -id desde la lista de servidores proxy o con el parámetro -Address especificando la dirección IPv4 o IPv6 del servidor proxy que desea eliminar.
Add-ScriptBundle Agrega uno o varios paquetes de scripts al servidor vSphere Auto Deploy.
Get-ScriptBundle Recupera la lista de paquetes de scripts disponible en el servidor vSphere Auto Deploy, así como los scripts que contiene.
Remove-ScriptBundle Elimina un paquete de scripts de vSphere Auto Deploy. Aplicable para la versión 6.7 y versiones posteriores de vSphere.
Get-CustomCertificate Recupera el certificado de host personalizado cargado en AutoDeploy. Debe ejecutar el comando con el parámetro -HostId [MAC_Address | BIOS_UUID]. La primera vez que agregue certificados personalizados, no verá ningún certificado devuelto mediante este cmdlet.
List-CustomCertificates Recupera información sobre todos los certificados de host personalizados utilizados por Auto Deploy. La lista proporciona detalles del nombre del certificado, Host ID y Associated Host Name, lo cual refleja el nombre de la instancia de vCenter Server para el servidor Auto Deploy.
Add-CustomCertificate Agrega un certificado personalizado al almacén de certificados de endpoints de VMware y lo asocia con un host ESXi. El certificado se activa al reiniciar el host. Puede utilizar el cmdlet Get-CustomCertificate para recuperar la clave del certificado de host personalizada. Puede ejecutar el comando con el parámetro -HostId [MAC_Address | BIOS_UUID] para asociar el certificado al host al especificar un -Key [file:///path/to/key.key] y -Cert [file:///path/to/cert.crt]. El uso de este cmdlet requiere el privilegio AutoDeploy.Rule.Create en la carpeta raíz de vCenter Server.
Remove-CustomCertificate Elimina un conjunto de certificados de host personalizados de Auto Deploy. Las entradas de certificado se eliminan de la base de datos y los archivos de certificado se eliminan del almacén de archivos. Es necesario reiniciar los hosts que ya se hayan arrancado con un certificado personalizado para poder recibir un certificado nuevo. Debe proporcionar al menos uno de los parámetros -Cert o -HostId. El uso de este cmdlet requiere el privilegio AutoDeploy.Rule.Create en la carpeta raíz de vCenter Server.

Asignar un perfil de imagen a hosts

Antes de que pueda aprovisionar un host, deberá crear reglas que asignen un perfil de imagen a cada host que desee aprovisionar con vSphere Auto Deploy.

Las reglas de extensibilidad de vSphere Auto Deploy obligan a que los VIB en el nivel CommunitySupported solo puedan contener archivos de determinadas ubicaciones predefinidas, como la ruta de complementos de ESXCLI, la ruta de complementos de jumpstart, etc. Si agrega un VIB que se encuentra en una ubicación diferente de la de un perfil de imagen, aparecerá una advertencia. Puede anular la advertencia utilizando la opción force (forzar).

Si realiza una llamada al cmdlet New-DeployRule en un perfil de imagen que incluye VIB en el nivel CommunitySupported que infrinja la regla, establezca $DeployNoSignatureCheck = $true antes de agregar el perfil de imagen. Con esta configuración, el sistema omitirá la validación de firma y no realizará la comprobación de reglas de extensibilidad.

Nota: Los perfiles de imagen que incluyen VIB en el nivel CommunitySupported no se admiten en los sistemas de producción.

Procedimiento

  1. En una sesión de PowerCLI, ejecute el cmdlet Connect-VIServer para conectarse al sistema vCenter Server con el que se registró vSphere Auto Deploy.
    Connect-VIServer ipv4_or_ipv6_address
    Es posible que el cmdlet devuelva una advertencia de certificado de servidor. En un entorno de producción, asegúrese de que no se emita ninguna advertencia de certificado de servidor. En un entorno de desarrollo, puede omitir la advertencia.
  2. Determine la ubicación del almacén de software público o defina un perfil de imagen personalizado con vSphere ESXi Image Builder.
  3. Ejecute Add-EsxSoftwareDepot para agregar el almacén de software que contiene el perfil de imagen a la sesión de PowerCLI.
    Tipo de almacén Cmdlet
    Almacén remoto Ejecute Add-EsxSoftwareDepot url_del_almacén.
    Archivo ZIP
    1. Descargue el archivo ZIP en la ruta de acceso de archivo local.
    2. Ejecute Add-EsxSoftwareDepot C:\file_path\my_offline_depot.zip.
  4. En el almacén, busque el perfil de imagen que desea utilizar ejecutando el cmdlet Get-EsxImageProfile.
    De manera predeterminada, el almacén de ESXi incluye un perfil de imagen base que incluye VMware Tools y tiene la cadena standard en su nombre y un perfil de imagen base que no incluye VMware Tools.
  5. Defina una regla en la que los hosts con determinados atributos, por ejemplo un rango de direcciones IP, estén asignados al perfil de imagen.
    New-DeployRule -Name "testrule" -Item "My Profile25" -Pattern "vendor=Acme,Zven", "ipv4=192.XXX.1.10-192.XXX.1.20"

    Si un nombre contiene espacios, se requieren comillas dobles. De lo contrario, es opcional. Especifique -AllHosts en lugar de un patrón para aplicar el elemento a todos los hosts.

    El cmdlet crea una regla con el nombre testrule. La regla asigna el perfil de imagen con el nombre My Profile25 a todos los hosts con un proveedor de Acme o Zven que también tienen una dirección IP en el rango especificado.
  6. Agregue la regla al conjunto de reglas.
    Add-DeployRule testrule
    De manera predeterminada, la regla se agrega al conjunto de reglas en funcionamiento y al conjunto de reglas activo. Si utiliza el parámetro NoActivate, el conjunto de reglas en funcionamiento no se convierte en el conjunto de reglas activo.

Resultados

Cuando el host arranca desde iPXE, informa de los atributos de la máquina a la consola. Utilice el mismo formato de los atributos al escribir reglas de implementación.

******************************************************************
* 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
******************************************************************

Qué hacer a continuación

  • Para los hosts que ya se han aprovisionado con vSphere Auto Deploy, realice la prueba de cumplimiento de normas y las operaciones de reparación con la finalidad de aprovisionarlos con el nuevo perfil de imagen. Consulte Probar y reparar cumplimiento de reglas.
  • Encienda los hosts no aprovisionados para aprovisionarlos con el nuevo perfil de imagen.

Escribir una regla y asignar un perfil de host a hosts

vSphere Auto Deploy puede asignar un perfil de host a uno o más hosts ESXi.

En muchos casos, puede asignar un host a un clúster en lugar de especificar un perfil de host explícitamente. El host utiliza el perfil de host del clúster.

Requisitos previos

El perfil de host puede incluir información sobre la configuración de almacenamiento, la configuración de red u otras características del host. Si agrega un host a un clúster, se utiliza el perfil de host de ese clúster.

Procedimiento

  1. En una sesión de PowerCLI, ejecute el cmdlet Connect-VIServer para conectarse al sistema vCenter Server con el que se registró vSphere Auto Deploy.
    Connect-VIServer ipv4_or_ipv6_address
    Es posible que el cmdlet devuelva una advertencia de certificado de servidor. En un entorno de producción, asegúrese de que no se emita ninguna advertencia de certificado de servidor. En un entorno de desarrollo, puede omitir la advertencia.
  2. Con vSphere Client, configure un host con los parámetros que desee usar y cree un perfil de host a partir de él.
  3. Busque el nombre del perfil de host mediante la ejecución del cmdlet Get-VMhostProfile de PowerCLI, pasando el host ESXi a partir del cual creó un perfil de host.
  4. En el símbolo de PowerCLI, defina una regla en la que los perfiles de host se asignen a hosts con ciertos atributos; por ejemplo, un intervalo de direcciones IP.
    New-DeployRule -Name "testrule2" -Item my_host_profile -Pattern "vendor=Acme,Zven", "ipv4=192.XXX.1.10-192.XXX.1.20"
    El elemento especificado se asigna a todos los hosts que posean los atributos especificados. Este ejemplo especifica una regla denominada testrule2. Esta asigna el perfil de host especificado mi_perfil_de_host a todos los hosts que tengan una dirección IP dentro del intervalo especificado y cuyo fabricante sea Acme o Zven.
  5. Agregue la regla al conjunto de reglas.
    Add-DeployRule testrule2
    De forma predeterminada, el conjunto de reglas en funcionamiento se convierte en el conjunto de reglas activo y los cambios en él se vuelven activos cuando agrega una regla. Si utiliza el parámetro NoActivate, el conjunto de reglas en funcionamiento no se convierte en el conjunto de reglas activo.

Qué hacer a continuación

  • Asigne un host ya aprovisionado con vSphere Auto Deploy al nuevo perfil de host. Para ello, realice operaciones de prueba de cumplimiento y reparación en esos hosts. Para obtener más información, consulte Probar y reparar cumplimiento de reglas.
  • Encienda los hosts no aprovisionados para aprovisionarlos con el perfil de host.

Escribir una regla y asignar un host a una carpeta o un clúster

vSphere Auto Deploy puede asignar un host a una carpeta o un clúster. Cuando el host arranca, vSphere Auto Deploy lo agrega a la ubicación que se especifica en vCenter Server. El host asignado a un clúster hereda el perfil de host del clúster.

Requisitos previos

  • Prepare el sistema e instale el servidor Auto Deploy. Para obtener más información, consulte Preparar el sistema para vSphere Auto Deploy.
  • Compruebe que la carpeta seleccionada esté en un centro de datos o clúster. No puede asignar el host a una carpeta de nivel superior independiente.

Procedimiento

  1. En una sesión de PowerCLI, ejecute el cmdlet Connect-VIServer para conectarse al sistema vCenter Server con el que se registró vSphere Auto Deploy.
    Connect-VIServer ipv4_or_ipv6_address
    Es posible que el cmdlet devuelva una advertencia de certificado de servidor. En un entorno de producción, asegúrese de que no se emita ninguna advertencia de certificado de servidor. En un entorno de desarrollo, puede omitir la advertencia.
  2. Defina una regla en la que los hosts con ciertos atributos, por ejemplo, un rango de direcciones IP, se asignan a una carpeta o un clúster.
    New-DeployRule -Name testrule3 -Item "mi carpeta"	-Pattern "vendor=Acme,Zven", "ipv4=192.XXX.1.10-192.XXX.1.20"
    Este ejemplo pasa la carpeta por el nombre. En cambio, puede pasar una carpeta, un clúster o un objeto de centro de datos que recupere con el comando cmdlet Get-Folder, Get-Cluster o Get-Datacenter.
  3. Agregue la regla al conjunto de reglas.
    Add-DeployRule testrule3
    De forma predeterminada, el conjunto de reglas en funcionamiento se convierte en el conjunto de reglas activo y los cambios en él se vuelven activos cuando agrega una regla. Si utiliza el parámetro NoActivate, el conjunto de reglas en funcionamiento no se convierte en el conjunto de reglas activo.

Qué hacer a continuación

  • Para asignar un host ya aprovisionado con vSphere Auto Deploy a la nueva ubicación de carpeta o clúster, realice una operación de cumplimiento de prueba y reparación. Consulte Probar y reparar cumplimiento de reglas.
  • Encienda los hosts no aprovisionados para agregarlos a la ubicación especificada de vCenter Server.

Configurar un sistema sin estado mediante la ejecución de un script personalizado

Puede utilizar vSphere Auto Deploy para configurar uno o varios hosts asociando scripts personalizados con una regla de vSphere Auto Deploy.

Los scripts se ejecutan en orden alfabético después del flujo de trabajo de arranque de ESXi del host.inicial del host.

Requisitos previos

  • Compruebe que el paquete de scripts que desea asociar a la regla de vSphere Auto Deploy tiene el formato .tgz y un tamaño máximo de 10 MB, y que está escrito en lenguaje de script de ash de BusyBox o Python.

Procedimiento

  1. En una sesión de PowerCLI, ejecute el cmdlet Connect-VIServer para conectarse al sistema vCenter Server con el que se registró vSphere Auto Deploy.
    Connect-VIServer ipv4_or_ipv6_address
    Es posible que el cmdlet devuelva una advertencia de certificado de servidor. En un entorno de producción, asegúrese de que no se emita ninguna advertencia de certificado de servidor. En un entorno de desarrollo, puede omitir la advertencia.
  2. Ejecute el cmdlet Add-ScriptBundle para agregar el paquete de scripts que contiene los scripts necesarios al inventario de vSphere Auto Deploy.
    Add-ScriptBundle c:/temp/MyScriptBundle.tgz
    El nombre del paquete de scripts sin la extensión .tgz es el identificador del nombre o el objeto del elemento del paquete de scripts. Puede actualizar el paquete de scripts existente utilizando el parámetro -Update con el cmdlet Add-ScriptBundle.
  3. (opcional) Ejecute el cmdlet Get-ScriptBundle para comprobar que el paquete de scripts se agregó al inventario de vSphere Auto Deploy.
  4. Defina una regla en la que los hosts con determinados atributos, por ejemplo un rango de direcciones IP, estén asignados al paquete de scripts.
    New-DeployRule -Name "testrule4" -Item "MyScriptBundle" -Pattern "vendor=Acme,Zven", "ipv4=192.XXX.1.10-192.XXX.1.20"

    Si un nombre contiene espacios, se requieren comillas dobles. De lo contrario, es opcional. Especifique -AllHosts en lugar de un patrón para aplicar el elemento a todos los hosts.

    Cree una regla denominada testrule4. La regla asigna el paquete de scripts con el nombre My Script Bundle a todos los hosts con un proveedor de Acme o Zven que también tienen una dirección IP en el rango especificado. Puede utilizar el identificador de nombre del paquete de scripts o el objeto que devuelve el cmdlet Get-ScriptBundle para identificar el paquete de scripts que quiere asociar a la regla.
  5. Agregue la regla al conjunto de reglas.
    Add-DeployRule testrule4
    De manera predeterminada, la regla se agrega al conjunto de reglas en funcionamiento y al conjunto de reglas activo. Si utiliza el parámetro NoActivate, el conjunto de reglas en funcionamiento no se convierte en el conjunto de reglas activo.

Qué hacer a continuación

  • Para los hosts que ya se han aprovisionado con vSphere Auto Deploy, realice la prueba de cumplimiento de normas y las operaciones de reparación con la finalidad de aprovisionarlos con los nuevos scripts. Consulte Probar y reparar cumplimiento de reglas.
  • Encienda los hosts no aprovisionados para aprovisionarlos con los nuevos scripts.

Probar y reparar cumplimiento de reglas

Pruebe el cumplimiento de las reglas nuevas o modificadas y repare según corresponda, ya que los cambios en el conjunto de reglas de vSphere Auto Deploy no se actualizan automáticamente.

Requisitos previos

Cuando se agrega una regla al conjunto de reglas de vSphere Auto Deploy o cuando se modifican una o más reglas, los hosts no se actualizan de manera automática. vSphere Auto Deploy aplica las reglas nuevas únicamente cuando se prueba el cumplimiento de reglas y se realizan las correcciones pertinentes.
  • Prepare el sistema e instale el servidor Auto Deploy. Para obtener más información, consulte Preparar el sistema para vSphere Auto Deploy.
  • Compruebe que la infraestructura incluya un host ESXi o más aprovisionados con vSphere Auto Deploy y que el host en el que se instaló PowerCLI pueda acceder a esos hosts ESXi.

Procedimiento

  1. En una sesión de PowerCLI, ejecute el cmdlet Connect-VIServer para conectarse al sistema vCenter Server con el que se registró vSphere Auto Deploy.
    Connect-VIServer ipv4_or_ipv6_address
    Es posible que el cmdlet devuelva una advertencia de certificado de servidor. En un entorno de producción, asegúrese de que no se emita ninguna advertencia de certificado de servidor. En un entorno de desarrollo, puede omitir la advertencia.
  2. Use PowerCLI para comprobar qué reglas de vSphere Auto Deploy están disponibles actualmente.
    Get-DeployRule
    El sistema devuelve las reglas y los patrones, y los elementos asociados.
  3. Modifique una de las reglas disponibles.

    Por ejemplo, puede cambiar el perfil de imagen y el nombre de la regla.

    Copy-DeployRule -DeployRule testrule -ReplaceItem MyNewProfile 
    			 
    No se puede editar una regla que ya se agregó a un conjunto de reglas activo. En lugar de ello, puede copiar la regla y reemplazar el elemento o el patrón que desea cambiar.
  4. Compruebe que pueda acceder al host para el cual desea probar el cumplimiento del conjunto de reglas.
    Get-VMHost -Name MyEsxi42
  5. Ejecute el cmdlet que prueba el cumplimiento del conjunto de reglas para el host y vincule el valor devuelto a una variable para usarlo en otro momento.
    $tr = Test-DeployRuleSetCompliance MyEsxi42
  6. Examine las diferencias entre el contenido del conjunto de reglas y la configuración del host.
    $tr.itemlist
    Si el host para el que desea probar el cumplimiento del nuevo conjunto de reglas cumple con el conjunto de reglas activo, el sistema devuelve una tabla de elementos actuales y esperados.
    CurrentItem                             ExpectedItem
    -----------                             ------------   
    My Profile 25                           MyNewProfile
    
  7. Corrija el host para que use el conjunto de reglas modificado la próxima vez que arranque.
    Repair-DeployRuleSetCompliance $tr

Qué hacer a continuación

Si la regla que modificó ha especificado la ubicación en el inventario, el cambio se aplica cuando se corrigen los problemas de cumplimiento. Para todos los demás cambios, reinicie el host para que vSphere Auto Deploy aplique la nueva regla y logre el cumplimiento entre el conjunto de reglas y el host.

Registrar la dirección de un servidor proxy de almacenamiento en caché con vSphere Auto Deploy

El arranque simultáneo de un gran número de hosts sin estado supone una carga considerable para el servidor vSphere Auto Deploy. Puede equilibrar la carga de las solicitudes entre el servidor vSphere Auto Deploy y uno o varios servidores proxy más que registre en vSphere Auto Deploy.

Requisitos previos

Procedimiento

  1. En una sesión de PowerCLI, ejecute el cmdlet Connect-VIServer para conectarse al sistema vCenter Server con el que se registró vSphere Auto Deploy.
    Connect-VIServer ipv4_or_ipv6_address
    Es posible que el cmdlet devuelva una advertencia de certificado de servidor. En un entorno de producción, asegúrese de que no se emita ninguna advertencia de certificado de servidor. En un entorno de desarrollo, puede omitir la advertencia.
  2. Registre direcciones de un servidor proxy de almacenamiento en caché en vSphere Auto Deploy ejecutando el cmdlet Add-ProxyServer.
    Add-ProxyServer -Address 'https://proxy_server_ip_address:port_number'
    Puede ejecutar el cmdlet varias veces para registrar varios servidores proxy. La dirección puede incluir un número de puerto.
  3. (opcional) Ejecute el cmdlet List-ProxyServer para verificar que el servidor proxy de almacenamiento en caché está registrado en vSphere Auto Deploy.