Visão geral das políticas do Agente de operações

As políticas de agente permitem a instalação e a manutenção automatizadas do Agente de operações em uma frota de VMs do Compute Engine que correspondem aos critérios especificados pelo usuário. Com um único comando, é possível criar uma política para um projeto do Google Cloud que rege as VMs atuais e novas associadas a esse projeto do Google Cloud, garantindo a instalação e a desinstalação adequadas do Agente de operações nessas VMs.

Políticas do agente para o Agente de operações

O suporte para políticas de agente para o Agente de operações está disponível no SDK Google Cloud em dois níveis de versão: GA e Beta. Os dois tipos de políticas dependem dos recursos de Configuração do SO fornecidos pelo VM Manager, mas as implementações são diferentes. Recomendamos usar as políticas do GA sempre que possível. Na maioria dos casos, é possível converter políticas Beta em políticas do GA.

Nesta seção, descrevemos as diferenças entre as políticas de agente Beta e do GA. Para informações sobre como criar e gerenciar políticas de agente, consulte:

Diferenças entre as políticas de agente Beta e do GA

As políticas de agente criadas pelos grupos de comandos Beta e compute instances ops-agents policies do GA têm estas diferenças:

  • Suporte para os agentes legados do Monitoring e do Logging

    • As políticas do agente Beta podem gerenciar o agente do Monitoring legado e o agente do Logging, além do Agente de operações.
    • As políticas do agente do GA gerenciam apenas o Agente de operações.
  • Upgrade automático da versão do agente

    • As políticas do agente Beta podem manter o agente na versão mais recente fazendo upgrade dele.
    • As políticas de agente do GA não são compatíveis com operações de upgrade automático. Para abordagens alternativas, consulte Substituir políticas de upgrade de agente Beta.
  • Aplicação da política a instâncias nomeadas do Compute Engine

  • Aplicação global ou zonal de políticas de agente em um projeto do Google Cloud

    • As políticas do agente Beta são aplicadas globalmente a todas as instâncias selecionadas pelos critérios da política no projeto do Google Cloud.
    • As políticas do agente do GA são aplicadas a todas as instâncias selecionadas pelos critérios da política dentro da zona especificada pela política. Por exemplo, uma política criada na zona us-central1-a não afeta as VMs em outras zonas.

Os grupos de comandos compute instances ops-agents policies beta e GA também são estruturalmente diferentes:

  • Os comandos gcloud beta compute instances ops-agents policies descrevem as políticas do agente transmitindo opções individuais para os comandos. Por exemplo:

    gcloud beta compute instances ops-agents policies create ops-agents-test-policy \
      --agent-rules="type=logging,enable-autoupgrade=false;type=metrics,enable-autoupgrade=false" \
      --description="A test policy." \
      --os-types=short-name=centos,version=7 \
      --instances=zones/us-central1-a/instances/test-instance \
      --project PROJECT_ID
    
  • Os comandos gcloud compute instances ops-agents policies descrevem a política do agente usando um arquivo de configuração YAML e uma zona, por exemplo:

    gcloud compute instances ops-agents policies create test-policy \
      --zone us-central1-a \
      --file test-policy.yaml \
      --project PROJECT_ID
    

Uso das políticas Beta e do GA

É possível usar as políticas de agentes Beta e do GA com o Agente de operações, desde que considere as diferenças entre os tipos de políticas.

A maior diferença comportamental entre as políticas de agente Beta e do GA é que as políticas do GA são zonais, e as políticas do agente Beta são globais em um projeto. Ou seja, as políticas de agente do GA selecionam apenas VMs na zona em que a política é criada, mas as políticas Beta podem selecionar qualquer VM no seu projeto do Google Cloud.

Se as políticas Beta selecionarem um conjunto de VMs e as políticas de GA selecionarem um conjunto diferente de VMs, as políticas não poderão entrar em conflito.

É possível ter políticas de agente Beta e do GA que se apliquem à mesma VM, mas você precisa garantir que as políticas não tenham finalidades conflitantes. Por exemplo, uma política Beta que instala o Agente de operações e uma política de GA que desinstala o Agente de operações.

Converter políticas Beta em políticas do GA

É possível converter suas políticas do agente Beta do Agente de operações em políticas do agente do GA, desde que não haja diferenças entre os tipos de políticas que não sejam possíveis. Não é possível converter as políticas do agente Beta do agente do Monitoring legado ou do agente do Logging em políticas de agente do GA.

Para converter políticas do agente Beta em políticas do GA, faça o seguinte:

  1. Gere uma lista de todas as políticas do agente Beta no seu projeto executando o seguinte comando:

    gcloud beta compute instances ops-agents policies list --project PROJECT_ID
    
  2. Identifique as políticas do agente Beta que você quer converter em políticas do GA.

  3. Para cada política Beta que você identificar para conversão, faça o seguinte:

    1. Crie um arquivo de configuração YAML o mais próximo possível da política Beta, considerando as diferenças entre as políticas Beta e do GA. Para informações sobre o formato de configuração YAML, consulte Descrever as políticas do agente.

    2. Crie uma política de agente do GA em cada zona em que ela será necessária. Para informações sobre como criar políticas de agente do GA, consulte Criar uma política de agente.

    3. Exclua a política do agente Beta executando o seguinte comando:

      gcloud beta compute instances ops-agents policies delete POLICY_ID --project PROJECT_ID
      

