Citrix Virtual Apps and Desktops

Gerenciar um catálogo do Microsoft Azure

Nota:

Desde julho de 2023, a Microsoft renomeou o Azure Active Directory (Azure AD) para Microsoft Entra ID. Neste documento, qualquer referência a Azure Active Directory, Azure AD ou AAD agora se refere a Microsoft Entra ID.

Gerenciar catálogos de máquinas descreve os assistentes que gerenciam um catálogo de máquinas. As informações a seguir abrangem detalhes específicos para ambientes de nuvem do Microsoft Azure Resource Manager.

Nota:

Antes de gerenciar um catálogo do Microsoft Azure, você precisa concluir a criação de um catálogo do Microsoft Azure. Consulte Criar um catálogo do Microsoft Azure.

Alterar o tipo de armazenamento para um nível inferior quando uma VM é desligada

Você pode economizar custos de armazenamento alterando o tipo de armazenamento de um disco gerenciado para um nível inferior quando você desliga uma VM. Para fazer isso, use a propriedade personalizada StorageTypeAtShutdown.

O tipo de armazenamento do disco muda para um nível inferior (conforme especificado na propriedade personalizada StorageTypeAtShutdown) quando você desliga a VM. Depois de ligar a VM, o tipo de armazenamento volta ao original (conforme especificado na propriedade personalizada StorageType ou na propriedade personalizada WBCDiskStorageType).

Importante:

O disco não existe até que a VM seja ligada pelo menos uma vez. Portanto, você não pode alterar o tipo de armazenamento ao ligar a VM pela primeira vez.

Requisitos

  • Aplicável a um disco gerenciado. Isso implica que você define a propriedade personalizada UseManagedDisks como true.
  • Aplicável a um catálogo persistente e não persistente com um disco de SO persistente. Isso implica que você define a propriedade personalizada persistOsDisk como true.
  • Aplicável a um catálogo não persistente com um disco WBC persistente. Isso implica que você define a propriedade personalizada persistWBC como true.

Restrição

  • De acordo com a Microsoft, você só pode alterar o tipo de disco duas vezes por dia. Consulte o documento da Microsoft. De acordo com a Citrix, a atualização de StorageType ocorre sempre que há uma ação de Iniciar ou Desalocar para a VM. Portanto, limite o número de ações de energia por VM a duas por dia. Por exemplo, uma ação de energia pela manhã para iniciar a VM e uma à noite para desalocar a VM.

Alterar o tipo de armazenamento para um nível inferior

Antes de prosseguir com as etapas, consulte os Requisitos e a Restrição.

  1. Adicione a propriedade personalizada StorageTypeAtShutdown, defina o valor como Standard_LRS (HDD) e crie um catálogo usando New-ProvScheme. Para obter informações sobre como criar um catálogo usando o PowerShell, consulte https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/creating-a-catalog/.

    Nota:

    Se StorageTypeAtShutdown tiver qualquer valor diferente de vazio ou Standard_LRS (HDD), a operação falhará.

    Exemplo de configuração de propriedades personalizadas ao criar um catálogo persistente:

    $customProperties='<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
    <Property xsi:type="StringProperty" Name="StorageType" Value="Premium_LRS" />
    <Property xsi:type="StringProperty" Name="ResourceGroups" Value="" />
    <Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
    <Property xsi:type="StringProperty" Name="SchemaVersion" Value="2" />
    <Property xsi:type="StringProperty" Name="OsType" Value="Windows" />
    <Property xsi:type="StringProperty" Name="StorageTypeAtShutdown" Value="Standard_LRS" />
    </CustomProperties>'
    <!--NeedCopy-->
    

    Exemplo de configuração de propriedades personalizadas ao criar um catálogo não persistente:

    $customProperties='<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
    <Property xsi:type="StringProperty" Name="StorageType" Value="Premium_LRS" />
    <Property xsi:type="StringProperty" Name="WbcDiskStorageType" Value="Standard_SSD_LRS" />
    <Property xsi:type="StringProperty" Name="ResourceGroups" Value="" />
    <Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
    <Property xsi:type="StringProperty" Name="SchemaVersion" Value="2" />
    <Property xsi:type="StringProperty" Name="OsType" Value="Windows" />
    <Property xsi:type="BooleanProperty" Name="persistWBC" Value=true />
    <Property xsi:type="BooleanProperty" Name="persistOsDisk" Value=true />
    <Property xsi:type="StringProperty" Name="StorageTypeAtShutdown" Value="Standard_LRS" />
    </CustomProperties>'
    <!--NeedCopy-->
    

    Nota:

    Ao usar um perfil de máquina, a propriedade personalizada tem precedência sobre a propriedade definida em MachineProfile.

  2. Desligue a VM e verifique o tipo de armazenamento da VM no portal do Azure. O tipo de armazenamento do disco muda para um nível inferior, conforme especificado na propriedade personalizada StorageTypeAtShutdown.
  3. Ligue a VM. O tipo de armazenamento do disco volta para o tipo de armazenamento mencionado em:
    • Propriedade personalizada StorageType para disco de SO
    • Propriedade personalizada WBCDiskStorageType para disco WBC somente se você especificá-la em CustomProperties. Caso contrário, ela volta para o tipo de armazenamento mencionado em StorageType.

Aplicar StorageTypeAtShutdown a um catálogo existente

Antes de prosseguir com as etapas, consulte os Requisitos e a Restrição.

Use Set-ProvScheme para adicionar uma VM a um catálogo existente. O recurso se aplica a novas VMs adicionadas após a execução de Set-ProvScheme. As máquinas existentes não são afetadas.

Exemplo de configuração de propriedades personalizadas ao adicionar uma VM a um catálogo existente:

$customProperties='<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="StorageType" Value="Premium_LRS" />
<Property xsi:type="StringProperty" Name="WbcDiskStorageType" Value="Standard_SSD_LRS" />
<Property xsi:type="StringProperty" Name="ResourceGroups" Value="" />
<Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
<Property xsi:type="StringProperty" Name="SchemaVersion" Value="2" />
    <Property xsi:type="StringProperty" Name="OsType" Value="Windows" />
<Property xsi:type="BooleanProperty" Name="persistWBC" Value=true />
<Property xsi:type="BooleanProperty" Name="persistOsDisk" Value=true />
<Property xsi:type="StringProperty" Name="StorageTypeAtShutdown" Value="Standard_LRS" />
</CustomProperties>'

$ProvScheme = Get-Provscheme -ProvisioningSchemeName $CatalogName

Set-ProvScheme -ProvisioningSchemeName $ProvScheme.ProvisioningSchemeName -CustomProperties $customProperties
<!--NeedCopy-->

Alterar o tipo de armazenamento de VMs existentes para um nível inferior no desligamento

Antes de prosseguir com as etapas, consulte os Requisitos e a Restrição.

Você pode economizar custos de armazenamento alterando o tipo de armazenamento de VMs existentes para um nível inferior quando as VMs são desligadas. Para fazer isso, use a propriedade personalizada StorageTypeAtShutdown.

Para alterar o tipo de armazenamento de máquinas existentes em um catálogo para um nível inferior quando as VMs são desligadas:

  1. Abra uma janela do PowerShell.
  2. Execute asnp citrix* para carregar os módulos PowerShell específicos da Citrix.
  3. Execute Get-Provscheme -ProvisioningSchemeName $CatalogName.
  4. Altere a string de propriedades personalizadas.

    $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="StorageTypeAtShutdown" Value="Standard_LRS" />
    </CustomProperties>'
    <!--NeedCopy-->
    
  5. Atualize o esquema de provisionamento do catálogo existente. A atualização se aplica a novas VMs adicionadas após a execução de Set-ProvScheme.

    Set-ProvScheme -ProvisioningSchemeName $CatalogName -CustomProperties $customProperties
    <!--NeedCopy-->
    
  6. Atualize as VMs existentes para habilitar StorageTypeAtShutdown.

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName $CatalogName -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  7. Na próxima vez que você ligar as máquinas, a propriedade StorageTypeAtShutdown das máquinas será atualizada. O tipo de armazenamento muda no próximo desligamento.
  8. Execute o seguinte comando para visualizar o valor de StorageTypeAtShutdown para cada VM em um catálogo:

    Get-ProvVM -ProvisioningSchemeName <catalog-name> | foreach { $vmName = $_.VMName; $storageTypeAtShutdown = ($_.CustomVmData | ConvertFrom-Json).StorageTypeAtShutdown.DiskStorageAccountType; return New-Object psobject -Property @{ "VMName" = $vmName; "StorageTypeAtShutdown" = $storageTypeAtShutdown } }
    <!--NeedCopy-->
    

Atualizar máquinas provisionadas para o estado atual do esquema de provisionamento

O comando Set-ProvScheme altera o esquema de provisionamento. No entanto, ele não afeta as máquinas existentes. Usando o comando PowerShell Set-ProvVMUpdateTimeWindow, você pode aplicar o esquema de provisionamento atual a uma máquina persistente ou não persistente existente ou a um conjunto de máquinas. Você também pode agendar um período para as atualizações de configuração das máquinas provisionadas pelo MCS existentes. Qualquer inicialização ou reinicialização durante o período agendado aplica uma atualização agendada do esquema de provisionamento a uma máquina. Atualmente, no Azure, você pode atualizar ServiceOffering, MachineProfile e as seguintes propriedades personalizadas:

  • StorageType
  • WBCDiskStorageType
  • IdentityDiskStorageType
  • LicenseType
  • DedicatedHostGroupId
  • PersistWBC
  • PersistOsDisk
  • PersistVm

Nota:

  • Você só pode atualizar as propriedades personalizadas StorageType, WBCDiskStorageType e IdentityDiskStorageType para um catálogo usando disco gerenciado em ambientes Azure.
  • Se você executar Set-ProvVMUpdateTimeWindow duas vezes, o comando mais recente terá efeito.

Você pode atualizar:

  • Uma única VM
  • Uma lista de VMs específicas ou todas as VMs existentes associadas a um ID de esquema de provisionamento
  • Uma lista de VMs específicas ou todas as VMs existentes associadas a um nome de esquema de provisionamento (nome do catálogo de máquinas)

Depois de fazer as seguintes alterações no esquema de provisionamento, a instância da VM é recriada para catálogos persistentes no Azure:

  • Alterar o MachineProfile
  • Remover LicenseType
  • Remover DedicatedHostGroupId

Nota:

O disco do SO das máquinas existentes, juntamente com todos os seus dados, permanece como está e uma nova VM é anexada ao disco.

Antes de atualizar as VMs existentes:

  1. Verifique a configuração das máquinas existentes. Por exemplo,

    Get-ProvScheme | select ProvisioningSchemeName, ProvisioningSchemeVersion
    <!--NeedCopy-->
    
  2. Atualize o esquema de provisionamento. Por exemplo,

    • Com VM como entrada de perfil de máquina:

       Set-ProvScheme -ProvisioningSchemeName "my-catalog" -MachineProfile "XDHyp:\HostingUnits\<hosting-unit>\machineprofile.folder\<resource-group>.resourcegroup\<virtual-machine>.vm"
       <!--NeedCopy-->
      
    • Com especificação de modelo como entrada de perfil de máquina:

       Set-ProvScheme -ProvisioningSchemeName "my-catalog"
       -MachineProfile "XDHyp:\HostingUnits\<hosting-unit>\machineprofile.folder\<resource-group>.resourcegroup\<template-spec>.templatespec\<template-spec-version>.templatespecversion"
       -ServiceOffering "XDHyp:\HostingUnits\<hosting-unit>\serviceoffering.folder\<service-offering>.serviceoffering"
       <!--NeedCopy-->
      
    • Com apenas oferta de serviço:

       Set-ProvScheme -ProvisioningSchemeName "my-catalog" -ServiceOffering "XDHyp:\HostingUnits\<hosting-unit>\serviceoffering.folder\<service-offering>.serviceoffering"
       <!--NeedCopy-->
      
  3. Verifique se a propriedade atual da VM corresponde ao esquema de provisionamento atual e se há alguma ação de atualização pendente na VM. Por exemplo,

    Get-ProvVM | select VMName, ProvisioningSchemeUpdateRequested, ProvisioningSchemeVersion
    <!--NeedCopy-->
    

    Você também pode encontrar máquinas com uma versão específica. Por exemplo,

    Get-ProvVM -Filter "ProvisioningSchemeVersion -eq 1" | select VMName, ProvisioningSchemeVersion
    <!--NeedCopy-->
    

Para solicitar que as atualizações para máquinas existentes sejam aplicadas na próxima reinicialização:

  1. Execute os seguintes comandos para atualizar as máquinas existentes e fazer com que as atualizações sejam aplicadas na próxima reinicialização.

    • Para atualizar todas as máquinas existentes. Por exemplo,

       Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -StartsNow -DurationInMinutes -1
       <!--NeedCopy-->
      
    • Para atualizar uma lista de máquinas específicas. Por exemplo,

       Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -VMName <List-Of-Vm-Names> -StartsNow -DurationInMinutes -1
       <!--NeedCopy-->
      
    • Para atualizar máquinas com base na saída de Get-ProvVM. Por exemplo,

       Get-ProvVM -ProvisioningSchemeName "my-catalog" | Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -StartsNow -DurationInMinutes -1
       <!--NeedCopy-->
      

    Nota:

    • StartsNow indica que a hora de início agendada é a hora atual.
    • DurationInMinutes com um número negativo (por exemplo, –1) indica que não há limite superior para a janela de tempo do agendamento.
  2. Encontre máquinas com uma atualização agendada. Por exemplo,

    Get-ProvVM -Filter "ProvisioningSchemeUpdateAfter" | select VMName, ProvisioningSchemeUpdateAfter
    <!--NeedCopy-->
    
  3. Reinicie as máquinas. Na próxima inicialização, as alterações de propriedade são aplicadas às máquinas existentes. Você pode verificar o status atualizado usando o seguinte comando. Por exemplo,

    Get-ProvVM | select VMName, ProvisioningSchemeUpdateRequested, ProvisioningSchemeVersion
    <!--NeedCopy-->
    

Para agendar uma VM para atualizar para as configurações de provisionamento mais recentes na próxima vez que ela iniciar na janela de tempo agendada:

  1. Execute os seguintes comandos:

    • Para agendar uma atualização com a hora de início como a hora atual

       Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -VMName vm1 -StartsNow -DurationInMinutes 120
       <!--NeedCopy-->
      
    • Para agendar uma atualização em um fim de semana

       Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName “ my-catalog “ -VMName “vm1” -StartTimeInUTC “10/15/2022 9:00am” -DurationInMinutes (New –TimeSpan –Days 2).TotalMinutes
       <!--NeedCopy-->
      

    Nota:

    • VMName é opcional. Se não for especificado, a atualização é agendada para todo o catálogo.
    • Em vez de StartTimeInUTC, use StartsNow para indicar que a hora de início do agendamento é a hora atual.
    • DurationInMinutes é opcional. O padrão é 120 minutos. Um número negativo (por exemplo, –1) indica que não há limite superior para a janela de tempo do agendamento.
  2. Verifique o status da atualização.

    Get-ProvVM | select VMName, ProvisioningSchemeUpdateRequested, ProvisioningSchemeUpdateUntil, ProvisioningSchemeVersion
    <!--NeedCopy-->
    
  3. Ligue a VM. Se você ligar a máquina após o período agendado, a atualização de configuração não será aplicada. Se você ligar a máquina dentro do período agendado,

    • Se a máquina estiver desligada e
      • você não ligar a máquina, a atualização de configuração não será aplicada
      • você ligar a máquina, a atualização de configuração será aplicada
    • Se a máquina estiver ligada e
      • você não reiniciar a máquina, a atualização de configuração não será aplicada
      • você reiniciar a máquina, a atualização de configuração será aplicada

Para cancelar a atualização de configuração:

Você também pode cancelar uma atualização de configuração de uma única VM, várias VMs ou um catálogo inteiro. Para cancelar uma atualização de configuração:

  1. Execute Clear-ProvVMUpdateTimeWindow. Por exemplo:

    • Para cancelar a atualização de configuração agendada para uma única VM:

        Clear-ProvVMUpdateTimeWindow -ProvisioningSchemeName “ my-catalog “ -VMName “vm1”
        <!--NeedCopy-->
      
    • Para cancelar a atualização de configuração agendada para várias VMs:

       Clear-ProvVMUpdateTimeWindow -ProvisioningSchemeName "my-catalog" -VMName "vm1","vm2"
       <!--NeedCopy-->
      

      Nota:

      As VMs devem ser do mesmo catálogo.

Atualizar propriedades de VMs individuais

Você pode atualizar as propriedades de VMs individuais em um catálogo de máquinas MCS persistente usando o comando PowerShell Set-ProvVM. No entanto, as atualizações não são aplicadas imediatamente. Você deve definir a janela de tempo usando o comando PowerShell Set-ProvVMUpdateTimeWindow para que as atualizações sejam aplicadas.

Essa implementação ajuda você a gerenciar VMs individuais de forma eficiente sem atualizar todo o catálogo de máquinas. Atualmente, esse recurso é aplicável apenas ao ambiente Azure.

Atualmente, as propriedades que você pode atualizar são:

  • CustomProperties
  • ServiceOffering
  • MachineProfile

Usando esse recurso, você pode:

Antes de atualizar as propriedades de uma VM:

  1. Abra uma janela do PowerShell.
  2. Execute asnp citrix* para carregar os módulos PowerShell específicos da Citrix.
  3. Verifique a configuração do catálogo de máquinas existente. Por exemplo:

    Get-ProvScheme -ProvisioningSchemeName AzureCatalog
    <!--NeedCopy-->
    
  4. Verifique a configuração da VM na qual você deseja aplicar as atualizações. Por exemplo,

    Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

Atualizar propriedades de uma VM

Faça o seguinte para atualizar as propriedades em uma VM:

  1. Desligue a VM na qual você deseja aplicar as atualizações.
  2. Atualize as propriedades da VM. Por exemplo, se você quiser atualizar a propriedade personalizada de tipo de armazenamento (StorageType) da VM, execute o seguinte:

    Set-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1 -CustomProperties "...<Property Name='StorageType' Value='Premium_LRS' />..."
    <!--NeedCopy-->
    

    Você pode atualizar as propriedades de duas VMs em um catálogo de máquinas simultaneamente. Por exemplo:

    Set-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1 -CustomProperties "...<Property Name='StorageType' Value='Premium_LRS' />..."
    <!--NeedCopy-->
    
    Set-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine2 -CustomProperties "...<Property Name='StorageType' Value='StandardSSD_LRS' />..."
    <!--NeedCopy-->
    

    Nota:

    As atualizações não são aplicadas imediatamente.

  3. Obtenha a lista de propriedades que devem ser atualizadas e a versão da configuração. Por exemplo,

    Get-ProvVMConfiguration -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    Verifique o valor da propriedade Version e as propriedades a serem atualizadas (neste caso, StorageType).

  4. Verifique a versão da configuração. Por exemplo,

    Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    Verifique o valor da propriedade ProvVMConfigurationVersion. A atualização ainda não foi aplicada. A VM ainda está na configuração antiga.

  5. Solicite a atualização agendada. Por exemplo,

     Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName AzureCatalog -StartsNow -DurationInMinutes -1
     <!--NeedCopy-->
    

    Para obter mais informações sobre atualizações agendadas, consulte Atualizar máquinas provisionadas para o estado atual do esquema de provisionamento.

    Nota:

    Qualquer atualização pendente do esquema de provisionamento também é aplicada.

  6. Reinicie a VM. Por exemplo,

    New-BrokerHostingPowerAction -MachineName machine1 -Action TurnOn
    <!--NeedCopy-->
    
  7. Verifique a versão da configuração. Por exemplo,

    Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    Verifique o valor da propriedade ProvVMConfigurationVersion. A atualização agora está aplicada. A VM agora tem a nova configuração.

  8. Para aplicar mais atualizações de configuração na VM, desligue a VM e repita as etapas.

Manter as propriedades atualizadas em uma VM após a atualização do catálogo de máquinas

Faça o seguinte para manter as propriedades atualizadas em uma VM:

  1. Desligue a VM na qual você deseja aplicar as atualizações.
  2. Atualize o catálogo de máquinas. Por exemplo, se você quiser alterar o tamanho da VM (ServiceOffering) e o tipo de armazenamento (StorageType), execute o seguinte:

    Set-ProvScheme -ProvisioningSchemeName AzureCatalog -ServiceOffering Standard_E4_v3 -CustomProperties "...<Property Name='StorageType' Value='StandardSSD_LRS' />..."
    <!--NeedCopy-->
    
  3. Obtenha os detalhes de configuração do catálogo de máquinas. Por exemplo,

    Get-ProvScheme -ProvisioningSchemeName AzureCatalog
    <!--NeedCopy-->
    

    A ProvisioningSchemeVersion agora é incrementada em um. O tamanho da VM e o tipo de armazenamento também são atualizados.

  4. Atualize as propriedades da VM. Por exemplo, forneça um perfil de máquina para a VM.

    Set-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1 -MachineProfile "XDHyp:\HostingUnits\<hosting-unit>\machineprofile.folder\<resource-group>.resourcegroup\<template-spec>.templatespec\<template-spec-version>.templatespecversion"
    <!--NeedCopy-->
    

    Nota:

    A entrada do perfil da máquina tem uma tag e um tamanho de VM (ServiceOffering) diferente especificado.

  5. Obtenha a lista de propriedades que a VM terá após mesclar as atualizações de configuração na VM com as atualizações do catálogo de máquinas. Por exemplo,

    Get-ProvVMConfigurationResultantSet -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    Nota:

    Quaisquer atualizações na VM substituirão as atualizações feitas no catálogo de máquinas.

  6. Solicite a atualização agendada para a VM. Por exemplo,

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName AzureCatalog -VMName machine1 -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  7. Reinicie a VM. Por exemplo,

    New-BrokerHostingPowerAction -MachineName machine1 -Action TurnOn
    <!--NeedCopy-->
    

    A VM mantém seu tamanho de VM atualizado conforme derivado do perfil da máquina. Os valores de tag conforme especificados no perfil da máquina também são aplicados à VM. No entanto, o tipo de armazenamento é derivado do esquema de provisionamento mais recente.

  8. Obtenha a versão da configuração da VM. Por exemplo,

    Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    A ProvisioningSchemeVersion e a ProvVMConfigurationVersion agora mostram a versão mais recente.

Reverter as atualizações de configuração aplicadas a uma VM

  1. Após aplicar as atualizações a uma VM, desligue a VM.
  2. Execute o seguinte comando para remover as atualizações aplicadas na VM. Por exemplo,

    Set-ProvVM -RevertToProvSchemeConfiguration -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    
  3. Solicite a atualização agendada para a VM. Por exemplo,

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName AzureCatalog -VMName machine1 -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  4. Reinicie a VM. Por exemplo,

    New-BrokerHostingPowerAction -MachineName machine1 -Action TurnOn
    <!--NeedCopy-->
    
  5. Verifique a versão da configuração da VM. Por exemplo,

    Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1
    <!--NeedCopy-->
    

    O valor de ProvVMConfigurationVersion agora é a versão de configuração do catálogo de máquinas.

