Crear un catálogo de máquinas con imagen preparada en Azure

Cree imágenes preparadas y utilícelas para crear un catálogo de máquinas MCS mediante:

Los pasos clave para crear un catálogo de máquinas MCS mediante la imagen preparada son:

  1. Cree la definición de imagen y las versiones iniciales de la imagen.
  2. Utilice la versión de la imagen como imagen preparada para crear un catálogo

Usar Web Studio

Crear una definición de imagen y una versión inicial de la imagen

Para crear una definición de imagen y la versión inicial de la imagen, haga lo siguiente:

  1. En Web Studio, vaya al nodo Imágenes y haga clic en Crear definición de imagen. Haga clic en Siguiente en la página Introducción.
  2. En la página Definición de imagen, especifique el Tipo de SO y el Tipo de sesión para la definición de imagen.
  3. Seleccione un grupo de recursos existente o cree uno nuevo para alojar los recursos de imagen. Para habilitar el uso compartido de imágenes, seleccione Colocar versiones de imagen en Azure Compute Gallery y, a continuación, elija crear una nueva galería o usar una existente para alojar sus versiones de imagen.
  4. En la página Imagen, seleccione Recursos (solo se enumeran los recursos aplicables a la conexión establecida) y una imagen maestra para usar como plantilla para crear la versión de la imagen. Puede seleccionar la casilla Usar un perfil de máquina y seleccionar un perfil de máquina.

    Nota:

    Antes de seleccionar una imagen, compruebe que la imagen maestra tiene VDA 2311 o posterior instalado y que el controlador MCSIO está instalado en el VDA.

  5. En la página Tipos de almacenamiento y licencias, seleccione el tipo de almacenamiento y licencia que se utilizará como parte del proceso de preparación de la imagen.

    Nota:

    Si selecciona un perfil de máquina en la página Imagen, el tipo de licencia del perfil de máquina se preselecciona según la configuración del perfil.

  6. En la página Especificación de la máquina, seleccione un tamaño de máquina. Si selecciona un perfil de máquina en la página Imagen, el tamaño de máquina del perfil de máquina se selecciona de forma predeterminada.
  7. En la página NIC, seleccione o agregue NIC para la imagen de preparación. Para cada NIC, seleccione una red virtual asociada.
  8. En la página Configuración de disco, seleccione la clave de cifrado administrada por el cliente (CMEK). Si el perfil de la máquina no tiene una CMEK, pero la imagen maestra sí, se preselecciona la CMEK de la imagen maestra.
  9. En la página Descripción de la versión, introduzca una descripción para la versión de imagen inicial creada.
  10. En la página Resumen, compruebe los detalles de la definición de la imagen y la versión de imagen inicial creada. Introduzca un nombre y una descripción para la definición de la imagen. Haga clic en Finalizar.

Crear versiones de imagen

Las versiones de imagen permiten la gestión de diferentes iteraciones o actualizaciones de una imagen en particular. Esta funcionalidad le permite mantener varias versiones de una imagen para diferentes propósitos.

Para crear versiones de imagen a partir de la versión de imagen inicial, haga lo siguiente:

Nota:

La unidad de alojamiento de todas las versiones de imagen debe ser la misma.

  1. Vaya al nodo Imágenes, seleccione una versión de imagen o una definición de imagen y haga clic en Crear versión de imagen.
  2. En la página de definición de imagen, puede cambiar la unidad de alojamiento y volver a seleccionar la imagen maestra y el perfil de máquina para esa versión de imagen.
  3. Si desea que la configuración de la versión de imagen sea diferente de la versión de imagen configurada inicialmente, configure los ajustes en las páginas Tipos de almacenamiento y licencia, Especificación de la máquina, NIC y Configuración de disco del cuadro de diálogo Crear versión de imagen.
  4. Agregue una descripción para la versión de imagen. Haga clic en Finalizar.

create-image-versions

Nota:

Si la creación de la versión de imagen falla por cualquier motivo, la ficha Solucionar problemas en la parte inferior ofrece una opción de Reintentar.

Imágenes preparadas compartidas

Para compartir imágenes preparadas entre diferentes unidades de alojamiento para Azure, siga estos pasos:

  1. Haga clic con el botón derecho en una versión de imagen y seleccione Administrar recurso compartido de imagen. Aparecen todas las unidades de alojamiento de su entorno de Azure. Los recursos desde los que se crea la versión de imagen están inhabilitados para cualquier acción.
  2. Seleccione las unidades de alojamiento con las que desea compartir la imagen y haga clic en Guardar. La columna Estado del recurso compartido muestra En curso.
  3. Haga clic en la ficha Recursos para obtener más detalles sobre el estado del recurso compartido.

Nota:

Cuando el estado del recurso compartido de la versión de imagen está en curso, la opción de Eliminar versión de imagen o Administrar recurso compartido de imagen está inhabilitada.

Crear un catálogo de máquinas desde el nodo Imágenes

Utilice la opción Crear catálogo en el nodo Imágenes para crear un catálogo mediante la versión de imagen.

Alternativamente, puede seleccionar la versión al crear un catálogo en el nodo Catálogos de máquinas, vinculando a la opción de imagen preparada en el flujo de trabajo de creación de catálogos. Consulte (#create-a-machine-catalog-from-the-machine-catalogs-node)

Para crear un catálogo de máquinas MCS desde el nodo Imágenes, haga lo siguiente:

  1. Seleccione una versión de imagen y haga clic en Crear catálogo. Haga clic en Siguiente en la página Introducción.
  2. En la página Experiencia de escritorio, seleccione la experiencia de escritorio requerida.
  3. Desde la página Imagen hasta la página Configuración de disco, la configuración está preseleccionada según la versión de imagen seleccionada.
  4. En la página Grupo de recursos, puede optar por crear un nuevo grupo de recursos o usar un grupo de recursos existente para colocar los recursos de este catálogo.
  5. Complete la configuración en las siguientes páginas.
  6. En la página Resumen, compruebe los detalles del catálogo de máquinas. Introduzca un nombre y una descripción para el catálogo de máquinas. Haga clic en Finalizar.
  7. Vaya al nodo Catálogos de máquinas para ver el catálogo de máquinas creado.

Crear un catálogo de máquinas desde el nodo Catálogos de máquinas

Para crear un catálogo de máquinas MCS desde el nodo Catálogos de máquinas, haga lo siguiente:

  1. Haga clic en Catálogos de máquinas en el panel de navegación izquierdo.
  2. Haga clic en Crear catálogo de máquinas. Aparece la página Configuración del catálogo de máquinas. Haga clic en Siguiente en las páginas Introducción, Tipo de máquina y Administración de máquinas.
  3. En la página Administración de máquinas, seleccione la siguiente configuración:
    1. Seleccione Máquinas con administración de energía (por ejemplo, máquinas virtuales o PC blade).
    2. Seleccione tecnología de aprovisionamiento de Citrix. A continuación, seleccione Citrix Machine Creation Services™.
    3. En el campo Recursos, se enumeran los recursos que pertenecen a diferentes zonas. Seleccione cualquier recurso de red de Azure y haga clic en Siguiente.
  4. En la página Imagen: Para el tipo de imagen maestra, siga estos pasos:
    1. Seleccione Imagen maestra.
    2. En Imagen maestra, seleccione una imagen. El panel enumera todas las imágenes que pertenecen a la misma región que las de Recursos.
    3. Haga clic en Listo.
    4. Para el tipo de imagen preparada, seleccione Imagen preparada.
    5. En Imagen preparada, seleccione una versión de imagen de una definición de imagen.
    6. Haga clic en el nombre de la versión de la imagen. Para ver más detalles sobre la versión de imagen seleccionada, haga clic en el número de versión, que está subrayado.
    7. Si la versión de imagen seleccionada está configurada con un perfil de máquina, seleccione un perfil de máquina. Si la versión de imagen seleccionada no está configurada con un perfil de máquina, no puede elegir usar un perfil de máquina.
  5. Configure los ajustes en las siguientes páginas.
  6. En la página Configuración de disco, si la imagen preparada seleccionada utiliza un conjunto de cifrado de disco, no puede quitar el conjunto de cifrado, pero puede cambiar la clave por otra clave de cifrado.
  7. En la página Grupo de recursos, puede optar por crear un nuevo grupo de recursos o usar un grupo de recursos existente para colocar los recursos de este catálogo.
  8. Complete los ajustes en las siguientes páginas.
  9. En la página Resumen, compruebe los detalles del catálogo de máquinas. Introduzca un nombre y una descripción para el catálogo de máquinas. Haga clic en Finalizar.

Usar PowerShell

Crear una imagen preparada

Los comandos detallados de PowerShell para crear una especificación de versión de imagen preparada son los siguientes:

  1. Compruebe los nombres de definición de imagen disponibles mediante Test-ProvImageDefinitionNameAvailable command. Por ejemplo,

    Test-ProvImageDefinitionNameAvailable -ImageDefinitionName <string[]>
    <!--NeedCopy-->
    
  2. Cree una definición de imagen mediante el comando New-ProvImageDefinition. Por ejemplo,

    New-ProvImageDefinition -ImageDefinitionName image1 -OsType Windows -VdaSessionSupport MultiSession
    <!--NeedCopy-->
    
  3. Cree una nueva configuración para la definición de imagen en la conexión de alojamiento especificada mediante el comando Add-ProvImageDefinitionConnection.

    El CustomProperties para Add-ProvImageDefinitionConnection puede incluir lo siguiente. Si no utiliza los parámetros, se utilizan los valores predeterminados.

    • ResourceGroups: El grupo de recursos que tiene los discos base.
    • UseSharedImageGallery: Indicador del tipo de discos base. Utilice true para ACG (uso compartido de imágenes) y false para instantáneas.
    • ImageGallery: El nombre de la galería cuando el disco base es una versión de imagen ACG.

    Por ejemplo,

    • En caso de instantánea y grupo de recursos proporcionado por el cliente:

       $CustomerOwnRsourceGroupProperties = @"
       <CustomProperties xmlns="http:// schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <Property xsi:type="StringProperty" Name="ResourceGroups" Value="yangj_image" />
       </CustomProperties>
       "@
       <!--NeedCopy-->
      
    • En caso de ACG y grupo de recursos y galería de imágenes proporcionados por el cliente:

       $CustomerOwnAllProperties = @"
       <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" />
       <Property xsi:type="StringProperty" Name="ResourceGroups" Value="rg" />
       <Property xsi:type="StringProperty" Name="ImageGallery" Value="gallery" />
       </CustomProperties>
       "@
       <!--NeedCopy-->
      
    • En caso de ACG y solo grupo de recursos proporcionado por el cliente:

      $CustomerOwnResourceGroupProperties = @"
      <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" />
      <Property xsi:type="StringProperty" Name="ResourceGroups" Value="rg" />
      </CustomProperties>
      "@
      <!--NeedCopy-->
      
    • En caso de ACG y grupo de recursos y galería de imágenes administrados por Citrix:

       $CustomerOwnResourceGroupNothingProperties = @"
       <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" />
       </CustomProperties>
       "@
       <!--NeedCopy-->
      
    Add-ProvImageDefinitionConnection -ImageDefinitionName image1 -HypervisorConnectionName Azure28 [-CustomProperties $CustomProperties]
    <!--NeedCopy-->
    
  4. Cree una versión de imagen con el comando New-ProvImageVersion. Por ejemplo,

    New-ProvImageVersion -ImageDefinitionName image1 -Description "version 1"
    <!--NeedCopy-->
    
  5. Agregue una especificación de versión de imagen maestra a la versión de imagen con el comando Add-ProvImageVersionSpec. Por ejemplo,

    Add-ProvImageVersionSpec -ImageDefinitionName  image1  -ImageVersionNumber  1 -HostingUnitName azure -MasterImagePath "XDHyp:\HostingUnits\azure\image.folder\azureresourcegroup.resourcegroup\win2022-snapshot.snapshot"
    <!--NeedCopy-->
    

    Nota:

    Solo puede agregar una especificación de versión de imagen maestra a una versión de imagen para una unidad de alojamiento.

  6. Cree una especificación de versión de imagen preparada a partir de la especificación de versión de imagen maestra con el comando New-ProvImageVersionSpec. Por ejemplo,

    New-ProvImageVersionSpec
    -SourceImageVersionSpecUid  c6e7384c-b2f8-46d6-9519-29a2c57ed3cb
    -NetworkMapping @{"0"="XDHyp:\HostingUnits\azure\virtualprivatecloud.folder\azureresourcegroup.resourcegroup\azure-vnet-eastus.virtualprivatecloud\dev.network"}
    -ServiceOffering"XDHyp:\HostingUnits\azure\serviceoffering.folder\Standard_B2ms.serviceoffering" -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"></CustomProperties>" -RunAsynchronously
    <!--NeedCopy-->
    
  7. También puede compartir una especificación de versión de imagen preparada con otra unidad de alojamiento en todas las conexiones de alojamiento mediante el comando Add-ProvImageVersionSpecHostingUnit. Por ejemplo,

    Add-ProvImageVersionSpecHostingUnit -ImageVersionSpecUid xxxxxxx -HostingUnitName AzureWest
    <!--NeedCopy-->
    

    Nota:

    Una unidad de alojamiento y un tipo de preparación solo pueden tener una instancia preparada.

Ejemplo del conjunto completo de comandos de PowerShell para crear una definición de imagen, una versión de imagen y una especificación de versión de imagen preparada:

New-ProvImageDefinition -ImageDefinitionName image1 -OsType Windows -VdaSessionSupport MultiSession

$CustomProperties = @"
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" />
    <Property xsi:type="StringProperty" Name="ResourceGroups" Value="rg" />
    <Property xsi:type="StringProperty" Name="ImageGallery" Value="gallery" />
</CustomProperties>
"@

Add-ProvImageDefinitionConnection -ImageDefinitionName image1 -HypervisorConnectionName Azure28 -CustomProperties $CustomProperties

$imageVersion = New-ProvImageVersion -ImageDefinitionName image1 -Description "version 1"

$SourceImageVersionSpec = Add-ProvImageVersionSpec -ImageVersionUid $imageVersion.ImageVersionUid `
    -HostingUnitUid $hostingunit.HostingUnitUid `
    -MasterImagePath "XDHyp:\HostingUnits\azure28\image.folder\abc.resourcegroup\def-snapshot.snapshot"

New-ProvImageVersionSpec -NetworkMapping @{"0" = "XDHyp:\HostingUnits\azure28\virtualprivatecloud.folder\East US.region\virtualprivatecloud.folder\studio-mcs-infrastructure.resourcegroup\studio-mcs-vnet-eastus.virtualprivatecloud\mcs-dev.network" } -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"LicenseType`" Value=`"Windows_Server`" /></CustomProperties>" -ServiceOffering "XDHyp:\HostingUnits\azure28\serviceoffering.folder\Standard_B2s.serviceoffering" -SourceImageVersionSpecUid $SourceImageVersionSpec.ImageVersionSpecUid
Add-ProvImageVersionSpecHostingUnit -ImageVersionSpecUid xxxxxxx -HostingUnitName AzureWest
$PreparedImageVersionSpec = Get-ProvImageVersionSpec -ImageVersionUid $imageVersion.ImageVersionUid | Where SourceImageVersionSpecUid-eq $SourceImageVersionSpec.ImageVersionSpecUid
<!--NeedCopy-->

Nota:

  • Todas las especificaciones de versión de imagen de una definición de imagen deben pertenecer a la misma unidad de alojamiento.
  • Una versión de imagen solo puede tener una especificación de versión de imagen maestra y una especificación de versión de imagen preparada.
  • Todas las especificaciones de versión de imagen deben tener un perfil de máquina o ninguna de ellas debe tener un perfil de máquina.

Crear un catálogo con una especificación de versión de imagen preparada

Cree un catálogo de máquinas MCS a partir de la especificación de versión de imagen preparada con el comando New-ProvScheme. Por ejemplo,

New-ProvScheme -ProvisioningSchemeName <string> -ImageVersionSpecUid <Guid> -HostingUnitUid <Guid> -IdentityPoolUid <Guid> [-VMCpuCount <int>] [-VMMemoryMB <int>] [-UseWriteBackCache] [-NetworkMapping <Hashtable>] [-CleanOnBoot] [-Scope <string[]>] [-Metadata <Hashtable>] [-ServiceOffering <string>] [-SecurityGroup <string[]>] [-TenancyType <string>] [-MachineProfile <string>] [-CustomProperties <string>] [-ResetAdministratorPasswords] [-UseFullDiskCloneProvisioning] [-RunAsynchronously] [-PurgeJobOnSuccess] [-ProvisioningSchemeType <ProvisioningSchemeType>]
<!--NeedCopy-->

O bien,

New-ProvScheme -ProvisioningSchemeName <string> -ImageVersionSpecUid <Guid> -HostingUnitName <string> -IdentityPoolName <string> [-VMCpuCount <int>] [-VMMemoryMB <int>] [-UseWriteBackCache] [-NetworkMapping <Hashtable>] [-CleanOnBoot] [-Scope <string[]>] [-Metadata <Hashtable>] [-ServiceOffering <string>] [-SecurityGroup <string[]>] [-TenancyType <string>] [-MachineProfile <string>] [-CustomProperties <string>] [-ResetAdministratorPasswords] [-UseFullDiskCloneProvisioning] [-RunAsynchronously] [-PurgeJobOnSuccess] [-ProvisioningSchemeType <ProvisioningSchemeType>]
<!--NeedCopy-->

Si quiere usar una especificación de versión de imagen ACG, entonces establezca UseSharedImageGallery como true. Por ejemplo,

$provSchemeCustomProperties= @"
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" />
    <Property xsi:type="StringProperty" Name="StorageAccountType" Value="StandardSSD_LRS" />
</CustomProperties>
"@
New-ProvScheme -ProvisioningSchemeName assignimage -ImageVersionSpecUid $PreparedImageVersionSpec.ImageVersionSpecUid `
    -HostingUnitUid $hostingunit.HostingUnitUid `
    -IdentityPoolUid $IdentityPool.IdentityPoolUid `
    -CleanOnBoot -Scope @() -SecurityGroup @() `
    -ServiceOffering "XDHyp:\HostingUnits\azure28\serviceoffering.folder\Standard_B2s.serviceoffering" `
    -NetworkMapping @{"0"="XDHyp:\HostingUnits\azure28\virtualprivatecloud.folder\East US.region\virtualprivatecloud.folder\studio-mcs-infrastructure.resourcegroup\studio-mcs-vnet-eastus.virtualprivatecloud\mcs-dev.network"} `
    -CustomProperties $provSchemeCustomProperties
<!--NeedCopy-->

Ejemplo del conjunto completo de comandos de PowerShell para crear un catálogo:

$Catalog = New-BrokerCatalog  -AllocationType "Random"  -IsRemotePC $False  -MinimumFunctionalLevel "L7_20" -Name "azurecatalog" -PersistUserChanges "Discard" -ProvisioningType "MCS" -Scope @() -SessionSupport "MultiSession"

$IdentityPool = New-AcctIdentityPool  -AllowUnicode  -Domain "azure.local" -IdentityPoolName "azurecatalog" -IdentityType "ActiveDirectory"  -NamingScheme "azure##" -NamingSchemeType "Numeric" -Scope @()

$PreparedImageVersionSpec = Get-ProvImageVersionSpec -ImageDefinitionName image1 -ImageVersionNumber 1 -Filter "PreparationType -eq 'Mcs'"

$Task = New-ProvScheme -ProvisioningSchemeName azurecatalog -ImageVersionSpecUid $PreparedImageVersionSpec.ImageVersionSpecUid -HostingUnitName azure -IdentityPoolName azurecatalog -CleanOnBoot -Scope @() -SecurityGroup @() -ServiceOffering "XDHyp:\HostingUnits\azure\serviceoffering.folder\Standard_B2s.serviceoffering" -NetworkMapping @{"0"="XDHyp:\HostingUnits\azure\virtualprivatecloud.folder\azureresourcegroup.resourcegroup\azure-vnet-eastus.virtualprivatecloud\dev.network"} -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`">    <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" /><Property xsi:type=`"StringProperty`" Name=`"StorageAccountType`" Value=`"StandardSSD_LRS`" /></CustomProperties>" -RunAsynchronously

Get-ProvTask -TaskId $Task.TaskId
$ProvScheme = Get-ProvScheme -ProvisioningSchemeName azurecatalog

Set-BrokerCatalog -Name $Catalog.Name -ProvisioningSchemeId $ProvScheme.ProvisioningSchemeUid
<!--NeedCopy-->

Más información

Pasos siguientes