Citrix Virtual Apps and Desktops

Criar um catálogo de máquinas com imagem preparada no Azure

Crie imagens preparadas e use-as para criar um catálogo de máquinas MCS usando:

As etapas principais para criar um catálogo de máquinas MCS usando a imagem preparada são:

  1. Crie a definição da imagem e as versões iniciais da imagem.
  2. Use a versão da imagem como uma imagem preparada para criar um catálogo.

Usar o Web Studio

Criar uma definição de imagem e a versão inicial da imagem

Para criar uma definição de imagem e a versão inicial da imagem, faça o seguinte:

  1. No Web Studio, vá para o nó “Imagens” e clique em “Criar Definição de Imagem”. Clique em “Avançar” na página “Introdução”.
  2. Na página “Definição de Imagem”, especifique o “Tipo de SO” e o “Tipo de Sessão” para a definição da imagem.
  3. Selecione um grupo de recursos existente ou crie um novo para armazenar os recursos da imagem. Para habilitar o compartilhamento de imagens, selecione “Colocar versões de imagem” na Galeria de Computação do Azure e, em seguida, escolha criar uma nova galeria ou usar uma existente para armazenar suas versões de imagem.
  4. Na página “Imagem”, selecione “Recursos” (somente os recursos aplicáveis para a conexão definida são listados) e uma imagem mestre para usar como modelo para criar a versão da imagem. Você pode marcar a caixa de seleção “Usar um perfil de máquina” e selecionar um perfil de máquina.

    Observação:

    Antes de selecionar uma imagem, verifique se a imagem mestre tem o VDA 2311 ou posterior instalado e se o driver MCSIO está instalado no VDA.

  5. Na página “Tipos de Armazenamento e Licenças”, selecione o tipo de armazenamento e licença a ser usado como parte do processo de preparação da imagem.

    Observação:

    Se você selecionar um perfil de máquina na página “Imagem”, o tipo de licença do perfil de máquina será pré-selecionado com base na configuração do perfil.

  6. Na página “Especificação da Máquina”, selecione um tamanho de máquina. Se você selecionar um perfil de máquina na página “Imagem”, o tamanho da máquina do perfil de máquina será selecionado por padrão.
  7. Na página “NICs”, selecione ou adicione NICs para a imagem de preparação. Para cada NIC, selecione uma rede virtual associada.
  8. Na página “Configurações de Disco”, selecione a chave de criptografia gerenciada pelo cliente (CMEK). Se o perfil da máquina não tiver uma CMEK, mas a imagem mestre tiver, ele pré-selecionará a CMEK da imagem mestre.
  9. Na página “Descrição da Versão”, insira uma descrição para a versão inicial da imagem criada.
  10. Na página “Resumo”, verifique os detalhes da definição da imagem e da versão inicial da imagem criada. Insira um nome e uma descrição para a definição da imagem. Clique em “Concluir”.

Criar versões de imagem

As versões de imagem permitem o gerenciamento de diferentes iterações ou atualizações de uma imagem específica. Essa funcionalidade permite manter várias versões de uma imagem para diferentes finalidades.

Para criar versões de imagem a partir da versão inicial da imagem, faça o seguinte:

Observação:

A unidade de hospedagem de todas as versões da imagem deve ser a mesma.

  1. Vá para o nó “Imagens”, selecione uma versão de imagem ou uma definição de imagem e clique em “Criar Versão de Imagem”.
  2. Na página de definição de imagem, você pode alterar a unidade de hospedagem e selecionar novamente a imagem mestre e o perfil de máquina para essa versão de imagem.
  3. Se você quiser que a configuração da versão da imagem seja diferente da versão da imagem configurada inicialmente, configure as definições nas páginas “Tipos de Armazenamento e Licença”, “Especificação da Máquina”, “NICs” e “Configurações de Disco” da caixa de diálogo “Criar Versão de Imagem”.
  4. Adicione uma descrição para a versão da imagem. Clique em “Concluir”.

create-image-versions

Observação:

Se a criação da versão da imagem falhar por qualquer motivo, a guia “Solução de Problemas” na parte inferior oferece uma opção “Tentar Novamente”.

Imagens preparadas compartilhadas

Para compartilhar imagens preparadas entre diferentes unidades de hospedagem para o Azure, siga estas etapas:

  1. Clique com o botão direito do mouse em uma versão de imagem e selecione “Gerenciar Compartilhamento de Imagem”. Todas as unidades de hospedagem em seu ambiente Azure aparecem. Os recursos de onde a versão da imagem é criada são desabilitados para qualquer ação.
  2. Selecione as unidades de hospedagem com as quais você deseja compartilhar a imagem e clique em “Salvar”. A coluna “Status do Compartilhamento” mostra Em andamento.
  3. Clique na guia “Recursos” para obter mais detalhes sobre o status do compartilhamento.

Observação:

Quando o status do compartilhamento da versão da imagem está em andamento, a opção “Excluir Versão de Imagem” ou “Gerenciar Compartilhamento de Imagem” é desabilitada.

Criar um catálogo de máquinas a partir do nó Imagens

Use a opção “Criar catálogo” no nó “Imagens” para criar um catálogo usando a versão da imagem.

Alternativamente, você pode selecionar a versão ao criar um catálogo no nó “Catálogos de Máquinas”, vinculando à opção de imagem preparada no fluxo de trabalho de criação de catálogo. Consulte Criar um catálogo de máquinas a partir do nó Catálogos de Máquinas

Para criar um catálogo de máquinas MCS a partir do nó “Imagens”, faça o seguinte:

  1. Selecione uma versão de imagem e clique em “Criar catálogo”. Clique em “Avançar” na página “Introdução”.
  2. Na página “Experiência da Área de Trabalho”, selecione a experiência de área de trabalho necessária.
  3. Da página “Imagem” até a página “Configurações de Disco”, as configurações são pré-selecionadas com base na versão da imagem selecionada.
  4. Na página “Grupo de Recursos”, você pode optar por criar um novo grupo de recursos ou usar um grupo de recursos existente para colocar os recursos deste catálogo.
  5. Conclua as configurações nas páginas seguintes.
  6. Na página “Resumo”, verifique os detalhes do catálogo de máquinas. Insira um nome e uma descrição para o catálogo de máquinas. Clique em “Concluir”.
  7. Vá para o nó “Catálogos de Máquinas” para ver o catálogo de máquinas criado.

Criar um catálogo de máquinas a partir do nó Catálogos de Máquinas

Para criar um catálogo de máquinas MCS a partir do nó “Catálogos de Máquinas”, faça o seguinte:

  1. Clique em “Catálogos de Máquinas” no painel de navegação esquerdo.
  2. Clique em “Criar Catálogo de Máquinas”. A página “Configuração do Catálogo de Máquinas” aparece. Clique em “Avançar” nas páginas “Introdução”, “Tipo de Máquina” e “Gerenciamento de Máquinas”.
  3. Na página “Gerenciamento de Máquinas”, selecione as seguintes configurações:
    1. Selecione “Máquinas com gerenciamento de energia (por exemplo, máquinas virtuais ou PCs blade)”.
    2. Selecione “Tecnologia de provisionamento Citrix”. Em seguida, selecione “Citrix Machine Creation Services™”.
    3. No campo “Recursos”, os recursos pertencentes a diferentes zonas são listados. Selecione qualquer recurso de rede do Azure e clique em “Avançar”.
  4. Na página “Imagem”: Para o tipo de imagem Mestra, siga as etapas:
    1. Selecione Imagem Mestra.
    2. Em Imagem Mestra, selecione uma imagem. O painel lista todas as imagens que pertencem à mesma região dos Recursos.
    3. Clique em “Concluído”.
    4. Para o tipo de imagem Preparada, selecione “Imagem preparada”.
    5. Em “Imagem preparada”, selecione uma versão de imagem de uma definição de imagem.
    6. Clique no nome da versão da imagem. Para ver mais detalhes sobre a versão da imagem selecionada, clique no número da versão, que está sublinhado.
    7. Se a versão da imagem selecionada estiver configurada com um perfil de máquina, selecione um perfil de máquina. Se a versão da imagem selecionada não estiver configurada com um perfil de máquina, você não poderá optar por usar um perfil de máquina.
  5. Configure as definições nas páginas seguintes.
  6. Na página “Configurações de Disco”, se a imagem preparada selecionada usar um conjunto de criptografia de disco, você não poderá remover o conjunto de criptografia, mas poderá alterar a chave para outra chave de criptografia.
  7. Na página “Grupo de Recursos”, você pode optar por criar um novo grupo de recursos ou usar um grupo de recursos existente para colocar os recursos deste catálogo.
  8. Conclua as configurações nas páginas seguintes.
  9. Na página “Resumo”, verifique os detalhes do catálogo de máquinas. Insira um nome e uma descrição para o catálogo de máquinas. Clique em “Concluir”.

Usar o PowerShell

Criar uma imagem preparada

Os comandos detalhados do PowerShell para criar uma especificação de versão de imagem preparada são os seguintes:

  1. Verifique os nomes de definição de imagem disponíveis usando o comando Test-ProvImageDefinitionNameAvailable. Por exemplo,

    Test-ProvImageDefinitionNameAvailable -ImageDefinitionName <string[]>
    <!--NeedCopy-->
    
  2. Crie uma definição de imagem usando o comando New-ProvImageDefinition. Por exemplo,

    New-ProvImageDefinition -ImageDefinitionName image1 -OsType Windows -VdaSessionSupport MultiSession
    <!--NeedCopy-->
    
  3. Crie uma nova configuração para a definição de imagem na conexão de hospedagem especificada usando o comando Add-ProvImageDefinitionConnection.

    As CustomProperties para Add-ProvImageDefinitionConnection podem incluir o seguinte. Se você não usar os parâmetros, os valores padrão serão usados.

    • ResourceGroups: O grupo de recursos que contém os discos base.
    • UseSharedImageGallery: Indicador para o tipo de discos base. Use true para ACG (compartilhamento de imagem) e false para snapshot.
    • ImageGallery: O nome da galeria quando o disco base é uma versão de imagem ACG.

    Por exemplo,

    • No caso de snapshot e grupo de recursos fornecido pelo 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-->
      
    • No caso de ACG e grupo de recursos e galeria de imagens fornecidos pelo 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-->
      
    • No caso de ACG e apenas grupo de recursos fornecido pelo 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-->
      
    • No caso de ACG e grupo de recursos e galeria de imagens gerenciados pela 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. Crie uma versão de imagem usando o comando New-ProvImageVersion. Por exemplo,

    New-ProvImageVersion -ImageDefinitionName image1 -Description "version 1"
    <!--NeedCopy-->
    
  5. Adicione uma especificação de versão de imagem mestre à versão da imagem usando o comando Add-ProvImageVersionSpec. Por exemplo,

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

    Observação:

    Você pode adicionar apenas uma especificação de versão de imagem mestre a uma versão de imagem para uma unidade de hospedagem.

  6. Crie uma especificação de versão de imagem preparada a partir da especificação de versão de imagem mestre usando o comando New-ProvImageVersionSpec. Por exemplo,

    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. Você também pode compartilhar uma especificação de versão de imagem preparada com outra unidade de hospedagem em todas as conexões de hospedagem usando o comando Add-ProvImageVersionSpecHostingUnit. Por exemplo,

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

    Observação:

    Uma unidade de hospedagem e um tipo de preparação podem ter apenas uma instância preparada.

Exemplo do conjunto completo de comandos do PowerShell para criar definição de imagem, versão de imagem e especificação de versão de imagem 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-->

Observação:

  • Todas as especificações de versão de imagem em uma definição de imagem devem pertencer à mesma unidade de hospedagem.
  • Uma versão de imagem pode ter apenas uma especificação de versão de imagem mestre e uma especificação de versão de imagem preparada.
  • Todas as especificações de versão de imagem devem ter um perfil de máquina ou nenhuma das especificações de versão de imagem deve ter um perfil de máquina.

Criar um catálogo usando uma especificação de versão de imagem preparada

Crie um catálogo de máquinas MCS a partir da especificação de versão de imagem preparada usando o comando New-ProvScheme. Por exemplo,

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

Ou,

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

Se você quiser usar uma especificação de versão de imagem ACG, defina UseSharedImageGallery como true. Por exemplo,

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

Exemplo do conjunto completo de comandos do PowerShell para criar um 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-->

Mais informações

Onde ir em seguida