Panoramica delle norme dell'agente per l&#Ops Agent

Le policy dell'agente consentono l'installazione e la manutenzione automatizzate di Ops Agent su un parco risorse di VM Compute Engine che corrispondono ai criteri specificati dall'utente. Puoi creare una policy per un Google Cloud progetto che gestisce le VM esistenti e nuove associate a quel Google Cloud progetto, garantendo la corretta installazione e disinstallazione di Ops Agent su queste VM.

Policy dell'agente per Ops Agent

Il supporto per le policy dell'agente per Ops Agent è disponibile a due livelli di release: GA e beta. Entrambi i tipi di policy si basano sulle funzionalità di OS Config fornite da VM Manager, ma le implementazioni sono diverse. Ti consigliamo di utilizzare le policy GA, se possibile. Nella maggior parte dei casi, puoi convertire le policy beta in policy GA.

Questa sezione descrive le differenze tra le policy dell'agente beta e GA. Per informazioni sulla creazione e la gestione delle policy dell'agente, consulta le seguenti pagine:

Differenze tra le policy dell'agente beta e GA

Le policy dell'agente beta e GA differiscono nei seguenti modi:

  • Meccanismi di creazione

  • Supporto per l'agente Monitoring legacy e l'agente Logging

    • Le policy dell'agente beta possono gestire l'agente Monitoring legacy e l'agente Logging, nonché Ops Agent.
    • Le policy dell'agente GA gestiscono solo Ops Agent.
  • Upgrade automatico della versione dell'agente

    • Le policy dell'agente beta possono mantenere l'agente all'ultima versione eseguendo l'upgrade dell'agente.
    • Le policy dell'agente GA non supportano un'operazione di upgrade automatico. Per approcci alternativi, vedi Sostituire le policy di upgrade dell'agente beta.
  • Applicazione della policy alle istanze di Compute Engine denominate

  • Applicazione globale o di zona delle policy dell'agente all'interno di un Google Cloud progetto

    • Le policy dell'agente beta vengono applicate a livello globale a tutte le istanze selezionate dai criteri della policy all'interno del tuo Google Cloud progetto.
    • Le policy dell'agente GA vengono applicate a tutte le istanze selezionate dai criteri della policy all'interno della zona specificata dalla policy. Ad esempio, una policy creata nella zona us-central1-a non ha alcun effetto sulle VM in altre zone.

Le policy beta e GA sono anche strutturalmente diverse:

  • Le policy create utilizzando gcloud beta compute instances ops-agents policies descrivono le policy dell'agente passando le singole opzioni ai comandi, ad esempio:

    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
    

    Il modulo Terraform agent-policy fornisce le stesse funzionalità.

  • Le policy create utilizzando gcloud compute instances ops-agents policies descrivono la policy dell'agente utilizzando un file di configurazione YAML e una zona, ad esempio:

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

    Il modulo Terraform ops-agent-policy fornisce le stesse funzionalità.

Utilizzo delle policy beta e GA

Puoi utilizzare sia le policy dell'agente beta sia quelle GA con Ops Agent, a condizione che tu tenga conto delle differenze tra i tipi di policy.

La differenza comportamentale più grande tra le policy dell'agente beta e GA è che le policy GA sono zonali, mentre le policy dell'agente beta sono globali all'interno di un progetto. Ciò significa che le policy dell'agente GA selezionano solo le VM nella zona in cui viene creata la policy, mentre le policy beta possono selezionare qualsiasi VM nel tuo Google Cloud progetto.

Se le policy beta selezionano un insieme di VM e le policy GA selezionano un insieme diverso di VM, le policy non possono entrare in conflitto.

Puoi avere policy dell'agente beta e GA che si applicano alla stessa VM, ma devi assicurarti che le policy non abbiano scopi in conflitto, ad esempio una policy beta che installa Ops Agent e una policy GA che disinstalla Ops Agent.

Convertire le policy beta in policy GA

Puoi convertire le policy dell'agente beta di Ops Agent in policy dell'agente GA, a condizione che non ci siano differenze tra i tipi di policy che non puoi aggirare. Non puoi convertire le policy dell'agente beta per l'agente Monitoring legacy o l'agente Logging in policy dell'agente GA.

Per convertire le policy dell'agente beta in policy GA utilizzando Google Cloud SDK:

  1. Genera un elenco di tutte le policy dell'agente beta nel tuo progetto eseguendo il seguente comando:

    gcloud beta compute instances ops-agents policies list --project PROJECT_ID
    
  2. Identifica le policy dell'agente beta che vuoi convertire in policy GA.

  3. Per ogni policy beta che identifichi per la conversione:

    1. Crea un file di configurazione YAML il più simile possibile alla policy beta tenendo conto delle differenze tra le policy beta e GA. Per informazioni sul formato di configurazione YAML, vedi Descrivere le policy dell'agente.

    2. Crea una policy dell'agente GA in ogni zona in cui ti serve la policy. Per informazioni sulla creazione di policy dell'agente GA, vedi Creare una policy dell'agente.

    3. Elimina la policy dell'agente beta eseguendo il seguente comando:

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

Potresti non essere in grado di scrivere una policy dell'agente GA per Ops Agent che sia esattamente uguale a una policy dell'agente beta esistente. Tuttavia, ad eccezione dell'opzione di upgrade automatico della policy dell'agente beta, puoi ottenere un comportamento equivalente.

Nelle sezioni seguenti viene descritto come gestire i seguenti casi:

Convertire una policy beta per istanze denominate in una policy GA

Per convertire una policy dell'agente beta applicata a un insieme denominato di istanze VM, puoi:

  1. Applica un'etichetta alle istanze nell'insieme di VM che vuoi selezionare. Per applicare un'etichetta a una VM esistente, utilizza il gcloud compute instances add-labels comando, come mostrato nel seguente comando:

    gcloud compute instances add-labels INSTANCE_NAME --labels=KEY=VALUE
    
  2. Descrivi una policy dell'agente GA che seleziona le VM con la nuova etichetta utilizzando la instanceFilter struttura nella configurazione. L'esempio seguente crea un file denominato config.yaml che contiene una policy che corrisponde all'etichetta applicata nel passaggio precedente:

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

    Per ulteriori informazioni sulla descrizione delle policy dell'agente GA, vedi File di configurazione per le policy dell'agente.

  3. Crea una policy dell'agente GA in ogni zona che contiene VM con la nuova etichetta:

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

    Per ulteriori informazioni sulla creazione di policy dell'agente GA, vedi Creare una policy dell'agente.

Sostituire le policy di upgrade dell'agente beta

Per sostituire le policy dell'agente beta che eseguono l'upgrade dell'agente, hai le seguenti opzioni:

Sistemi operativi supportati

Puoi applicare una policy dell'agente alle istanze VM di Compute Engine che eseguono i sistemi operativi mostrati nella tabella seguente:

Sistema operativo Ops Agent
(policy GA & beta)
Agente Logging
(solo policy beta)
Agente Monitoring
(solo policy 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 Image basate su 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
  Nelle policy dell'agente beta, le colonne dell'agente vengono mappate a un tipo di agente specificato nell' gcloud beta compute instances ops-agents policies create invocazione:
  • Ops Agent viene mappato al tipo di agente ops-agent.
  • Agente Logging viene mappato al tipo di agente logging.
  • Agente Monitoring viene mappato al tipo di agente metrics.
 L'agente Monitoring non è supportato su rhel-7-9-sap-ha, rhel-8-2-sap-ha, o rhel-8-4-sap-ha.

Passaggi successivi

Per informazioni sull'utilizzo delle policy dell'agente per gestire Ops Agent, consulta le seguenti pagine: