Se hai creato VM Compute Engine con l'Ops Agent installato durante la creazione o, in alcuni casi, se hai installato l'agente su VM esistenti utilizzando la console Google Cloud, Google Cloud ha creato anche criteri del sistema operativo VM Manager che installano e monitorano l'Ops Agent. Questo documento descrive come eseguire query su questi criteri del sistema operativo di Ops Agent e gestire l'agente Ops Agent sulle VM coperte dai criteri. Per informazioni sulla creazione di VM con Ops Agent installato automaticamente, consulta Installare Ops Agent durante la creazione della VM.
Dopo aver creato una norma del sistema operativo di Ops Agent, puoi:
- Determina quali VM sono coperte dal criterio.
- Determina quali zone sono coperte dalle norme.
- Estendere la copertura dei criteri alle VM esistenti.
- Disinstalla l'agente da una VM coperta dal criterio.
Trovare le VM coperte dai criteri del sistema operativo di Ops Agent
Puoi utilizzare la console Google Cloud o Google Cloud CLI per vedere quali VM del tuo progetto Google Cloud sono coperte dai criteri del sistema operativo di Ops Agent tramite un'assegnazione dei criteri del sistema operativo. Se ritieni che per una VM manchi la copertura, puoi risolvere il problema nel seguente modo:
- Verifica che una VM abbia un'etichetta del criterio del sistema operativo di Ops Agent.
- Verifica che l'implementazione di un'assegnazione delle policy del sistema operativo di Ops Agent sia andata a buon fine.
Verificare che un criterio del sistema operativo di Ops Agent sia assegnato alle VM in una zona
Per verificare che le VM in una zona siano coperte dal criterio del sistema operativo dell'agente Ops, utilizza la console Google Cloud o la gcloud CLI per vedere se la VM è correlata a un'assegnazione del criterio del sistema operativo dell'agente Ops.
Console
-
Nella console Google Cloud, vai alla pagina Criteri del sistema operativo:
Vai a Criteri del sistema operativo
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Compute Engine.
Nella scheda Istanze VM, seleziona la VM da controllare.
Se la VM è coperta da un criterio di sistema operativo di Ops Agent, la colonna ID criterio di sistema operativo include
goog-ops-agent-policy
e lo stato è "Conforme".
gcloud
Per visualizzare un elenco delle assegnazioni dei criteri del sistema operativo di Ops Agent in una zona, esegui il seguente comando:
gcloud compute os-config os-policy-assignment-reports list --location=ZONE --filter="ASSIGNMENT_ID ~ goog-ops-agent"
L'output mostra un elenco di VM con un'assegnazione di criteri OS di Ops Agent. Se l'Ops Agent è installato sulla VM, la colonna Riepilogo ha un valore "1/1 criteri conformi".
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
Verificare che una VM abbia un'etichetta del criterio OS di Ops Agent
Per vedere quali VM nel tuo progetto Google Cloud hanno l'etichetta del criterio del sistema operativo dell'agente operativo, goog-ops-agent-policy
, utilizza la console Google Cloud o la gcloud CLI.
Console
-
Nella console Google Cloud, vai alla pagina Istanze VM:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Compute Engine.
Seleziona il nome della VM.
Nel riquadro Informazioni di base, individua la voce Etichette.
Se la VM è coperta dal criterio del sistema operativo di Ops Agent, ha un'etichetta come
goog-ops-agent-policy:v2-x86-template-1-0-0
.
gcloud
Per visualizzare tutte le VM con l'etichetta del criterio del sistema operativo Ops Agentgoog-ops-agent-policy
, esegui il seguente comando:
gcloud compute instances list --format="table(name,zone,labels)" --filter="labels=goog-ops-agent-policy"
L'output mostra il nome, la zona e le etichette delle VM. Ad esempio:
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'}
Per verificare se una VM specifica ha l'etichetta del criterio del sistema operativo di Ops Agent, esegui il seguente comando:
gcloud compute instances describe --format "yaml(labels)" --zone=ZONE VM_NAME
L'output mostra un elenco di etichette per la VM. Se la VM ha
l'etichetta dei criteri del sistema operativo Ops Agent, goog-ops-agent-policy
viene visualizzata nell'elenco labels
. Ad esempio:
labels: goog-ops-agent-policy: v2-x86-template-1-0-0
Verificare che l'implementazione di un'assegnazione delle norme del sistema operativo dell'agente di gestione sia andata a buon fine
Visualizza le assegnazioni dei criteri del sistema operativo del progetto Google Cloud per verificare che un'assegnazione del criterio del sistema operativo di Ops Agent sia stata implementata correttamente in una zona specifica.
Console
-
Nella console Google Cloud, vai alla pagina Criteri del sistema operativo:
Vai a Criteri del sistema operativo
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Compute Engine.
Per visualizzare lo stato delle implementazioni dei criteri del sistema operativo, fai clic sulla scheda Assegnazioni dei criteri di sistema operativo.
Le assegnazioni dei criteri del sistema operativo dell'agente Ops hanno ID che iniziano con la stringa "goog-ops-agent". Se l'assegnazione è stata implementata correttamente, lo stato di implementazione è "Successo".
gcloud
Per visualizzare tutte le assegnazioni dei criteri del sistema operativo di Ops Agent in una zona, esegui il seguente comando:
gcloud compute os-config os-policy-assignments list --location=ZONE --filter="ASSIGNMENT_ID ~ goog-ops-agent"
L'output mostra un elenco di assegnazioni dei criteri del sistema operativo di Ops Agent in una zona. Se l'assegnazione è stata implementata correttamente, lo stato di implementazione è "SUCCEEDED". Ad esempio:
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
Per visualizzare i dettagli di un'assegnazione delle norme del sistema operativo di Ops Agent specifica, esegui il seguente comando:
gcloud compute os-config os-policy-assignments describe POLICY_ASSIGNMENT_ID --location=ZONE
Disinstalla l'Ops Agent sulle VM coperte dal criterio del sistema operativo dell'agente operativo
Se disinstalli manualmente l'agente operativo su una VM coperta dal criterio OS Ops Agent;agente operativo, il criterio lo reinstalla. Per disinstallare Ops Agent, devi prima rimuovere l'etichetta goog-ops-agent-policy
dalla VM. Dopo aver rimosso l'etichetta del criterio di sistema operativo di Ops Agent da una VM, puoi disinstallare Ops Agent definitivamente.
Disinstallare l'Ops Agent su una VM specifica
Per rimuovere il criterio e disinstallare l'Ops Agent da una VM specifica, puoi utilizzare la console Google Cloud o lgcloud CLI.
Console
-
Nella console Google Cloud, vai alla pagina Istanze VM:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Compute Engine.
Seleziona il nome della VM da modificare.
Fai clic su Modifica.
Vai alla sezione Etichette e fai clic su + Aggiungi etichette.
Individua l'etichetta con la chiave
goog-ops-agent-policy
e fai clic su Elimina elemento.
gcloud
Per rimuovere l'etichetta
goog-ops-agent-policy
da una VM, esegui il seguente comando:gcloud compute instances update VM_NAME \ --remove-labels=goog-ops-agent-policy
Disinstalla l'Ops Agent su tutte le VM
Per disinstallare Ops Agent dalle VM nella zona in cui è stato assegnato un criterio del sistema operativo di Ops Agent, utilizza lo script fornito da Cloud Monitoring. Non puoi disinstallare l'agente da un gruppo di VM utilizzando la console Google Cloud.
Per eseguire lo script, devi disporre del
ruolo Editor di GuestPolicy (roles/osconfig.guestPolicyEditor
).
Esegui il seguente script in Cloud Shell. Puoi fornire un numero qualsiasi di zone:
curl -sSO https://dl.google.com/cloudagents/undo-ops-agent-policies.sh bash undo-ops-agent-policies.sh ZONE1 ZONE2
Lo script esegue le seguenti attività in ogni zona:
- Trova tutti i criteri del sistema operativo di Ops Agent.
- Modifica ogni criterio in modo da disinstallare l'Ops Agent sulle VM coperte.
- Consente di eliminare il criterio del sistema operativo dell'agente operativo.
- Rimuove l'etichetta
goog-ops-agent-policy
da ogni VM coperta.
Aggiungere la copertura dei criteri del sistema operativo dell'agente operativo a una VM esistente
Il criterio del sistema operativo di Ops Agent riguarda solo le VM con l'etichetta goog-ops-agent-policy
e che si trovano nella stessa zona di un'assegnazione esistente del criterio del sistema operativo di Ops Agent. Tuttavia, puoi estendere la copertura ad altre VM
che sono state create senza il criterio OS di Ops Agent
assegnato.
Per estendere la copertura dei criteri a una VM, devi conoscere la versione del modello dell'assegnazione dei criteri del sistema operativo di Ops Agent nella tua zona. Se la tua zona ha più assegnazioni delle policy del sistema operativo di Ops Agent, individua l'assegnazione con la versione più recente del modello. Per visualizzare un elenco delle assegnazioni dei criteri del sistema operativo di Ops Agent in una zona, esegui il seguente comando:
gcloud compute os-config os-policy-assignments list --location=ZONE --filter="ASSIGNMENT_ID ~ goog-ops-agent"
Per estendere la copertura dei criteri ad altre VM, utilizza la console Google Cloud o lgcloud CLI:
Console
-
Nella console Google Cloud, vai alla pagina Istanze VM:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Compute Engine.
Nell'elenco Istanze VM, seleziona le caselle di controllo accanto alle VM da etichettare e poi fai clic su Etichette.
Per aggiungere etichette, fai clic su + Aggiungi etichetta e aggiungi la coppia chiave-valore. La chiave deve essere
goog-ops-agent-policy
e il valore è la versione del modello che ti interessa, ad esempio1-0-0
.Salva le modifiche.
gcloud
Per estendere la copertura dei criteri a una VM senza copertura, esegui i seguenti comandi:
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
Autorizzazione
L'installazione di Ops Agent utilizza VM Manager e richiede le autorizzazioni per attivare l'API VM Manager e creare un criterio. Tutte le autorizzazioni obbligatorie sono disponibili tramite il ruolo Editor (roles/Editor
). In alternativa, puoi chiedere a un amministratore del progetto di concedere le autorizzazioni minime utilizzando Google Cloud CLI.
Autorizzazioni richieste per l'installazione di Ops Agent durante la creazione della VM:
serviceusage.services.get
serviceusage.services.enable
osconfig.osPolicyAssignments.get
osconfig.osPolicyAssignments.create
osconfig.projectBillingConfigs.update
compute.instances.create
Autorizzazioni richieste per installare Ops Agent sulle VM esistenti:
serviceusage.services.get
serviceusage.services.enable
osconfig.osPolicyAssignments.get
osconfig.osPolicyAssignments.create
osconfig.projectBillingConfigs.update
compute.instances.setMetadata
compute.instances.setLabels
Puoi trovare i ruoli corrispondenti che forniscono queste autorizzazioni nel riferimento ai ruoli di base e predefiniti IAM, con l'eccezione dell'autorizzazione osconfig.projectBillingConfigs.update
. Questa
autorizzazione è inclusa nel ruolo osconfig.projectBillingConfig
. Questo ruolo non è disponibile nella console Google Cloud, ma può essere concesso tramite gcloud CLI.
Comandi di esempio per concedere i ruoli per le autorizzazioni:
gcloud projects add-iam-policy-binding project-id --member='user:user-email' --role='roles/osconfig.projectBillingConfigEditor'