Talvez não seja possível escrever uma política de agente do GA para o Agente de operações que seja exatamente igual a uma política de agente Beta atual. No entanto, com exceção da opção de upgrade automático da política do agente Beta, é possível ter um comportamento equivalente.

As seções abaixo descrevem como lidar com os seguintes casos:

Converter uma política de instância nomeada Beta em uma política do GA

Para converter uma política de agente Beta aplicada a um conjunto nomeado de instâncias de VM, faça o seguinte:

  1. Aplique um rótulo às instâncias no conjunto de VMs que você quer selecionar. Para aplicar um rótulo a uma VM atual, use o comando gcloud compute instances add-labels, conforme mostrado no comando a seguir:

    gcloud compute instances add-labels INSTANCE_NAME --labels=KEY=VALUE
    
  2. Descreva uma política de agente do GA que selecione VMs com o novo rótulo usando a estrutura instanceFilter na configuração. O exemplo a seguir cria um arquivo chamado config.yaml que contém uma política correspondente ao rótulo aplicado na etapa anterior:

    cat > config.yaml << EOF
    agentsRule:
      packageState: installed
      version: 2.47.0
    instanceFilter:
      inclusionLabels:
      - labels:
        KEY: VALUE
    EOF
    

    Para mais informações sobre como descrever políticas de agentes do GA, consulte Arquivos de configuração para políticas de agentes.

  3. Crie uma política de agente do GA em cada zona que tenha VMs com o novo rótulo:

    gcloud compute instances ops-agents policies create POLICY_ID \
      --zone ZONE \
      --file config.yaml
      --project PROJECT_ID
    

    Para mais informações sobre como criar políticas de agente do GA, consulte Criar uma política de agente.

Substituir políticas de upgrade de agente Beta

Para substituir as políticas do agente Beta que fazem upgrade dele, você tem as seguintes opções:

  • Para garantir que o Agente de operações esteja sempre atualizado, use o Patch do SO para criar e executar um job de Patch do SO que mantém o agente na versão mais recente.
  • Para fazer um upgrade único, faça o seguinte:

    1. Consulte as notas da versão do Agente de operações no GitHub para determinar a versão mais recente dele.
    2. Crie ou modifique uma política do agente que instale a versão mais recente dele. Por exemplo, se a versão mais recente for 2.46.0, será possível usar um YAML de política do agente como este:

      agentsRule:
        packageState: installed
        version: 2.46.0
      instanceFilter:
      [...]
      
    3. Aplique a política às VMs em cada zona.

Sistemas operacionais compatíveis

É possível aplicar uma política de agente a instâncias de VM do Compute Engine que executam os sistemas operacionais mostrados na tabela a seguir:

Sistema operacional Agente de operações
(políticas de disponibilidade geral e Beta)
Agente de geração de registros
(somente políticas Beta)
Agente do Monitoring
(somente políticas Beta)
CentOS 8
Rocky Linux 8
RHEL 6
RHEL 7:
rhel-7, rhel-7-6-sap-ha, rhel-7-7-sap-ha, rhel-7-9-sap-ha
RHEL 8:
rhel-8, rhel-8-4-sap-ha, rhel-8-6-sap-ha, rhel-8-8-sap-ha
Debian 9 (Stretch)
Debian 11 (Bullseye)
Deep Learning VM Images baseadas no Debian 11 (Bullseye)
Ubuntu LTS 18.04 (Bionic Beaver):
ubuntu-1804-lts, ubuntu-minimal-1804-lts
Ubuntu LTS 20.04 (Focal Fossa):
ubuntu-2004-lts, ubuntu-minimal-2004-lts
Ubuntu LTS 22.04 (Jammy Jellyfish):
buntu-2204-lts, ubuntu-minimal-2204-lts
SLES 12:
sles-12, sles-12-sp5-sap
SLES 15:
sles-15, sles-15-sp2-sap, sles-15-sp3-sap, sles-15-sp4-sap, sles-15-sp5-sap, sles-15-sp6-sap
OpenSUSE Leap 15:
opensuse-leap (opensuse-leap-15-3-*,
opensuse-leap-15-4-*)
Windows Server:
2016, 2019, 2022, Core 2016, Core 2019, Core 2022
  Nas políticas de agente Beta, as colunas de agente são associadas a um tipo de agente especificado para a invocação gcloud beta compute instances ops-agents policies create:
  • Agente de operações é associado ao tipo de agente ops-agent.
  • O agente do Logging é associado ao tipo de agente logging.
  • O agente do Monitoring é associado ao tipo de agente metrics.
 O agente do Monitoring não é compatível com rhel-7-9-sap-ha, rhel-8-2-sap-ha ou rhel-8-4-sap-ha.

A seguir

Para informações sobre como usar políticas de agente para gerenciar o Agente de operações, consulte o seguinte: