Neste documento, descrevemos como criar políticas de extensão de VM, que permitem instalar e gerenciar automaticamente extensões em uma frota de máquinas virtuais (VMs) do Compute Engine. Ao definir uma política, você garante que extensões específicas sejam instaladas e mantidas em todas as VMs que correspondam aos critérios especificados, como rótulos de VM.
Antes de começar
- Instale o componente Beta
executando o seguinte comando:
gcloud components install beta
- Revise os conceitos básicos sobre o gerenciador de extensões de VM.
- Revise as cotas do VM Extension Manager.
- Ative a API Compute Engine no projeto do Google Cloud , se ainda não tiver feito isso.
- Verifique se a VM executa a versão
20241209.01ou mais recente do agente convidado. - Para conferir os registros de depuração dos eventos do VM Extension Manager, configure as definições de registro do agente convidado.
-
Configure a autenticação, caso ainda não tenha feito isso.
Com isso, você confirma sua identidade para acesso a serviços e APIs do Google Cloud . Para executar código ou exemplos em um ambiente de desenvolvimento local, faça a autenticação no Compute Engine com um destes métodos:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Instale a CLI do Google Cloud. Após a instalação, inicialize a CLI do Google Cloud executando o seguinte comando:
gcloud initAo usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
- Set a default region and zone.
Papéis necessários do IAM
Para receber a permissão necessária para criar uma política de extensão, peça ao administrador para conceder a você o papel do IAM de Administrador de políticas de extensão de VM (
roles/compute.vmExtensionPolicyAdmin). Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.Esse papel predefinido contém a permissão
compute.vmExtensionPolicies.create, necessária para criar uma política de extensão.Também é possível receber essa permissão com papéis personalizados ou outros papéis predefinidos.
Para mais informações sobre papéis e permissões do IAM no Compute Engine, consulte Papéis e permissões do Compute Engine.
Criar uma política de extensão de VM
Use um dos métodos a seguir para criar uma política de extensão de VM. Essa política define quais extensões instalar e em quais VMs.
Console
- No console do Google Cloud , acesse a página Políticas de extensão de VM.
- Clique em Criar política de extensão.
- No campo Nome, digite um nome para a política.
- Opcional: no campo Descrição, insira uma descrição para a política.
- No campo Prioridade, especifique um número de prioridade para resolver conflitos entre políticas. Números menores indicam maior prioridade. O valor padrão é 1000.
- Na lista Zona, selecione a zona em que você quer aplicar essa política.
- Na seção Extensões, clique em Adicionar extensão e faça o seguinte para cada extensão que você quer instalar nas VMs de destino:
- Na lista Extensão, selecione uma opção. Consulte Extensões compatíveis.
- Na lista Versão, especifique o número da versão da extensão. Deixe em branco para selecionar a versão mais recente.
- Para o Agente de operações, especifique a versão
2.58.0ou mais recente. - Para a extensão para SAP e a extensão para cargas de trabalho de computação, deixe o campo em branco para selecionar a versão mais recente.
- Para o Agente de operações, especifique a versão
- Opcional: no campo Conteúdo do arquivo de configuração, insira os parâmetros de configuração da extensão.
- Na seção Instâncias de VM de destino, selecione as VMs para a política. Para selecionar VMs com rótulos específicos, clique em Adicionar rótulos e inclua o par de chave-valor.
- Clique em Criar.
gcloud
Para criar uma política de extensão de VM e lançar a política para VMs em uma zona específica, use o comando
gcloud beta compute zone-vm-extension-policies create:gcloud beta compute zone-vm-extension-policies create POLICY_NAME \ --zone=ZONE \ --description="DESCRIPTION" \ --extensions=EXTENSION_NAME_1,EXTENSION_NAME_2 \ --version=EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2 \ --config-from-file=EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2 \ --inclusion-labels=KEY_1=VALUE_1 \ --priority=PRIORITY
Substitua:
POLICY_NAME: um nome para a política de extensão de VM.ZONE: a zona em que essa política se aplica.DESCRIPTION: uma descrição opcional da política.EXTENSION_NAME_1,EXTENSION_NAME_2: uma lista separada por vírgulas de extensões a serem adicionadas à política. É preciso especificar pelo menos uma extensão. Os valores válidos para as extensões são:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2: uma lista separada por vírgulas de pares de chave-valor em que a chave é o nome da extensão e o valor é a versão dela. Se você não especificar uma versão para uma extensão, o Gerenciador de extensões de VM usará a versão mais recente disponível e fará upgrade automático quando novas versões forem lançadas.EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2: uma lista separada por vírgulas de pares de chave-valor em que a chave é o nome da extensão e o valor é o caminho para o arquivo de configuração dessa extensão. Esse caminho está na VM em que você executa o comandogcloud, não na VM em que você instala a extensão.Como alternativa, para fornecer a configuração como uma string inline, use a flag
--configem vez de--config-from-file. Por exemplo,EXTENSION_NAME_1="CONFIG_1". É possível usar--config-from-fileou--config, mas não ambos no mesmo comando.KEY_1=VALUE_1: uma lista separada por vírgulas de pares de chave-valor que definem rótulos de inclusão para um seletor. As VMs precisam ter todos os rótulos especificados em um seletor para serem segmentadas. Se você especificar--inclusion-labelsvárias vezes, a política vai segmentar VMs que correspondem a qualquer um dos seletores fornecidos (OR lógico). Se você omitir essa flag, a política vai segmentar todas as VMs na zona especificada.PRIORITY: um número inteiro de 0 a 65535 que define a prioridade da política. Números menores indicam maior prioridade. O valor padrão é 1000.O comando falha se já existir uma política com o nome especificado na zona.
Exemplo 1
O comando a seguir cria uma política chamada
test-extension-policyque instala a extensãoops-agentna zonaus-central1-fpara o projetotest-project. A flag--config-from-fileespecifica o caminho para um arquivo local que contém uma configuração YAML do Agente de operações.gcloud beta compute zone-vm-extension-policies create test-extension-policy \ --project=test-project \ --zone=us-central1-f \ --extensions=ops-agent \ --config-from-file=ops-agent="/usr/ops-agent-config.yaml"
Exemplo 2
O comando a seguir cria uma política chamada
test-extension-policy-2que instala a extensãoops-agentna zonaus-central1-fpara o projetotest-projectem VMs com o rótuloenv=prod. A prioridade da política é definida como500, e a flag--config-from-fileespecifica o caminho para um arquivo local que contém uma configuração YAML para o Agente de operações.gcloud beta compute zone-vm-extension-policies create test-extension-policy-2 \ --project=test-project \ --zone=us-central1-f \ --extensions=ops-agent \ --config-from-file=ops-agent="/usr/ops-agent-config.yaml" \ --priority=500 \ --inclusion-labels=env=prod
A seguir
- Saiba como gerenciar extensões de VM.
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-12-10 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-12-10 UTC."],[],[]] -