Políticas globais de extensão de VM

Com as políticas de extensão global, é possível gerenciar extensões em várias zonas e regiões de um projeto. Ao aplicar uma política global, o Gerenciador de extensões de VM garante que as VMs em qualquer região ou zona que correspondam aos critérios da política tenham as extensões especificadas instaladas e em execução.

O diagrama a seguir ilustra como usar uma política de extensão global para aplicar extensões a VMs em diferentes zonas e regiões do seu projeto:

Diagrama de arquitetura do VM Extension Manager mostrando uma política global sendo
aplicada a VMs em zonas e
regiões.

Como mostrado no diagrama anterior, é possível definir uma política de extensão global no nível do projeto. O VM Extension Manager aplica essa política a todas as VMs que correspondem aos critérios de seleção. Por exemplo, se você selecionar VMs com o rótulo env=prod em todas as zonas e regiões do projeto, o Gerenciador de extensões de VM vai aplicar as extensões especificadas, como o agente de operações e a extensão para SAP, somente a essas VMs.

Planos de lançamento para políticas globais

As políticas globais usam planos de lançamento para gerenciar a implantação de extensões em zonas e regiões. Com um plano de lançamento, é possível controlar a implantação de extensões, o que ajuda a minimizar o risco de problemas generalizados. Com um plano de lançamento, é possível definir a ordem e o tempo das atualizações para garantir um lançamento gradual e controlado.

Ao criar ou atualizar uma política global, é possível especificar um dos seguintes planos de lançamento:

  • Lançamento lento: implanta extensões gradualmente em diferentes zonas durante um período. O período padrão é de cinco dias. Essa abordagem é recomendada porque permite identificar e resolver possíveis problemas em lançamentos anteriores antes que eles afetem toda a frota.
  • Implantação rápida: esse tipo de implantação envia extensões para todas as VMs segmentadas em todas as zonas e regiões imediatamente. Essa abordagem é útil em situações em que você precisa implantar uma extensão ou um patch rapidamente em ambientes de não produção.

Também é possível definir planos de lançamento personalizados para especificar as ondas de implantação com base em zonas ou regiões e o tempo de espera entre as ondas. Para mais informações, consulte o método rolloutPlans.insert.

Comportamento em caso de conflito de lançamento

Ao criar ou atualizar uma política global de extensão, um conflito pode ocorrer nas seguintes situações:

  • Ao criar uma política global: se já existir uma política zonal que entre em conflito com a política global em uma zona.
  • Ao atualizar uma política global: se uma política zonal existente foi modificada independente da implantação da política global, por exemplo, usando uma chamada de API zonal.

Para evitar esses conflitos, especifique um comportamento de conflito para o lançamento, que determina se a política global deve substituir as políticas zonais conflitantes durante um lançamento. É possível especificar um dos seguintes comportamentos:

  • Não substituir (padrão): se você não especificar um comportamento de conflito, a implantação da política global não vai substituir as políticas zonais conflitantes. A configuração da política zonal tem precedência nessa zona.
  • Substituir: se você definir o comportamento de conflito como overwrite, a política global vai substituir as políticas zonais conflitantes, e a configuração da política global será aplicada nessa zona.

Para mais informações, consulte o parâmetro conflictBehavior no método globalVmExtensionPolicies.insert.

Tentar fazer um lançamento de novo

Quando você atualiza ou exclui uma política de extensão global, o VM Extension Manager inicia um novo lançamento para aplicar as mudanças de acordo com o plano de lançamento. Se uma implantação for interrompida ou se novas zonas forem adicionadas, será possível tentar novamente a operação iniciando uma nova implantação para a mesma política.

Tentar novamente o lançamento de uma política de atualização

A lista a seguir descreve cenários em que talvez seja necessário tentar novamente o lançamento de uma política de atualização:

  • Novas zonas adicionadas: se novas Google Cloud zonas ficarem disponíveis depois que você implantar uma política global, o VM Extension Manager não vai aplicar automaticamente as políticas atuais às VMs na nova zona. É possível tentar novamente o lançamento da atualização para aplicar a política de extensão às VMs nas novas zonas.
  • Reverter mudanças na política zonal: se as políticas zonais foram modificadas de forma independente, por exemplo, usando uma chamada de API zonal para modificar uma política zonal, tente novamente um lançamento de atualização com conflictBehavior definido como overwrite para reaplicar a configuração da política global e substituir as mudanças na política zonal.
  • Lançamento interrompido: se um lançamento anterior falhar antes da conclusão, você poderá iniciar um novo para tentar atualizar de novo.
  • Acelerar um lançamento: se um lançamento em andamento estiver progredindo muito lentamente, inicie um novo usando um plano FAST_ROLLOUT ou personalizado para acelerar o processo de atualização.

Para mais informações, consulte o parâmetro retryUuid no método globalVmExtensionPolicies.update.

Ao tentar novamente um lançamento, você precisa fornecer um identificador universal exclusivo (UUID) para identificar a solicitação de nova tentativa. Você pode usar qualquer gerador de UUID para criar um. O UUID precisa usar o formato hexadecimal de 32 caracteres, por exemplo, a1a2a3a4-b1b2-c1c2-d1d2-d3d4d5d6d7d8.

Como tentar novamente o lançamento de uma política de exclusão

A lista a seguir descreve cenários em que talvez seja necessário tentar novamente um lançamento para excluir uma política:

  • Lançamento interrompido: se um lançamento anterior para excluir uma política foi interrompido ou não foi concluído, você pode iniciar um novo lançamento para tentar excluir a operação novamente.
  • Acelerar um lançamento: se um lançamento de exclusão em andamento estiver progredindo muito lentamente, inicie um novo lançamento usando um plano FAST_ROLLOUT ou um plano de lançamento personalizado para acelerar o processo de exclusão.

Para mais informações, consulte o parâmetro retryUuid no método globalVmExtensionPolicies.delete.

A seguir

Para saber mais sobre como gerenciar extensões, consulte os seguintes recursos: