Gestisci job di applicazione patch

Dopo crea un job di applicazione patch, puoi usare le seguenti procedure per rivedere e gestire le tue patch:

Puoi gestire i job di patch utilizzando la console Google Cloud, la Google Cloud CLI o REST.

Prima di iniziare

  • Esamina le quote di OS Config.
  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione è la procedura mediante la quale la tua identità viene verificata per l'accesso alle API e ai servizi Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi eseguire l'autenticazione Compute Engine come segue.

    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

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

      Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      Per ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.

Autorizzazioni

I proprietari di un progetto hanno accesso completo per eseguire e gestire i job di applicazione patch. Dovrai concedere le autorizzazioni a tutti gli altri utenti. Puoi concedere uno dei seguenti ruoli granulari:

  • roles/osconfig.patchJobExecutor: contiene le autorizzazioni per eseguire, annullare, ottenere ed elenca i job di applicazione patch. Contiene anche le autorizzazioni per visualizzare i dettagli dell'istanza di un job di applicazione patch.
  • roles/osconfig.patchJobViewer: contiene le autorizzazioni per l'accesso di sola lettura per recuperare ed elencare i job di patch. Contiene anche le autorizzazioni per visualizzare i dettagli dell'istanza per un job di applicazione patch.

Elenca i job di applicazione patch

Visualizza un elenco di tutti i job attivi e completati.

console

  1. Nella console Google Cloud, vai alla pagina Compute Engine > Gestione VM > Patch.

    Vai alla pagina Patch

  2. Seleziona la scheda Job patch.

gcloud

Utilizza il comando os-config patch-jobs list per elencare i job di applicazione patch.

gcloud compute os-config patch-jobs list

Per Google Cloud CLI, l'output predefinito restituisce le 10 i job di applicazione patch, se completati o attivi. Puoi eseguire l'override di questa impostazione utilizzando il flag --limit.

L'output è simile al seguente:

ID                                          NAME    DESCRIPTION               CREATE_TIME               UPDATE_TIME               STATE                  TARGETED_INSTANCES
23b0815e-1c94-4dc6-91b1-30a6da395cb9                                          2019-11-05T20:22:54.150Z  2019-11-06T19:40:08.641Z  COMPLETED_WITH_ERRORS  4
4116ad72-bd57-4e48-94dc-7a577dc707b6                                          2019-08-23T20:36:03.068Z  2019-08-23T20:36:15.984Z  CANCELED               2
06856cbe-9a7b-498e-9105-9ae4eb566511                                          2019-08-12T20:27:38.410Z  2019-08-12T20:28:37.583Z  SUCCEEDED              1
04a15964-9eaa-4282-96f5-9cd535352cf6                                          2019-08-12T17:48:22.938Z  2019-08-12T17:48:42.274Z  SUCCEEDED              0
21dc1e06-deee-4e3a-821e-8082a32abde5                testing patch job reboot  2019-07-24T22:45:07.451Z  2019-07-25T00:44:44.459Z  TIMED_OUT              1

Puoi utilizzare altri flag per filtrare, ordinare e formattare la ricerca. Ad esempio, per filtrare l'output precedente in modo da elencare solo gli URI relativi alla job di applicazione patch con stato SUCCEEDED ordinati per ora di creazione e in ordine crescente, esegui questo comando:

gcloud compute os-config patch-jobs list \
   --filter="state=SUCCEEDED" \
   --sort-by="create_time" --uri

L'output è simile al seguente:

https://osconfig.googleapis.com/v1/projects/1234567/patchJobs/04a15964-9eaa-4282-96f5-9cd535352cf6
https://osconfig.googleapis.com/v1/projects/1234567/patchJobs/06856cbe-9a7b-498e-9105-9ae4eb566511

Per un elenco completo delle segnalazioni, consulta os-config patch-jobs list .

REST

Nell'API, crea una richiesta GET al metodo patchJobs.list. Sostituisci project-id con l'ID del tuo progetto.

GET https://osconfig.googleapis.com/v1/projects/project-id/patchJobs

Elenca tutti i dettagli delle istanze VM per uno specifico job di applicazione patch

Controlla lo stato del job di applicazione patch per l'elenco completo delle istanze VM che utilizzano la gestione delle patch del sistema operativo.

console

  1. Nella console Google Cloud, vai a Compute Engine > VM Manager > Pagina Patch.

    Vai alla pagina Patch

  2. Seleziona la scheda Job patch.
  3. Fai clic sul nome del job di patch che vuoi esaminare.
  4. Scorri verso il basso fino a Istanze VM aggiornate.

gcloud

Utilizza il comando os-config patch-jobs list-instance-details per elencare i dettagli di tutte le VM in un job di patch specifico. Sostituisci patch-job-id con l'ID del tuo job di patch.

gcloud compute os-config patch-jobs list-instance-details patch-job-id

