Gerenciar jobs de patch

Depois de criar um job de patch, será possível usar os seguintes procedimentos para revisar e gerenciar seus patches:

É possível gerenciar seus jobs de patch usando o console do Google Cloud, a Google Cloud CLI ou a REST de dois minutos.

Antes de começar

  • Revise as cotas de configuração do SO.
  • Configure a autenticação, caso ainda não tenha feito isso. A autenticação é o processo de verificação da sua identidade para acesso a serviços e APIs do Google Cloud. Para executar códigos ou amostras de um ambiente de desenvolvimento local, autentique-se no Compute Engine selecionando uma das seguintes opções:

    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

      Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.

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

        gcloud init

      Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.

Permissões

Os proprietários de um projeto têm acesso total para executar e gerenciar jobs de patch. Para todos os outros usuários, você precisa conceder permissões. É possível conceder uma das seguintes funções granulares:

  • roles/osconfig.patchJobExecutor contém permissões para executar, cancelar, receber e listar jobs de patch. Ele também contém permissões para visualizar detalhes da instância de um job de patch.
  • roles/osconfig.patchJobViewer contém permissões para acesso somente leitura para receber e listar jobs de patch. Ele também contém permissões para visualizar detalhes da instância de um job de patch.

Listar jobs de patch

Veja uma lista de todos os jobs ativos ou concluídos.

Console

  1. No console do Google Cloud, acesse a página Compute Engine > VM Manager > Patch.

    Acesse a página "Patch"

  2. Selecione a guia Jobs de patch.

gcloud

Use o comando os-config patch-jobs list para listar jobs de patch.

gcloud compute os-config patch-jobs list

Para a CLI do Google Cloud, a saída padrão retorna os 10 jobs de patch mais recentes, estejam eles concluídos ou ativos. Para modificar essa configuração, use a sinalização --limit.

A saída será assim:

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

É possível usar mais sinalizações para filtrar, organizar e formatar a pesquisa. Por exemplo, para filtrar a saída acima e listar apenas os URIs dos jobs de patch com status SUCCEEDED classificados pela data/hora de criação e em ordem crescente, execute este comando:

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

A saída será assim:

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

Para ver uma lista completa de sinalizações, revise o comando os-config patch-jobs list.

REST

Na API, crie uma solicitação GET para o método patchJobs.list. Substitua project-id pelo ID do projeto.

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

Listar todos os detalhes da instância de VM de um job de patch específico

Revise o status do job de patch para ter acesso à lista completa de instâncias de VM que usam o Gerenciamento de correções do SO.

Console

  1. No console do Google Cloud, acesse a página Compute Engine > VM Manager > Patch.

    Acesse a página "Patch"

  2. Selecione a guia Jobs de patch.
  3. Clique no nome do job de patch que você quer revisar.
  4. Role para baixo até Instâncias de VM atualizadas.

gcloud

Use o comando os-config patch-jobs list-instance-details para listar os detalhes de todas as VMs em um job de patch específico. Substitua patch-job-id pelo ID do job de patch.

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

Por exemplo, para ver os detalhes de todas as instâncias que fazem parte do job de patch 23b0815e-1c94-4dc6-91b1-30a6da395cb9, execute este comando:

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

A saída será assim:

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 ..."

É possível usar mais sinalizações para filtrar, organizar e formatar a pesquisa. Por exemplo, para listar detalhes de todas as VMs inativas classificadas por nome de instância em ordem decrescente, execute o comando visto a seguir. Substitua patch-job-id pelo ID do job de patch.

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

Para ver uma lista completa de sinalizações, revise o comando os-config patch-jobs list-instance-details.

REST

Na API, crie uma solicitação GET para o método patchJobs.instanceDetails.

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

Substitua:

  • project-id: o ID do projeto.
  • patch-job-id: o ID do job de patch.

Descrever jobs de patch

Revise as informações detalhadas de um job de patch.

Console

  1. No console do Google Cloud, acesse a página Compute Engine > VM Manager > Patch.

    Acesse a página "Patch"

  2. Selecione a guia Jobs de patch.
  3. Clique no nome do job de patch que você quer revisar.
  4. Revise a seção Atualizar informações.

gcloud

Use o comando os-config patch-jobs describe para descrever um job de patch. Substitua patch-job-id pelo ID do job de patch.

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

Por exemplo, para ver informações sobre o job de patch 23b0815e-1c94-4dc6-91b1-30a6da395cb9, execute este comando:

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

A saída será assim:

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

Na API, crie uma solicitação GET para o método patchJobs.get.

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

Substitua:

  • project-id: o ID do projeto.
  • patch-job-id: o ID do job de patch.

Cancelar jobs de patch

Ao cancelar um job de patch, o agente de configuração do SO conclui a subtarefa em que está, mas não continua depois disso. Uma subtarefa é uma tarefa realizada pelo agente que não pode ser interrompida.

Por exemplo, se o job de patch for cancelado enquanto a instância de VM estiver sendo reinicializada, o processo de reinicialização (e qualquer patch automático pós-reinicialização) continuará a ser executado até ser concluído, mas o agente não iniciará outras tarefas para esse job de patch.

Console

  1. No console do Google Cloud, acesse a página Compute Engine > VM Manager > Patch.

    Acesse a página "Patch"

    1. Selecione a guia Jobs de patch.
    2. Abra o menu Ações do job de patch que você quer cancelar.
    3. Selecione Cancelar.

gcloud

Use o comando os-config patch-jobs cancel para cancelar um job de patch. Substitua patch-job-id pelo ID do job de patch.

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

REST

Na API, crie uma solicitação POST para o método patchJobs.cancel.

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

Substitua:

  • project-id: o ID do projeto.
  • patch-job-id: o ID do job de patch.

A seguir