Citrix DaaS

Ambientes do Google Cloud

O Citrix DaaS (anteriormente serviço Citrix Virtual Apps and Desktops) permite provisionar e gerenciar máquinas no Google Cloud. Este artigo orienta você no uso do Machine Creation Services (MCS) para provisionar máquinas virtuais na implantação do serviço Citrix Virtual Apps ou Citrix Virtual Desktops.

Requisitos

  • Conta do Citrix Cloud. O recurso descrito neste artigo está disponível somente no Citrix Cloud.
  • Assinatura do Citrix DaaS. Para obter detalhes, consulte Introdução.
  • Um projeto do Google Cloud. O projeto armazena todos os recursos de computação associados ao catálogo de máquinas. Pode ser um projeto existente ou um projeto novo.
  • Habilite quatro APIs no seu projeto do Google Cloud. Para obter detalhes, consulte Habilitar as APIs do Google Cloud.
  • Conta de serviço do Google Cloud. A conta de serviço é autenticada no Google Cloud para permitir o acesso ao projeto. Para obter detalhes, consulte Configurar a conta de serviço do Google Cloud.
  • Ative o acesso privado do Google. Para obter detalhes, consulte Ativar o acesso privado do Google.

Habilitar as APIs do Google Cloud

Para usar a funcionalidade do Google Cloud por meio da interface Full Configuration do Citrix Virtual Apps and Desktops, ative estas APIs no seu projeto do Google Cloud:

  • API do Compute Engine
  • API do Cloud Resource Manager
  • API do Identity and Access Management (IAM)
  • API do Cloud Build

No console do Google Cloud, conclua estas etapas:

  1. No menu superior esquerdo, selecione APIs and Services > Dashboard.

    Imagem da seleção de APIs and Services Dashboard

  2. Na tela Dashboard, confirme que a API de Compute Engine está ativada. Caso contrário, siga estes passos:

    1. Navegue para APIs and Services > Library.

      Imagem da biblioteca de APIs e serviços

    2. Na caixa de pesquisa, digite Compute Engine.

    3. Nos resultados da pesquisa, selecione Compute Engine API.

    4. Na página Compute Engine API, selecione Enable.

  3. Ative a API do Cloud Resource Manager.

    1. Navegue para APIs and Services > Library.

    2. Na caixa de pesquisa, digite Cloud Resource Manager.

    3. Nos resultados da pesquisa, selecione Cloud Resource Manager API.

    4. Na página Cloud Resource Manager API, selecione Enable. O status da API é exibido.

  4. Da mesma forma, ative Identity and Access Management (IAM) API e Cloud Build API.

Configurar a conta de serviço do Google Cloud

Uma conta de serviço do Google Cloud permite criar e gerenciar recursos dentro dos projetos do Google Cloud. É necessária uma conta de serviço do Google Cloud para provisionar e gerenciar máquinas, conforme descrito neste artigo. A conta do Google Cloud é autenticada no Citrix Cloud usando uma chave gerada pelo Google Cloud. Cada conta (pessoal ou de serviço) tem várias funções que definem o gerenciamento do projeto.

Recomendamos que você crie uma conta de serviço. Para isso, siga estes passos:

  1. No console do Google Cloud, navegue para IAM & Admin > Service accounts.

  2. Na página Service accounts, selecione CREATE SERVICE ACCOUNT.

  3. Na página Create service account, digite as informações necessárias e selecione CREATE.

Ao criar a conta de serviço, considere o seguinte:

  • Você pode selecionar CANCEL para salvar e sair da página Service account details sem preencher as páginas Grant this service account access to project e Grant users access to this service account. Você pode executar essas etapas opcionais posteriormente.

  • Se você optar por ignorar essas etapas de configuração opcionais, a conta de serviço recém-criada não será exibida na página IAM & Admin > IAM.

  • Para exibir funções associadas a uma conta de serviço, adicione as funções sem ignorar as etapas opcionais. Esse processo garante que as funções apareçam para a conta de serviço configurada.

Ao criar uma conta de serviço, existe a opção de criar uma chave para a conta. Você precisa dessa chave ao criar uma conexão no Citrix DaaS. A chave está contida em um arquivo de credencial (.json). O arquivo é baixado automaticamente e salvo na pasta Downloads depois que você cria a chave. Ao criar a chave, certifique-se de definir o tipo de chave como JSON. Caso contrário, a interface Full Configuration do Citrix não pode analisá-la.

Dica:

Crie chaves usando a página Service accounts no console do Google Cloud. Recomendamos que você altere as chaves regularmente por motivos de segurança. Você pode fornecer novas chaves para o aplicativo Citrix Virtual Apps and Desktops editando uma conexão existente do Google Cloud.

Além disso, você precisa conceder à sua conta de serviço as permissões necessárias para acessar seu projeto do Google Cloud:

  1. No console do Google Cloud, navegue para IAM & Admin > IAM. Na página IAM, localize a conta de serviço que você criou e selecione o ícone de lápis para editar a conta de serviço.

  2. Na página Edit permissions, selecione ADD ANOTHER ROLE para adicionar as seguintes funções à sua conta de serviço uma a uma e, em seguida, selecione SAVE.

    • Compute Admin
    • Storage Admin
    • Cloud Build Editor
    • Service Account User
  3. Atualize as funções atribuídas ao seu projeto de conta de serviço do Cloud Build:

    1. No console do Google Cloud, navegue para IAM & Admin > IAM.
    2. Na página IAM, localize a conta de serviço do Cloud Build e selecione o ícone de lápis para editar a conta de serviço. Você pode identificar a conta de serviço do Cloud Build por seu nome de usuário, que está neste formato: <your_gcp_project_ID_number>@cloudbuild.gserviceaccount.com.
    3. Na página Edit permissions, selecione ADD ANOTHER ROLE para adicionar as seguintes funções à sua conta de serviço do Cloud Build uma a uma e, em seguida, selecione SAVE.
      • Cloud Build Service Account
      • Compute Instance Admin
      • Service Account User

Gerenciamento do bucket e permissões de armazenamento

O Citrix DaaS melhora o processo de relatar falhas de compilação na nuvem do serviço Google Cloud. Esse serviço executa compilações no Google Cloud. O Citrix DaaS cria um intervalo de armazenamento chamado citrix-mcs-cloud-build-logs-{region}-{5 random characters} onde os serviços do Google Cloud capturam informações de registro de compilação. Uma opção é definida nesse bucket que exclui o conteúdo após um período de 30 dias. Esse processo exige que a conta de serviço usada para a conexão tenha as permissões do Google Cloud definidas como storage.buckets.update. Se a conta de serviço não tiver essa permissão, o Citrix DaaS ignorará os erros e prosseguirá com o processo de criação do catálogo. Sem essa permissão, o tamanho dos logs de compilação aumenta e exigem limpeza manual.

Ativar o acesso privado do Google

Quando uma VM não tem um endereço IP externo atribuído à sua interface de rede, os pacotes são enviados apenas para outros destinos de endereços IP internos. Quando você ativa o acesso privado, a VM se conecta ao conjunto de endereços IP externos usados pela API do Google e serviços associados.

Nota:

Independentemente de o acesso privado do Google estar ativado, todas as VMs com e sem endereços IP públicos devem ser capazes de acessar as APIs públicas do Google, especialmente se dispositivos de rede de terceiros tiverem sido instalados no ambiente.

Para garantir que uma VM na sua sub-rede possa acessar as APIs do Google sem um endereço IP público para provisionamento do MCS:

  1. No Google Cloud, acesse a configuração da rede VPC.
  2. Na tela Subnet details, ative Private Google access.

Acesso privado do Google

Para obter mais informações, consulte Como configurar o acesso privado do Google.

Importante:

Se a sua rede está configurada para impedir o acesso da VM à Internet, certifique-se de que a sua organização assuma os riscos associados à ativação do acesso privado do Google para a sub-rede à qual a VM está conectada.

Adicionar uma conexão

Na interface Full Configuration, siga as orientações em Criar uma conexão e recursos. A descrição a seguir orienta você para configurar uma conexão de hospedagem:

  1. Em Manage > Full Configuration, selecione Hosting no painel esquerdo.

  2. Selecione Add Connection and Resources na barra de ações.

  3. Na página Connection, selecione Create a new Connection e Citrix provisioning tools, depois selecione Next.

    • Zone name. Selecione a zona (equivalente a um local de recursos) em que você deseja que os recursos do host residam. As zonas são criadas automaticamente quando você cria um local de recursos e adiciona um Cloud Connector a ele. Para obter mais informações, consulte Zonas.
    • Connection type. Selecione Google Cloud no menu.
    • Service account key. Importe a chave contida no arquivo de credenciais do Google (.json). Para isso, localize o seu arquivo de credenciais, abra o arquivo com o Bloco de Notas (ou qualquer editor de texto) e copie o conteúdo. Depois disso, retorne à página Connection, selecione Import key, cole o conteúdo e selecione Save.
    • Service account ID. O campo é preenchido automaticamente com a informação da chave importada.
    • Connection name. Digite um nome para a conexão.
  4. Na página Region, selecione um nome de projeto no menu, selecione uma região que contenha os recursos que você deseja usar e, em seguida, selecione Next.

  5. Na página Network, digite um nome para os recursos, selecione uma rede virtual no menu, selecione um subconjunto e, em seguida, selecione Next. O nome do recurso ajuda a identificar a combinação de região e rede. As redes virtuais com o sufixo (Shared) anexado ao nome representam VPCs compartilhadas. Se você configurar uma função do IAM no nível da sub-rede para uma VPC compartilhada, somente sub-redes específicas da VPC compartilhada aparecem na lista de sub-redes.

    Nota:

    • O nome do recurso pode conter de 1 a 64 caracteres e não pode conter apenas espaços em branco ou os caracteres \ / ; : # . * ? = < > | [ ] { } " ' ( ) ' ).
  6. Na página Summary, confirme as informações e selecione Finish para sair da janela Add Connection and Resources.

Depois de criar a conexão e os recursos, a conexão e os recursos que você criou são listados. Para configurar a conexão, selecione a conexão e, em seguida, selecione a opção aplicável na barra de ações.

Da mesma forma, você pode excluir, renomear ou testar os recursos criados na conexão. Para fazer isso, selecione o recurso na conexão e, em seguida, selecione a opção aplicável na barra de ações.

Preparar uma instância de VM mestre e um disco permanente

Dica:

Disco permanente é o termo do Google Cloud para disco virtual.

Para preparar a sua instância de VM mestre, crie e configure uma instância de VM com propriedades que correspondam à configuração desejada para as instâncias do VDA clonadas no seu catálogo de máquinas planejado. A configuração não se aplica somente ao tamanho e ao tipo da instância. Também inclui atributos de instância, como metadados, tags, atribuições de GPU, marcas de rede e propriedades da conta de serviço.

Como parte do processo, o MCS usa sua instância de VM mestre para criar o modelo de instância do Google Cloud. O modelo de instância é então usado para criar as instâncias do VDA clonadas que compõem o catálogo de máquinas. As instâncias clonadas herdam as propriedades (exceto as propriedades de VPC, sub-rede e disco permanente) da instância de VM mestre a partir da qual o modelo de instância foi criado.

Depois de configurar as propriedades da instância de VM mestre de acordo com suas especificações, inicie a instância e prepare o disco permanente para a instância.

Recomendamos que você crie manualmente um instantâneo do disco. Isso permite que você use uma convenção de nomenclatura significativa para controlar as versões, oferece mais opções para gerenciar versões anteriores da sua imagem mestre e economiza tempo na criação do catálogo de máquinas. Se você não criar o seu próprio instantâneo, o MCS cria um instantâneo temporário para você (que é apagado no final do processo de provisionamento).

Criar um catálogo de máquinas

Nota:

Crie os seus recursos antes de criar um catálogo de máquinas. Use as convenções de nomenclatura estabelecidas pelo Google Cloud ao configurar catálogos de máquinas. Consulte Diretrizes de nomenclatura de bucket e objeto para obter mais informações.

Siga as orientações em Criar catálogos de máquinas. A descrição a seguir é exclusiva para os catálogos do Google Cloud.

  1. Em Manage > Full Configuration, selecione Machine Catalogs no painel esquerdo.

  2. Selecione Create Machine Catalog na barra de ações.

  3. Na página Machine Type, selecione Multi-session OS e, em seguida, selecione Next.

    • O Citrix DaaS também oferece suporte a SO de sessão única.
  4. Na página Machine Management, selecione as opções Machines that are power managed e Citrix Machine Creation Services e selecione Next. Se houver vários recursos, selecione um no menu.

  5. Na página Master Image, selecione uma VM e o nível funcional mínimo para o catálogo e, em seguida, selecione Next. Se você quiser usar a funcionalidade de locação única, certifique-se de selecionar uma imagem cuja propriedade de grupo de nós esteja configurada corretamente. Consulte Habilitar a seleção de zona.

  6. Na página Storage, selecione o tipo de armazenamento usado para conter o sistema operacional desse catálogo de máquinas. Cada uma das opções de armazenamento a seguir tem características únicas de preço e desempenho. (Um disco de identidade é sempre criado usando o disco permanente padrão por zona.)

    • Disco permanente padrão
    • Disco permanente balanceado
    • Disco permanente SSD

    Para obter detalhes sobre as opções de armazenamento do Google Cloud, consulte https://cloud.google.com/compute/docs/disks/.

  7. Na página Virtual Machines, especifique quantas VMs você deseja criar, confira a especificação detalhada das VMs e selecione Next. Se você usar grupos de nós de locatário único para catálogos de máquinas, certifique-se de selecionar apenas as zonas em que os nós de locatário único reservados estão disponíveis. Consulte Habilitar a seleção de zona.

  8. Na página Disk Settings, você pode definir as seguintes configurações:

    • Escolha se deseja ativar o cache de write-back. Depois de ativar o cache de write-back, você pode fazer o seguinte:

      • Configurar o tamanho do disco e da RAM usados para armazenar dados temporários em cache. Para obter mais informações, consulte Configurar cache para dados temporários.
      • Selecionar o tipo de armazenamento para o disco de cache de write-back. As seguintes opções de armazenamento estão disponíveis para uso no disco de cache de write-back:
        • Disco permanente padrão
        • Disco permanente balanceado
        • Disco permanente SSD

        Para obter detalhes sobre as opções de armazenamento do GCP, consulte https://cloud.google.com/compute/docs/disks/.

      • Selecione o tipo para o disco de cache de write-back.
        • Use non-persistent write-back cache disk. Se selecionado, o disco de cache de write-back não persistirá para as VMs provisionadas. O disco é excluído durante os ciclos de energia e todos os dados redirecionados para o disco serão perdidos.
        • Use persistent write-back cache disk. Se selecionado, o disco de cache de write-back persistirá para as VMs provisionadas. Habilitar essa opção aumenta os custos de armazenamento.
    • Quando a otimização de armazenamento MCS (MCS I/O) está habilitada, você pode escolher se deseja reter os discos do sistema para VDAs durante os ciclos de alimentação de energia. Para obter mais informações, consulte Ativar atualizações de otimização de armazenamento MCS.

    • Escolha se deseja usar sua própria chave para proteger o conteúdo do disco. Para usar o recurso, você deve primeiro criar suas próprias chaves de criptografia gerenciadas (CMEKs). Para obter mais informações, consulte Usar chaves de criptografia gerenciadas pelo cliente (CMEK).

      Nota:

      Esse recurso está disponível como Preview. Ele está disponível somente na interface Manage > Full Configuration.

      Depois de criar as chaves, você pode selecionar uma das chaves na lista. Você não pode alterar a chave depois de criar o catálogo. O Google Cloud não é compatível com a rotação de chaves em imagens ou discos permanentes existentes. Portanto, depois de provisionar um catálogo, o catálogo é vinculado a uma versão específica da chave. Se essa chave for desabilitada ou destruída, as instâncias e os discos criptografados com ela ficam inutilizáveis até que a chave seja reativada ou restaurada.

  9. Na página Machine Identities, selecione uma conta do Active Directory e, em seguida, selecione Next.

    • Se você selecionar Create new Active Directory accounts, selecione um domínio e insira a sequência de caracteres que representa o esquema de nomenclatura para as contas de computador de VMs provisionadas criadas no Active Directory. O esquema de nomenclatura de conta pode conter de 1 a 64 caracteres e não pode conter espaços em branco ou caracteres não ASCII ou especiais.
    • Se você selecionar Use existing Active Directory accounts, selecione Browse para navegar até as contas de computador existentes do Active Directory para as máquinas selecionadas.
  10. Na página Domain Credentials, selecione Enter credentials, digite o nome de usuário e a senha, selecione Save e selecione Next.

    • A credencial digitada deve ter permissões para realizar operações na conta do Active Directory.
  11. Na página Scopes, selecione escopos para o catálogo de máquinas e, em seguida, selecione Next.

    • Você pode selecionar escopos opcionais ou selecionar custom scope para personalizar os escopos conforme necessário.
  12. Na página Summary, confirme as informações, especifique um nome para o catálogo e selecione Finish.

    Nota:

    O nome do catálogo pode conter de 1 a 39 caracteres e não pode conter apenas espaços em branco ou os caracteres \ / ; : # . * ? = < > | [ ] { } " ' ( ) ' ).

A criação do catálogo de máquinas pode levar muito tempo para ser concluída. Quando concluída, o catálogo será listado. Você pode verificar se as máquinas foram criadas nos grupos de nós de destino no console do Google Cloud.

Para adicionar máquinas a um catálogo, siga estas etapas:

  1. Em Manage > Full Configuration, selecione Machine Catalogs no painel esquerdo.

  2. Selecione o catálogo de máquinas ao qual deseja adicionar máquinas.

  3. Selecione Add Machines na barra de ações.

  4. Na página Virtual Machines, especifique o número de máquinas que deseja adicionar e selecione Next.

  5. Na página Machine Identities, selecione uma conta do Active Directory e, em seguida, selecione Next.

  6. Na página Domain Credentials, selecione Enter credentials, digite o nome de usuário e a senha, selecione Save e selecione Next.

  7. Na página Summary, confirme as informações e selecione Finish.

Atualizar máquinas

Um recurso que pode ser útil nos casos em que você deseja atualizar a imagem mestre ou o nível funcional mínimo.

Para atualizar as máquinas, siga estas etapas:

  1. Em Manage > Full Configuration, selecione Machine Catalogs no painel esquerdo.

  2. Selecione o catálogo de máquinas que contém as máquinas que você deseja atualizar.

  3. Selecione Update Machines na barra de ações.

  4. Na página Master Image, selecione uma VM e o nível funcional mínimo para o catálogo e, em seguida, selecione Next.

  5. Na página Rollout Strategy, especifique quando deseja atualizar as máquinas e selecione Next.

  6. Na página Summary, confirme as informações e selecione Finish.

Para reverter uma atualização de máquina, siga estas etapas:

Importante:

Não renomeie, exclua ou mova imagens mestre. Caso contrário, você não poderá reverter a atualização.

  1. Em Manage > Full Configuration, selecione Machine Catalogs no painel esquerdo.

  2. Selecione o catálogo de máquinas no qual deseja reverter a atualização da máquina.

  3. Selecione Rollback Machine Update na barra de ações.

  4. Na página Overview, confirme as informações e selecione Next.

  5. Na página Rollout Strategy, configure a estratégia de implantação e selecione Next.

  6. Na página Summary, confirme as informações e selecione Finish.

Gerenciamento de energia

O Citrix DaaS permite o gerenciamento de energia das máquinas do Google Cloud. Use o nó Search no painel de navegação para localizar a máquina cuja energia você deseja gerenciar. As seguintes ações de energia estão disponíveis:

  • Delete
  • Start
  • Restart
  • Force Restart
  • Shut Down
  • Force Shutdown
  • Add to Delivery Group
  • Manage Tags
  • Turn On Maintenance Mode

Você também pode gerenciar as máquinas do Google Cloud usando Autoscale. Para isso, adicione as máquinas do Google Cloud a um grupo de entrega e ative Autoscale para o grupo de entrega. Para obter mais informações sobre Autoscale, consulte Autoscale.

Proteger a exclusão acidental da máquina

O Citrix DaaS permite proteger os recursos do MCS no Google Cloud para evitar exclusão acidental. Configure a VM provisionada definindo o sinalizador deletionProtection como TRUE.

Por padrão, as VMs provisionadas por meio do plug-in do Google Cloud ou MCS são criadas com o InstanceProtection ativado. A implementação é aplicável a catálogos persistentes e não persistentes. Os catálogos não persistentes são atualizados quando as instâncias são recriadas a partir do modelo. Para máquinas persistentes existentes, você pode definir o sinalizador no console do Google Cloud. Para obter mais informações sobre como definir o sinalizador, consulte o site de documentação do Google. Novas máquinas adicionadas a catálogos persistentes são criadas com deletionProtection habilitado.

Se você tentar excluir uma instância de VM para a qual definiu o sinalizador deletionProtection, a solicitação falhará. No entanto, se você receber a permissão compute.instances.setDeletionProtection ou a atribuição da função Compute Admin do IAM, poderá redefinir o sinalizador para permitir que o recurso seja excluído.

Importar máquinas do Google Cloud criadas manualmente

Você pode criar uma conexão com o Google Cloud e a seguir criar um catálogo contendo máquinas do Google Cloud. Em seguida, você pode ligar e desligar manualmente as máquinas do Google Cloud por meio do Citrix DaaS. Com esse recurso, você pode:

  • Importar máquinas com SO multissessão do Google Cloud criadas manualmente para um catálogo de máquinas do Citrix Virtual Apps and Desktops.
  • Remover as máquinas com SO multissessão do Google Cloud criadas manualmente de um catálogo do Citrix Virtual Apps and Desktops.
  • Usar os recursos existentes de gerenciamento de energia do Citrix Virtual Apps and Desktops para gerenciar a energia das máquinas com SO multissessão Windows do Google Cloud. Por exemplo, defina um agendamento de reinicialização para essas máquinas.

Essa funcionalidade não requer alterações no fluxo de trabalho de provisionamento existente do Citrix Virtual Apps and Desktops nem a remoção de qualquer recurso existente. Recomendamos que você use o MCS para provisionar máquinas na interface Full Configuration do Citrix DaaS, em vez de importar máquinas do Google Cloud criadas manualmente.

Nuvem privada virtual compartilhada

Nuvens privadas virtuais compartilhadas (VPCs) compreendem um projeto host, a partir do qual as sub-redes compartilhadas são disponibilizadas, e um ou mais projetos de serviço que usam o recurso. As VPCs compartilhadas são boas opções para instalações maiores porque fornecem controle, uso e administração centralizados dos recursos corporativos compartilhados do Google Cloud. Para obter mais informações, consulte o site de documentação do Google.

Com esse recurso, o MCS (Machine Creation Services) oferece suporte ao provisionamento e ao gerenciamento de catálogos de máquinas implantados em VPCs compartilhadas. Esse suporte, que é funcionalmente equivalente ao suporte fornecido atualmente nas VPCs locais, difere em duas áreas:

  1. Você deve conceder permissões extras para a conta de serviço usada para criar a conexão de host. Esse processo permite que o MCS acesse e use os recursos da VPC compartilhada.
  2. Você deve criar duas regras de firewall, uma para entrada e outra para saída. Essas regras de firewall são usadas durante o processo de masterização de imagens.

Novas permissões necessárias

É necessária uma conta de serviço do Google Cloud com permissões específicas ao criar a conexão do host. Essas permissões adicionais devem ser concedidas a todas as contas de serviço usadas para criar conexões de host baseadas em VPC compartilhada.

Dica:

Essas permissões adicionais não são novas no Citrix DaaS. Elas são usadas para facilitar a implementação de VPCs locais. Com as VPCs compartilhadas, essas permissões adicionais permitem o acesso a outros recursos de VPC compartilhadas.

No máximo quatro permissões extras devem ser concedidas à conta de serviço associada à conexão de host para aceitar à VPC compartilhada:

  1. compute.firewalls.list – Essa permissão é obrigatória. Permite que o MCS recupere a lista de regras de firewall presentes na VPC compartilhada.
  2. compute.networks.list – Essa permissão é obrigatória. Permite que o MCS identifique as redes VPC compartilhadas disponíveis para a conta de serviço.
  3. compute.subnetworks.list – Essa permissão é opcional, dependendo de como você usa as VPCs. Permite que o MCS identifique as sub-redes nas VPCs compartilhadas visíveis. Essa permissão já é necessária ao usar VPCs locais, mas também deve ser atribuída no projeto host da VPC compartilhada.
  4. compute.subnetworks.use – Essa permissão é opcional, dependendo de como você usa as VPCs. É necessário usar recursos de sub-rede nos catálogos de máquinas provisionadas. Essa permissão já é necessária para usar VPCs locais, mas também deve ser atribuída no projeto host da VPC compartilhada.

Ao usar essas permissões, considere que existem abordagens diferentes com base no tipo de permissão usada para criar o catálogo de máquinas:

  • Permissão no nível do projeto:
    • Permite o acesso a todas as VPCs compartilhadas dentro do projeto host.
    • Requer que as permissões 3 e 4 sejam atribuídas à conta de serviço.
  • Permissão no nível da sub-rede:
    • Permite o acesso a sub-redes específicas dentro da VPC compartilhada.
    • As permissões 3 e 4 são intrínsecas à atribuição de nível de sub-rede e, portanto, não precisam ser atribuídas diretamente à conta de serviço.

Selecione a abordagem que corresponde às suas necessidades organizacionais e aos padrões de segurança.

Dica:

Para obter mais informações sobre as diferenças entre as permissões no nível do projeto e no nível da sub-rede, consulte a documentação do Google Cloud.

Regras de firewall

Durante a preparação de um catálogo de máquinas, uma imagem de máquina é preparada para servir como o disco do sistema de imagem mestre para o catálogo. Quando esse processo ocorre, o disco é conectado temporariamente a uma máquina virtual. Essa VM deve ser executada em um ambiente isolado que impeça todo o tráfego de rede de entrada e de saída. Isso é feito por meio de um par de regras de firewall deny-all: uma para tráfego de entrada e outra para tráfego de saída. Ao usar os VCPs locais do Google Cloud, o MCS cria esse firewall na rede local e o aplica à máquina para masterização. Após a conclusão da masterização, a regra de firewall é removida da imagem.

Recomendamos manter um número mínimo de novas permissões necessárias para usar VPCs compartilhadas. As VPCs compartilhadas são recursos corporativos de nível superior e normalmente têm protocolos de segurança mais rígidos. Por esse motivo, crie um par de regras de firewall no projeto host nos recursos da VPC compartilhada, uma para entrada e outra para saída. Atribua a maior prioridade a elas. Aplique uma nova marca de destino a cada uma das regras, usando o seguinte valor:

citrix-provisioning-quarantine-firewall

Quando o MCS cria ou atualiza um catálogo de máquinas, ele procura regras de firewall que contenham essa marca de destino. Em seguida, ele examina as regras quanto à sua exatidão e as aplica à máquina usada para preparar a imagem mestre para o catálogo. Se as regras de firewall não forem encontradas ou se as regras forem encontradas, mas as regras ou suas prioridades estiverem incorretas, uma mensagem semelhante à seguinte será exibida:

"Unable to find valid INGRESS and EGRESS quarantine firewall rules for VPC <name> in project <project>. " Please ensure you have created 'deny all' firewall rules with the network tag ‘citrix-provisioning-quarantine-firewall' and proper priority." "Refer to Citrix Documentation for details."

Configurar a VPC compartilhada

Antes de adicionar a VPC compartilhada como uma conexão de host na interface Full Configuration do Citrix DaaS, conclua as etapas a seguir para adicionar contas de serviço do projeto que você pretende provisionar:

  1. Crie uma função do IAM.
  2. Adicione a conta de serviço usada para criar uma conexão de host CVAD à função do IAM do projeto host da VPC compartilhada.
  3. Adicione a conta de serviço do Cloud Build do projeto que você pretende provisionar à função do IAM do projeto host da VPC compartilhada.
  4. Crie regras de firewall.

Crie uma função do IAM

Determine o nível de acesso da função — acesso no nível do projeto ou um modelo mais restrito usando o acesso no nível da sub-rede.

Acesso no nível do projeto para a função do IAM. Para a função do IAM no nível do projeto, inclua as seguintes permissões:

  • compute.firewalls.list
  • compute.networks.list
  • compute.subnetworks.list
  • compute.subnetworks.use

Para criar uma função do IAM no nível do projeto:

  1. No console do Google Cloud, navegue para IAM & Admin > Roles.
  2. Na página Roles, selecione CREATE ROLE.
  3. Na página Create Role, especifique o nome da função. Selecione ADD PERMISSIONS.
    1. Na página Add permissions, adicione permissões à função, individualmente. Para adicionar uma permissão, digite o nome da permissão no campo Filter table. Selecione a permissão e, em seguida, selecione ADD.
    2. Selecione CREATE.

Subnet-level IAM role. Essa função omite a adição das permissões compute.subnetworks.list e compute.subnetworks.use depois de selecionar CREATE ROLE. Para esse nível de acesso do IAM, as permissões compute.firewalls.list e compute.networks.list devem ser aplicadas à nova função.

Para criar uma função do IAM no nível da sub-rede:

  1. No console do Google Cloud, navegue para VPC network > Shared VPC. A página Shared VPC é exibida, mostrando as sub-redes das redes VPC compartilhadas que o projeto host contém.
  2. Na página Shared VPC, selecione a sub-rede que deseja acessar.
  3. No canto superior direito, selecione ADD MEMBER para adicionar uma conta de serviço.
  4. Na página Add members, conclua estas etapas:
    1. No campo New members, digite o nome da sua conta de serviço e selecione a sua conta de serviço no menu.
    2. Selecione o campo Select a role e depois Compute Network User.
    3. Selecione SAVE.
  5. No console do Google Cloud, navegue para IAM & Admin > Roles.
  6. Na página Roles, selecione CREATE ROLE.
  7. Na página Create Role, especifique o nome da função. Selecione ADD PERMISSIONS.
    1. Na página Add permissions, adicione permissões à função, individualmente. Para adicionar uma permissão, digite o nome da permissão no campo Filter table. Selecione a permissão e, em seguida, selecione ADD.
    2. Selecione CREATE.

Adicionar uma conta de serviço à função do IAM do projeto host

Depois de criar uma função do IAM, siga estas etapas para adicionar uma conta de serviço ao projeto host:

  1. No console do Google Cloud, navegue até o projeto host e siga para IAM & Admin > IAM.
  2. Na página IAM, selecione ADD para adicionar uma conta de serviço.
  3. Na página Add members:
    1. No campo New members, digite o nome da sua conta de serviço e selecione a sua conta de serviço no menu.
    2. Selecione um campo de função, digite a função do IAM que você criou e, em seguida, selecione a função no menu.
    3. Selecione SAVE.

Agora, a conta de serviço já está configurada para o projeto host.

Adicionar a conta de serviço do Cloud Build à VPC compartilhada

Cada assinatura do Google Cloud tem uma conta de serviço que tem, como nome, o número do ID do projeto, seguido por cloudbuild.gserviceaccount. Por exemplo: 705794712345@cloudbuild.gserviceaccount.

Você pode determinar qual é o número do ID do projeto selecionando Home e Dashboard no console do Google Cloud:

Painel de navegação do console do Google Cloud

Na tela, procure Project Number abaixo da área Project Info.

Execute as etapas a seguir para adicionar a conta de serviço do Cloud Build à VPC compartilhada:

  1. No console do Google Cloud, navegue até o projeto host e siga para IAM & Admin > IAM.
  2. Na página Permissions, selecione ADD para adicionar uma conta.
  3. Na página Add members, conclua estas etapas:
    1. No campo New members, digite o nome da conta de serviço do Cloud Build e selecione a sua conta de serviço no menu.
    2. Selecione o campo Select a role, digite Computer Network User e, em seguida, selecione a função no menu.
    3. Selecione SAVE.

Criar regras de firewall

Como parte do processo de masterização, o MCS copia a imagem da máquina selecionada e a usa para preparar o disco do sistema de imagem mestre para o catálogo. Durante a masterização, o MCS anexa o disco a uma máquina virtual temporária, que executa scripts de preparação. Essa VM deve ser executada em um ambiente isolado que proíba todo o tráfego de rede de entrada e saída. Para criar um ambiente isolado, o MCS exige duas regras de firewall deny all (uma regra de entrada e uma regra de saída). Portanto, crie duas regras de firewall em Host Project da seguinte forma:

  1. No console do Google Cloud, navegue até o projeto host e, em seguida, para VPC network > Firewall.
  2. Na página Firewall, selecione CREATE FIREWALL RULE.
  3. Na página Create a firewall rule, preencha estes dados:
    • Name. Digite um nome para a regra.
    • Network. Selecione a rede VPC compartilhada à qual a regra de firewall de entrada se aplica.
    • Priority. Quanto menor for o valor, maior será a prioridade da regra. Recomendamos um valor pequeno (por exemplo, 10).
    • Direction of traffic. Selecione Ingress.
    • Action on match. Selecione Deny.
    • Targets. Use o padrão, Specified target tags.
    • Target tags. Digite citrix-provisioning-quarantine-firewall.
    • Source filter. Use o padrão, IP ranges.
    • Source IP ranges. Digite um intervalo que corresponda a todo o tráfego. Digite 0.0.0.0/0.
    • Protocols and ports. Selecione Deny all.
  4. Selecione CREATE para criar a regra.
  5. Repita as etapas de 1 a 4 para criar outra regra. Em Direction of traffic, selecione Egress.

Adicionar uma conexão

Depois de adicionar as interfaces de rede à instância do Cloud Connector, adicione uma conexão.

Habilitar a seleção de zona

O Citrix DaaS oferece suporte à seleção de zona. Com a seleção de zona, você especifica as zonas nas quais deseja criar as VMs. Com a seleção de zona, os administradores podem colocar nós de locatário único nas zonas de sua escolha. Para configurar a locação única, você deve fazer o seguinte no Google Cloud:

  • Reservar um nó de locatário único no Google Cloud
  • Criar a imagem mestre do VDA

Como reservar um nó de locatário único no Google Cloud

Para reservar um nó de locatário único, consulte a documentação do Google Cloud.

Importante:

Um modelo de nó é usado para indicar as características de desempenho do sistema reservado no grupo de nós. Essas características incluem o número de vGPUs, a quantidade de memória alocada para o nó e o tipo de máquina usado para máquinas criadas no nó. Para obter mais informações, consulte a documentação do Google Cloud.

Criar a imagem mestre do VDA

Para implantar máquinas no nó de locatário único com sucesso, você precisa executar etapas extras ao criar uma imagem de VM mestre. As instâncias de máquina no Google Cloud têm uma propriedade chamada node affinity labels. As instâncias usadas como imagens mestre para catálogos implantados no nó de locatário único exigem um node affinity label que corresponda ao nome do target node group. Para isso, tenha em mente o seguinte:

Nota:

Se você pretende usar a locação única com uma VPC compartilhada, consulte Nuvem privada virtual compartilhada.

Definir um rótulo de afinidade de nó ao criar uma instância

Para definir o rótulo de afinidade do nó:

  1. No console do Google Cloud, navegue até Compute Engine > VM instances.

  2. Na página VM instances, selecione Create instance.

  3. Na página Instance creation, digite ou configure a informação necessária e selecione management, security, disks, networking, sole tenancy para abrir o painel de configurações.

  4. Na guia Sole tenancy, selecione Browse para visualizar os grupos de nós disponíveis no projeto atual. A página Sole-tenant node é exibida, mostrando uma lista de grupos de nós disponíveis.

  5. Na página Sole-tenant node, selecione o grupo de nós aplicável na lista e selecione Select para voltar à guia Sole tenancy. O campo de rótulos de afinidade do nós é preenchido com as informações selecionadas. Essa configuração garante que os catálogos de máquinas criados a partir da instância sejam implantados no grupo de nós selecionado.

  6. Selecione Create para criar a instância.

Definir um rótulo de afinidade de nó para uma instância existente

Para definir o rótulo de afinidade do nó:

  1. Na janela de terminal do Google Cloud Shell, use o comando gcloud compute instances para definir um rótulo de afinidade de nó. Inclua as seguintes informações no comando gcloud:

    • Nome da VM. Por exemplo, use uma VM existente chamada s*2019-vda-base.*
    • Nome do grupo de nós. Use o nome do grupo de nós que você criou anteriormente. Por exemplo, mh-sole-tenant-node-group-1.
    • A zona em que a instância reside. Por exemplo, a VM reside em *us-east-1b* zone.

    Por exemplo, digite o seguinte comando na janela do terminal:

    • gcloud compute instances set-scheduling "s2019-vda-base" --node-group="mh-sole-tenant-node-group-1" --zone="us-east1-b"

    Para obter mais informações sobre o comando gcloud compute instances, consulte a documentação do Google Developer Tools em https://cloud.google.com/sdk/gcloud/reference/beta/compute/instances/set-scheduling.

  2. Navegue até a página VM instance details da instância e verifique se o campo Node Affinities é preenchido com o rótulo.

Criar um catálogo de máquinas

Depois de definir o rótulo de afinidade do nó, configure o catálogo de máquinas.

Preview: Usar chaves de criptografia gerenciadas pelo cliente (CMEK)

Você pode usar chaves de criptografia gerenciadas pelo cliente (CMEK) para catálogos do MCS. Ao usar essa funcionalidade, você atribui a função CryptoKey Encrypter/Decrypter do serviço Key Management Service do Google Cloud ao agente de serviço do Compute Engine. A conta Citrix DaaS deve ter as permissões corretas no projeto em que a chave está armazenada. Consulte Ajudar a proteger recursos usando chaves do Cloud KMS para obter mais informações.

Seu agente de serviço do Compute Engine está no seguinte formato: service-<Project _Number>@compute-system.iam.gserviceaccount.com. Esse formulário é diferente da conta de serviço padrão do Compute Engine.

Nota:

Essa conta de serviço do Compute Engine talvez não apareça na tela IAM Permissions do Google Console. Nesse caso, use o comando gcloud conforme descrito em Ajudar a proteger recursos usando chaves do Cloud KMS.

Atribuir permissões à conta Citrix DaaS

As permissões do Google Cloud KMS podem ser configuradas de várias maneiras. Você pode fornecer permissões de KMS no nível do projeto ou permissões de KMS no nível do recurso. Consulte Permissões e funções para obter mais informações.

Permissões no nível do projeto

Uma opção é fornecer à conta Citrix DaaS permissões no nível do projeto para navegar pelos recursos do Cloud KMS. Para isso, crie uma função personalizada e adicione as seguintes permissões:

  • cloudkms.keyRings.list
  • cloudkms.keyRings.get
  • cloudkms.cryptokeys.list
  • cloudkms.cryptokeys.get

Atribua essa função personalizada à sua conta Citrix DaaS. Isso permite que você navegue pelas chaves regionais no projeto relevante no inventário.

Permissões de nível do recurso

Na outra opção, de permissões no nível do recurso, no console do Google Cloud, navegue até a cryptoKey que você usa para o provisionamento de MCS. Adicione uma conta Citrix DaaS a um keyring ou chave que você usa para provisionamento de catálogo.

Dica:

Com essa opção, você não pode procurar chaves regionais para o seu projeto no inventário porque a conta do Citrix DaaS não tem permissões de lista de nível do projeto nos recursos do Cloud KMS. No entanto, você ainda pode provisionar um catálogo usando o CMEK especificando o cryptoKeyId correto nas propriedades personalizadas ProvScheme, como descrito abaixo.

Provisionar com CMEK usando propriedades personalizadas

Ao criar o seu esquema de provisionamento via PowerShell, especifique uma propriedade CryptoKeyId em ProvScheme CustomProperties. Por exemplo:

'<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="CryptoKeyId" Value="<yourCryptoKeyId>" />
</CustomProperties>'
<!--NeedCopy-->

cryptoKeyId deve ser especificada no seguinte formato:

projectId:location:keyRingName:cryptoKeyName

Por exemplo, se você quiser usar a chave my-example-key no keyring my-example-key-ring na região us-east1 e no projeto com ID my-example-project-1, suas configurações personalizadas ProvScheme serão semelhantes a:

'<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="CryptoKeyId" Value="my-example-project-1:us-east1:my-example-key-ring:my-example-key" />
</CustomProperties>'
<!--NeedCopy-->

Todas as imagens e discos provisionados do MCS relacionados a esse esquema de provisionamento usam essa chave de criptografia gerenciada pelo cliente.

Dica:

Se você usar chaves globais, o local das propriedades do cliente deverá indicar global e não o nome da região, que no exemplo acima é us-east1. Por exemplo: <Property xsi:type="StringProperty" Name="CryptoKeyId" Value="my-example-project-1:global:my-example-key-ring:my-example-key" />.

Rotação de chaves gerenciadas pelo cliente

O Google Cloud não é compatível com a rotação de chaves em imagens ou discos permanentes existentes. Depois que uma máquina é provisionada, ela é vinculada à versão da chave em uso no momento em que foi criada. No entanto, uma nova versão da chave pode ser criada, e essa nova chave é usada para máquinas recém-provisionadas ou recursos criados quando um catálogo é atualizado com uma nova imagem mestre.

Considerações importantes sobre keyrings

Os keyrings não podem ser renomeados ou excluídos. Além disso, você pode incorrer em encargos imprevistos ao configurá-los. Ao excluir ou remover um keyring, o Google Cloud exibe uma mensagem de erro:

Sorry, you can't delete or rename keys or key rings. We were concerned about the security implications of allowing multiple keys or key versions over time to have the same resource name, so we decided to make names immutable. (And you can't delete them, because we wouldn't be able to do a true deletion--there would still have to be a tombstone tracking that this name had been used and couldn't be reused).
We're aware that this can make things untidy, but we have no immediate plans to change this.
If you want to avoid getting billed for a key or otherwise make it unavailable, you can do so by deleting all the key versions; neither keys nor key rings are billed for, just the active key versions within the keys.
<!--NeedCopy-->

Dica:

Para obter mais informações, consulte Editing or deleting a key ring from the console.

Compatibilidade de acesso uniforme no nível do bucket

O Citrix DaaS é compatível com a política de controle de acesso uniforme no nível do bucket no Google Cloud. Essa funcionalidade aumenta o uso da política do IAM que concede permissões a uma conta de serviço para permitir a manipulação de recursos, incluindo buckets de armazenamento. Com controle de acesso uniforme no nível do bucket, o Citrix DaaS permite que você use uma lista de controle de acesso (ACL) para controlar o acesso a buckets de armazenamento ou objetos armazenados neles. Consulte Acesso uniforme no nível do bucket para obter informações gerais sobre o acesso uniforme no nível do bucket no Google Cloud. Para obter informações de configuração, consulte Requerer acesso uniforme no nível do bucket.

Mais informações