Ad esempio, per visualizzare i dettagli di tutte le istanze che fanno parte del job di patch 23b0815e-1c94-4dc6-91b1-30a6da395cb9, esegui il seguente comando:

gcloud compute os-config patch-jobs list-instance-details 23b0815e-1c94-4dc6-91b1-30a6da395cb9

L'output è simile al seguente:

NAME                        ZONE           STATE      FAILURE_REASON
instance-1                  us-central1-a  SUCCEEDED
guest-policy-test-instance  us-east1-c     TIMED_OUT  Instance timed out while in state: APPLYING_PATCHES after PT1H2.225S
my-centos                   us-west1-b     SUCCEEDED
my-windows                  us-west1-b     FAILED     Error running pre-patch step: fork/exec /tmp/pre_patch_script.sh: no such file ..."

Puoi utilizzare più flag per filtrare, ordinare e formattare la ricerca. Ad esempio, per elencare i dettagli di tutte le VM non attive ordinate in ordine decrescente per nome dell'istanza, esegui il seguente comando. Sostituisci patch-job-id con l'ID del tuo job di applicazione patch.

gcloud compute os-config patch-jobs list-instance-details patch-job-id \
   --filter="state=INACTIVE" \
   --sort-by="~name"

Per un elenco completo delle segnalazioni, consulta os-config patch-jobs list-instance-details .

REST

Nell'API, crea una richiesta GET all'evento patchJobs.instanceDetails .

GET https://osconfig.googleapis.com/v1/projects/project-id/patchJobs/patch-job-id/instanceDetails

Sostituisci quanto segue:

  • project-id: l'ID del tuo progetto.
  • patch-job-id: ID job di applicazione patch.

Descrivi i job di applicazione patch

Esamina le informazioni dettagliate di un job di applicazione patch.

console

  1. Nella console Google Cloud, vai alla pagina Compute Engine > Gestione VM > Patch.

    Vai alla pagina Patch

  2. Seleziona la scheda Job patch.
  3. Fai clic sul nome del job di patch che vuoi esaminare.
  4. Esamina la sezione Aggiorna informazioni.

gcloud

Utilizza il comando os-config patch-jobs describe per descrivere un job di patch. Sostituisci patch-job-id con l'ID del job di patch.

gcloud compute os-config patch-jobs describe patch-job-id

Ad esempio, per visualizzare informazioni su job di applicazione patch 23b0815e-1c94-4dc6-91b1-30a6da395cb9, esegui questo comando:

gcloud compute os-config patch-jobs describe 23b0815e-1c94-4dc6-91b1-30a6da395cb9

L'output è simile al seguente:

createTime: '2019-11-05T20:22:54.150Z'
errorMessage: Completed with 2 instance failure(s).
filter: id=*
instanceDetailsSummary:
  instancesFailed: '1'
  instancesSucceeded: '2'
  instancesTimedOut: '1'
instanceFilter: {}
name: projects/1234567/patchJobs/23b0815e-1c94-4dc6-91b1-30a6da395cb9
patchConfig: {}
percentComplete: 100.0
state: COMPLETED_WITH_ERRORS
updateTime: '2019-11-06T19:40:08.641Z'

REST

Nell'API, crea una richiesta GET all'evento patchJobs.get.

GET https://osconfig.googleapis.com/v1/projects/project-id/patchJobs/patch-job-id

Sostituisci quanto segue:

  • project-id: l'ID del tuo progetto.
  • patch-job-id: ID job di applicazione patch.

Annulla job di applicazione patch

Quando annulli un job di applicazione patch, l'agente di configurazione del sistema operativo completa la sottoattività in esecuzione, ma non continua. La sottoattività fa riferimento a un'attività svolta dall'agente che non può essere interrotta.

Ad esempio, se il job di applicazione patch viene annullato durante il riavvio dell'istanza VM, il riavvio (e qualsiasi potenziale patch automatica post-riavvio) viene comunque eseguito il completamento, ma l'agente non avvia attività aggiuntive per il job di applicazione patch.

console

  1. Nella console Google Cloud, vai alla pagina Compute Engine > Gestione VM > Patch.

    Vai alla pagina Patch

    1. Seleziona la scheda Job patch.
    2. Espandi il menu Azioni per il job di patch che vuoi annullare.
    3. Seleziona Annulla.

gcloud

Utilizza la os-config patch-jobs cancel per annullare un job di applicazione patch. Sostituisci patch-job-id con l'ID del tuo job di applicazione patch.

gcloud compute os-config patch-jobs cancel patch-job-id

REST

Nell'API, crea una richiesta POST al metodo patchJobs.cancel.

POST https://osconfig.googleapis.com/v1/projects/project-id/patchJobs/patch-job-id:cancel

Sostituisci quanto segue:

  • project-id: l'ID del tuo progetto.
  • patch-job-id: ID job di applicazione patch.

Passaggi successivi