Se você criou VMs do Compute Engine com o Agente de operações instalado durante a criação ou, em alguns casos, se instalou o agente em VMs atuais usando o console do Google Cloud, o Google Cloud também criou políticas do SO do VM Manager que instalam e monitoram o Agente de operações. Neste documento, descrevemos como consultar essas políticas do SO de agente de operações e gerenciar o agente de operações nas VMs cobertas pelas políticas. Para informações sobre como criar VMs com o Agente de operações instalado automaticamente, consulte Instalar o Agente de operações durante a criação da VM.
Depois que uma política do SO de agente de operações é criada, é possível fazer o seguinte:
- Determinar quais VMs são cobertas pela política
- Determinar quais zonas são cobertas pela política
- Estender a cobertura da política para VMs atuais
- Desinstalar o agente de uma VM coberta pela política
Encontrar VMs cobertas pelas políticas de SO do agente de operações
É possível usar o console do Google Cloud ou a Google Cloud CLI para ver quais VMs no projeto do Google Cloud são cobertas pelas políticas do SO do agente de operações por meio de uma atribuição de política do SO. Se você acredita que uma VM está sem cobertura, faça o seguinte:
- Verifique se uma VM tem um rótulo de política do SO do agente de operações.
- Verifique se a atribuição de uma política de SO de agente de operações foi implantada.
Verificar se uma política do SO de agente de operações está atribuída às VMs em uma zona
Para verificar se as VMs em uma zona são cobertas pela política do SO do agente de operações, use o console do Google Cloud ou a CLI gcloud para ver se a VM está relacionada a uma atribuição de política do SO de agente de operações.
Console
-
No console do Google Cloud, acesse a página Políticas do SO:
Se você usar a barra de pesquisa para encontrar a página, selecione o resultado com o subtítulo Compute Engine.
Na guia Instâncias de VM, selecione a VM que você quer verificar.
Se a VM for coberta por uma política do SO do agente de operações, a coluna ID da política do SO incluirá
goog-ops-agent-policy
e o estado será "Em conformidade".
gcloud
Para exibir uma lista de atribuições de políticas do SO do agente de operações em uma zona, execute o seguinte comando:
gcloud compute os-config os-policy-assignment-reports list --location=ZONE --filter="ASSIGNMENT_ID ~ goog-ops-agent"
A saída mostra uma lista de VMs com uma atribuição de política do SO do agente de operações. Se o Agente de operações estiver instalado na VM, a coluna "Resumo" terá um valor de "Políticas compatíveis com 1/1".
INSTANCE ASSIGNMENT_ID LOCATION UPDATE_TIME SUMMARY instance-1 goog-ops-agent-v2-x86-template-1-0-0-us-east4-c us-east4-c 2023-04-28T02:11:15.118088Z 1/1 policies compliant instance-3 goog-ops-agent-v2-x86-template-1-0-0-us-east4-c us-east4-c 2023-04-28T02:11:15.118088Z 1/1 policies compliant
Verifique se uma VM tem um rótulo de política do SO do agente de operações
Para ver quais VMs no projeto do Google Cloud têm o rótulo da política do SO do agente de operações, goog-ops-agent-policy
, use o Console do Google Cloud ou a CLI gcloud.
Console
-
No console do Google Cloud, acesse a página Instâncias de VMs:
Se você usar a barra de pesquisa para encontrar a página, selecione o resultado com o subtítulo Compute Engine.
Selecione o nome da sua VM.
No painel Informações básicas, localize a entrada Rótulos.
Se a VM for coberta pela política do SO do agente de operações, ela terá um rótulo como
goog-ops-agent-policy:v2-x86-template-1-0-0
.
gcloud
Para ver todas as VMs que têm o rótulo da política do SO do agente de operações goog-ops-agent-policy
, execute o seguinte comando:
gcloud compute instances list --format="table(name,zone,labels)" --filter="labels=goog-ops-agent-policy"
A saída mostra o nome, a zona e os rótulos das VMs. Exemplo:
NAME ZONE LABELS test-vm1 us-central1-a {'goog-ops-agent-policy': 'v2-x86-template-1-0-0'} test-vm1 us-east4-c {'goog-ops-agent-policy': 'v2-x86-template-1-0-0'}
Para ver se uma VM específica tem o rótulo da política do SO do agente de operações, execute o seguinte comando:
gcloud compute instances describe --format "yaml(labels)" --zone=ZONE VM_NAME
A saída mostra uma lista de rótulos para sua VM. Se a VM tiver o rótulo da política do SO do agente de operações, goog-ops-agent-policy
aparecerá na lista labels
. Exemplo:
labels: goog-ops-agent-policy: v2-x86-template-1-0-0
Verificar se a atribuição de uma política de SO de agente de operações foi implantada.
Veja as atribuições de política do SO do projeto do Google Cloud para verificar se uma atribuição de política do SO do agente de operações foi implantada corretamente em uma zona específica.
Console
-
No console do Google Cloud, acesse a página Políticas do SO:
Se você usar a barra de pesquisa para encontrar a página, selecione o resultado com o subtítulo Compute Engine.
Para ver o estado dos lançamentos de políticas do SO, clique na guia Atribuições da política do SO.
As atribuições de política do SO do agente de operações têm IDs que começam com a string "goog-ops-agent". Se a atribuição tiver sido implantada corretamente, ela terá um estado de lançamento "Concluído".
gcloud
Para ver todas as atribuições de política do SO do agente de operações em uma zona, execute o seguinte comando:
gcloud compute os-config os-policy-assignments list --location=ZONE --filter="ASSIGNMENT_ID ~ goog-ops-agent"
A saída mostra uma lista de atribuições de políticas do SO do agente de operações em uma zona. Se a atribuição tiver sido implantada corretamente, ela terá um estado de lançamento "CONCLUÍDO". Exemplo:
ASSIGNMENT_ID ROLLOUT_STATE REVISION_CREATE_TIME REVISION_ID goog-ops-agent-v2-x86-template-1-4-0-us-central1-b SUCCEEDED 2023-01-28T05:23:41Z. 940df3e9-77fd-470b-84df-53fb24825c4a goog-ops-agent-v2-x86-template-1-0-0-us-central1-b SUCCEEDED 2022-01-28T05:23:41Z. qwareaff-efte-erew-aeet-faer234t4gga
Para ver detalhes sobre uma atribuição de política específica do SO do agente de operações, execute o seguinte comando:
gcloud compute os-config os-policy-assignments describe POLICY_ASSIGNMENT_ID --location=ZONE
Desinstalar o agente de operações nas VMs cobertas pela política de SO de agente de operações
Se você desinstalar manualmente o agente de operações em uma VM coberta pela política de SO do agente de operações, ela será reinstalada por essa política. Para desinstalar o agente de operações, primeiro
remova o rótulo goog-ops-agent-policy
da VM. Depois de remover o rótulo de política do SO de agente de operações de uma VM, desinstale-o permanentemente.
Desinstalar o agente de operações em uma VM específica
Para remover a política e desinstalar o agente de operações de uma VM específica, use o console do Google Cloud ou a CLI gcloud.
Console
-
No console do Google Cloud, acesse a página Instâncias de VMs:
Se você usar a barra de pesquisa para encontrar a página, selecione o resultado com o subtítulo Compute Engine.
Selecione o nome da VM que você quer editar.
Clique em Editar.
Acesse a seção Rótulos e clique em + Adicionar rótulos.
Localize o rótulo com a chave
goog-ops-agent-policy
e clique em Excluir item.
gcloud
Para remover o rótulo
goog-ops-agent-policy
de uma VM, execute o seguinte comando:gcloud compute instances update VM_NAME \ --remove-labels=goog-ops-agent-policy
Desinstalar o agente de operações em todas as VMs
Para desinstalar o agente de operações das VMs na zona que tem uma atribuição de política do SO de agente de operações, use o script fornecido pelo Cloud Monitoring. Não é possível desinstalar o agente de um grupo de VMs usando o console do Google Cloud.
Para executar o script, você precisa ter o papel Editor de GuestPolicy (roles/osconfig.guestPolicyEditor
).
Execute o script a seguir no Cloud Shell. Você pode fornecer qualquer número de zonas:
curl -sSO https://dl.google.com/cloudagents/undo-ops-agent-policies.sh bash undo-ops-agent-policies.sh ZONE1 ZONE2
O script executa as seguintes tarefas em cada zona:
- Encontra todas as políticas do SO do agente de operações.
- Edita cada política para desinstalar o agente de operações nas VMs cobertas.
- Exclui a política de SO do agente de operações.
- Remove o rótulo
goog-ops-agent-policy
de cada VM coberta.
Adicionar a cobertura da política do SO de agente de operações a uma VM
A política do SO de agente de operações abrange apenas VMs
com o rótulo goog-ops-agent-policy
e estão na mesma zona de uma atribuição
de política de SO de agente de operações. No entanto, é possível ampliar a cobertura para outras VMs criadas sem a política de SO de agente de operações atribuída a elas.
Para estender a cobertura da política para uma VM, você precisa conhecer a versão do modelo da atribuição de política do SO do agente de operações na sua zona. Se a zona tiver várias atribuições de política do SO do agente de operações, localize a atribuição com a versão de modelo mais recente. Para exibir uma lista de atribuições de políticas do SO do agente de operações em uma zona, execute o seguinte comando:
gcloud compute os-config os-policy-assignments list --location=ZONE --filter="ASSIGNMENT_ID ~ goog-ops-agent"
Para estender a cobertura da política a outras VMs, use o Console do Google Cloud ou a CLI gcloud:
Console
-
No console do Google Cloud, acesse a página Instâncias de VMs:
Se você usar a barra de pesquisa para encontrar a página, selecione o resultado com o subtítulo Compute Engine.
Na lista Instâncias de VM, marque as caixas de seleção ao lado das VMs que você quer rotular e clique em Rótulos.
Para adicionar rótulos, clique em +Adicionar rótulo e inclua o par de chave-valor. A chave precisa ser
goog-ops-agent-policy
e o valor é a versão de modelo desejada, como1-0-0
.Salve as alterações.
gcloud
Para estender a cobertura da política a uma VM sem cobertura, execute os seguintes comandos:
gcloud compute instances update VM_NAME --zone=ZONE --update-labels=goog-ops-agent-policy:v2-x86-template-1-0-0
gcloud compute instances add-metadata VM_NAME --zone=ZONE --metadata=enable-osconfig=TRUE
Permissão
A instalação do Agente de operações usa o VM Manager e exige permissões para ativar a API VM Manager e criar uma política. Todas as permissões necessárias estão disponíveis com o papel de editor (roles/Editor
). Ou peça
a um administrador do projeto para conceder as permissões mínimas usando a
CLI do Google Cloud.
Permissões necessárias para instalar o Agente de operações durante a criação da VM:
serviceusage.services.get
serviceusage.services.enable
osconfig.osPolicyAssignments.get
osconfig.osPolicyAssignments.create
osconfig.projectBillingConfigs.update
compute.instances.create
Permissões necessárias para instalar o Agente de operações em VMs atuais:
serviceusage.services.get
serviceusage.services.enable
osconfig.osPolicyAssignments.get
osconfig.osPolicyAssignments.create
osconfig.projectBillingConfigs.update
compute.instances.setMetadata
compute.instances.setLabels
Encontre papéis correspondentes que fornecem essas permissões na
referência de papéis básicos e predefinidos do IAM, com
exceção da permissão osconfig.projectBillingConfigs.update
. Essa permissão está incluída no papel osconfig.projectBillingConfig
. Esse papel não
está disponível no console do Google Cloud, mas pode ser concedido pela
CLI gcloud.
Exemplos de comandos para conceder papéis a permissões:
gcloud projects add-iam-policy-binding project-id --member='user:user-email' --role='roles/osconfig.projectBillingConfigEditor'