Alterar a criptografia de disco

Você pode alterar a criptografia de disco em ambientes de virtualização do Azure e fazer o seguinte:

  • Criar um catálogo de máquinas MCS com um conjunto de criptografia de disco (DES) diferente do DES da imagem mestre usando o comando New-ProvScheme. Por exemplo:

     $customProperties = @"
     <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
     <Property xsi:type="DiskEncryptionSetId" Name="Zones" Value="/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXX/resourceGroups/testrsg/providers/Microsoft.Compute/diskEncryptionSets/test-diskEncryptionSet"/>
     </CustomProperties>
     "@
     New-ProvScheme -CleanOnBoot `
     -ProvisioningSchemeName $provisioningSchemeName `
     -HostingUnitName $hostingUnitName `
     -IdentityPoolName $identityPoolName `
     -InitialBatchSizeHint $numberOfVms `
     -masterImagePath $masterImagePath `
     -NetworkMapping $networkMapping `
     -CustomProperties $customProperties
     <!--NeedCopy-->
    
  • Alterar o tipo de criptografia de disco de uma chave DES para outra chave DES de um catálogo de máquinas MCS existente e VMs existentes usando os comandos Set-ProvScheme e Set-ProvVMUpdateTimeWindow. Após reiniciar as VMs, você pode ver a chave DES atualizada. Por exemplo:

     $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
     <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="/subscriptions/456c683e2ed7/resourceGroups/testrg/providers/Microsoft.Compute/diskEncryptionSets/diskEncryptionSet1" />
     </CustomProperties>'
     Set-ProvScheme -ProvisioningSchemeName azure-catalog -CustomProperties $customProperties
     Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -VMName azu01, azu02 -StartsNow -DurationInMinutes -1
     <!--NeedCopy-->
    
  • Atualizar um catálogo de máquinas MCS e uma VM que não estava anteriormente habilitada para CMEK para ter criptografia de chave gerenciada pelo cliente (CMEK) (DES), criptografia de disco no host ou criptografia dupla usando os comandos Set-ProvScheme e Set-ProvVMUpdateTimeWindow. Para obter informações sobre diferentes tipos de criptografia, consulte Criptografia do lado do servidor do Azure, Criptografia de disco do Azure no host e Criptografia dupla em disco gerenciado.

  • Atualizar um catálogo de máquinas MCS existente e VMs para serem não criptografadas que foram criptografadas anteriormente usando os comandos Set-ProvScheme e Set-ProvVMUpdateTimeWindow. Por exemplo:

     $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
     <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="" />
     </CustomProperties>'
     Set-ProvScheme -ProvisioningSchemeName azure-catalog -CustomProperties $customProperties
     Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -VMName azu01, azu02 -StartsNow -DurationInMinutes -1
     <!--NeedCopy-->
    
  • Habilitar a criptografia de disco com ponto de extremidade privado (um catálogo de máquinas MCS que usou uma conexão de host habilitada com ProxyHypervisorTrafficThroughConnector). Para obter informações sobre como habilitar a criptografia de disco com pontos de extremidade privados, consulte Habilitar a criptografia de disco com ponto de extremidade privado.

Habilitar a criptografia de disco com ponto de extremidade privado

De acordo com a limitação do Azure, atualmente, você não pode ter criptografia do lado do servidor com chaves gerenciadas pelo cliente para pontos de extremidade privados. No entanto, você pode atualizar um catálogo de máquinas MCS existente e VMs com pontos de extremidade privados para serem criptografados com a chave DES.

Atualizar um catálogo de máquinas existente com pontos de extremidade privados

As etapas detalhadas para atualizar um catálogo de máquinas existente com pontos de extremidade privados são as seguintes:

  1. Crie um catálogo sem criptografia de disco por meio de ProxyHypervisorTrafficThroughConnector.
  2. Execute Set-ProvScheme para atualizar o catálogo com DiskEncryptionSetId.

    Nota:

    DiskEcryptionSetId pode ser configurado por meio de CustomProperties ou MachineProfile. Quando definido em CustomProperties e MachineProfile, as propriedades definidas em CustomProperties são aplicadas.

    Exemplo ao usar CustomProperties:

    $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="/subscriptions/456c683e2ed7/resourceGroups/testrg/providers/Microsoft.Compute/diskEncryptionSets/diskEncryptionSet1"/>
    </CustomProperties>'
    Set-ProvScheme -ProvisioningSchemeName azure-catalog -CustomProperties $customProperties
    <!--NeedCopy-->
    

    Exemplo ao usar MachineProfile: Use uma VM que tenha a criptografia de disco habilitada ou uma especificação de modelo com configurações de criptografia de disco:

    Set-ProvScheme -ProvisioningSchemeName azure-catalog -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\testrg.resourcegroup\new-template.vm"
    <!--NeedCopy-->
    

    Alternativamente, você pode atualizar um perfil de máquina usando o Web Studio.

  3. Execute Set-ProvVMUpdateTimeWindow para atualizar as VMs do catálogo existente. Por exemplo:

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -VMName azu01, azu02 -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  4. Após reiniciar as VMs, você pode ver a criptografia de disco atualizada nos discos da VM no portal do Azure.
  5. Execute Set-ProvScheme para desativar a criptografia de disco antes de adicionar novas VMs ao catálogo.

    Nota:

    Esta etapa é necessária porque você está atualizando um catálogo de pontos de extremidade privados. Se você não executar esta etapa, receberá erros ao tentar adicionar novas VMs ao catálogo.

    Por exemplo:

    $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="" />
    </CustomProperties>'
    Set-ProvScheme -ProvisioningSchemeName azure-catalog -CustomProperties $customProperties
    <!--NeedCopy-->
    
  6. Adicione novas VMs ao catálogo.

Atualizar VMs de catálogo individuais

As etapas detalhadas para atualizar VMs de catálogo individuais são as seguintes:

  1. Crie um catálogo sem criptografia de disco por meio de ProxyHypervisorTrafficThroughConnector.
  2. Execute Set-ProvVM para atualizar a VM do catálogo com DiskEncryptionSetId.

    Nota:

    O DiskEcryptionSetId pode ser configurado por meio de CustomProperties ou MachineProfile.

    Exemplo ao usar CustomProperties:

    $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="/subscriptions/456c683e2ed7/resourceGroups/testrg/providers/Microsoft.Compute/diskEncryptionSets/diskEncryptionSet1" />
    </CustomProperties>'
    Set-ProvVM -ProvisioningSchemeName azure-catalog  -VMName azu01 -CustomProperties $customProperties
    <!--NeedCopy-->
    

    Exemplo ao usar MachineProfile:

    Set-ProvVM -ProvisioningSchemeName azure-catalog  -VMName azu01 -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\testrg.resourcegroup\new-template.vm"
    <!--NeedCopy-->
    
  3. Execute Set-ProvVMUpdateTimeWindow para atualizar as VMs do catálogo existente. Por exemplo:

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -VMName azu01 -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  4. Após reiniciar as VMs, você pode ver a criptografia de disco atualizada nos discos das VMs no portal do Azure.
  5. Adicione novas VMs ao catálogo.

Usar disco temporário como disco WBC para catálogos existentes

Você pode usar o disco temporário do Azure como disco de cache de write-back (WBC) para catálogos de máquinas MCS existentes. Use o comando PowerShell Set-ProvScheme para atualizar catálogos e VMs existentes.

Pré-requisitos

O catálogo existente deve satisfazer as seguintes condições:

Nota:

Se o catálogo existente não atender aos seguintes requisitos, o disco WBC não será colocado dentro do disco temporário.

  • MCSIO está habilitado: As propriedades personalizadas WriteBackCacheMemorySize, WriteBackCacheDiskSize e UseWriteBackCache estão habilitadas.
  • O disco de SO efêmero não está habilitado.
  • WBC não é persistente: PersistWBC é false.
  • UseTempDiskForWBC é nulo ou falso.
  • O tamanho do disco temporário deve ser maior que o tamanho total de (tamanho do disco de cache de write-back + espaço reservado para arquivo de paginação + 1 GB de espaço de buffer).

Importante:

A alteração de uma oferta de serviço de uma com disco temporário para uma sem, ou o inverso, não é permitida.

Atualizar catálogos existentes

Para atualizar um catálogo existente, execute os seguintes comandos:

  1. Execute Set-ProvScheme no catálogo existente para atualizar UseTempDiskForWBC para true. Por exemplo:

    Set-ProvScheme -ProvisioningSchemeName name -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"StorageAccountType`" Value=`"Standard_LRS`"/><Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"True`"/><Property xsi:type=`"StringProperty`" Name=`"ManagedDisksPreview`" Value=`"False`"/><Property xsi:type=`"StringProperty`" Name=`"PersistOsDisk`" Value=`"False`"/><Property xsi:type=`"StringProperty`" Name=`"UseTempDiskForWBC`" Value=`"True`"/><Property xsi:type=`"StringProperty`" Name=`"PersistWBC`" Value=`"False`"/></CustomProperties>"
    <!--NeedCopy-->
    
  2. Adicione novas máquinas ao catálogo e ligue-as. As novas VMs têm um disco WBC dentro do disco temporário.

Recuperar informações para VMs do Azure, instantâneos, disco de SO e definição de imagem de galeria

Você pode exibir informações para uma VM do Azure, incluindo disco e tipo de SO, instantâneo e definição de imagem de galeria. Essas informações são exibidas para recursos na imagem mestre quando um catálogo de máquinas é atribuído. Use essa funcionalidade para visualizar e selecionar uma imagem Linux ou Windows. Uma propriedade PowerShell, TemplateIsWindowsTemplate, foi adicionada ao parâmetro AdditionDatafield. Este campo contém informações específicas do Azure: tipo de VM, disco de SO, informações de imagem de galeria e informações de tipo de SO. Definir TemplateIsWindowsTemplate como True indica que o tipo de SO é Windows; definir TemplateIsWindowsTemplate como False indica que o tipo de SO é Linux.

Dica:

As informações exibidas pela propriedade PowerShell TemplateIsWindowsTemplate são derivadas da API do Azure. Às vezes, este campo pode estar vazio. Por exemplo, um instantâneo de um disco de dados não contém o campo TemplateIsWindowsTemplate porque o tipo de SO não pode ser recuperado de um instantâneo.

Por exemplo, defina o parâmetro AdditionData da VM do Azure como True para o tipo de SO Windows usando o PowerShell:

PS C:\Users\username> (get-item XDHyp:\HostingUnits\mynetwork\image.folder\username-dev-testing-rg.resourcegroup\username-dev-tsvda.vm).AdditionalData
Key Value
ServiceOfferingDescription Standard_B2ms
HardDiskSizeGB 127
ResourceGroupName FENGHUAJ-DEV-TESTING-RG
ServiceOfferingMemory 8192
ServiceOfferingCores 2
TemplateIsWindowsTemplate True
ServiceOfferingWithTemporaryDiskSizeInMb 16384
SupportedMachineGenerations Gen1,Gen2
<!--NeedCopy-->

Identificar recursos criados pelo MCS

A seguir estão as tags que o MCS adiciona aos recursos. As tags na tabela são representadas como “chave”:”valor”.

Nome do recurso Tag
ID disk “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
Image “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
NIC “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
OS disk “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
PrepVM “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
Published snapshot “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
Resource group “CitrixResource” : “Internal”
  CitrixSchemaVersion: 2.0
  “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
Storage account “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
VM in catalog “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”
WBC disk “CitrixProvisioningSchemeId” : “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
  “CitrixResource” : “Internal”

Nota:

Uma VM não fica visível no inventário da Citrix se uma tag CitrixResource for adicionada para identificá-la como um recurso criado pelo MCS. Você pode remover ou renomear a tag para torná-la visível.

Remover tags

Ao criar um catálogo ou uma VM, as tags são criadas nos seguintes recursos:

  • Grupo de recursos
  • Máquina virtual
  • Disco de SO
  • Disco de identidade
  • Interface de rede
  • Conta de armazenamento

Você pode remover VMs e catálogos de máquinas do banco de dados Citrix e remover tags. Você pode usar:

  • Remove-ProvVM com o parâmetro ForgetVM para remover VMs e tags de uma única VM ou de uma lista de VMs de um catálogo de máquinas.
  • Remove-ProvScheme com o parâmetro ForgetVM para remover um catálogo de máquinas do banco de dados Citrix e tags de um catálogo de máquinas inteiro.

Este recurso é aplicável apenas a VMs persistentes.

Para fazer isso:

  1. Abra uma janela do PowerShell.
  2. Execute asnp citrix* para carregar os módulos PowerShell específicos da Citrix.
  3. Execute Remove-ProvVM para excluir VMs do banco de dados Citrix e tags de VMs. Por exemplo:

    Remove-ProvVM -ProvisioningSchemeName “ProvisioningSchemeName” -VMName “vmname” -ForgetVM
    <!--NeedCopy-->
    
  4. Execute Remove-ProvScheme para excluir o catálogo de máquinas do banco de dados Citrix e tags de catálogos de máquinas. Por exemplo,

    Remove-ProvScheme -ProvisioningSchemeName “ProvisioningSchemeName” -ForgetVM
    <!--NeedCopy-->
    

    Nota:

    Depois de usar o parâmetro ForgetVM em Remove-ProvScheme, o MCS exclui todos os instantâneos, incluindo o instantâneo do disco base, se o esquema de provisionamento estiver presente em um grupo de recursos próprio (BYORG) ou em um grupo de recursos gerenciado pela Citrix.

Mais informações