Como criar jobs de patch

É possível usar o Gerenciamento de correções do SO para aplicar patches de sistema operacional em um grupo de instâncias de VM.

Para aplicar patches às VMs, siga estas etapas:

  1. Configure a VM.
  2. Execute um job de patch.

Antes de começar

Sistemas operacionais compatíveis

Para ver a lista completa de sistemas operacionais e versões compatíveis com o gerenciamento de correções do SO, consulte os detalhes do sistema operacional.

Como configurar a VM

Para usar o serviço Gerenciamento de correções do SO, siga estas instruções:

  1. Em todas as VMs, configure a API de serviço de configuração do SO e instale o agente desse sistema. Para mais detalhes, consulte Como configurar o SO.
  2. Para VMs do Windows, o Google recomenda desativar as atualizações automáticas nelas. Isso reduz os conflitos entre as atualizações automáticas do Windows e o serviço Gerenciamento de correções do SO.

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.

Por exemplo, para conceder acesso ao usuário para executar jobs de patch, use o seguinte comando:

gcloud projects add-iam-policy-binding project-id \
    --member user:user-id@gmail.com \
    --role roles/osconfig.patchJobExecutor

Substitua:

  • project-id: o ID do projeto.
  • user-id: o nome de usuário do G Suite.

Como executar jobs de patch

É possível executar um job de patch usando o Console do Google Cloud, a ferramenta de linha de comando gcloud ou a API Cloud OS Config.

Quando você executar um job de patch, a aplicação de patches das VMs será iniciada simultaneamente em todas as instâncias especificadas pelo filtro de instância.

Depois de iniciar um job de patch, é possível monitorar seus patches usando o painel do Gerenciamento de correções do SO. Depois que um job de patch é iniciado, leva cerca de 30 minutos para que os dados sejam preenchidos no painel.

console

  1. No Console do Google Cloud, acesse a página Gerenciamento de correções do SO.

    Acessar a página "Gerenciamento de Correções do SO"

  2. Clique em Nova implantação de patch.
  3. Na seção VMs de destino, selecione a zona que contém as VMs que você quer corrigir. Se preferir, selecione todas as zonas.

    Depois de fazer a seleção, é possível filtrar ainda mais as VMs dentro das zonas escolhidas.

    Por exemplo, para executar um job de patch para VMs localizadas em asia-east1-c e asia-east2-b que têm os seguintes filtros:

    • Prefixo de nome: test-
    • Rótulos: env=dev e app=web

    A seleção será semelhante a esta:

    Página do Gerenciamento de Correções do SO mostrando filtros de instância.

  4. Na seção Configurar patch, configure o patch.

    1. Especifique um Nome para seu patch.
    2. Selecione as atualizações necessárias para o sistema operacional. Para mais informações, consulte Configuração de patch.
  5. Na seção Programação, faça isto:

  6. Na seção Opções de lançamento de patch, configure as opções de lançamento:

    • Selecione se quer corrigir uma zona por vez ou várias zonas simultaneamente.
    • Defina um orçamento de interrupção. Um orçamento de interrupção é o número ou a porcentagem de VMs em uma zona que você quer que seja interrompida de uma só vez pelo processo de aplicação de patches.
  7. (Opcional) Na seção Opções avançadas, é possível concluir as seguintes tarefas:

  8. Clique em Implantar.

gcloud

Use o comando os-config patch-jobs execute para executar um job de patch. Substitua instance-filter pelo filtro de instância que você quer. Para mais informações sobre filtros de instância, consulte filtros de instância.

gcloud compute os-config patch-jobs execute instance-filter

Para mais informações sobre quais atualizações são aplicadas, consulte o que está incluído em um job de patch do SO. Para personalizar suas atualizações, use as sinalizações opcionais.

Exemplos

Exemplo 1: executar um job de patch com as seguintes configurações:

  • Nome da instância: instance-1
  • Zona: us-east1-b
  • Descrição: patch for instance-1

    Você executaria o seguinte comando:

gcloud compute os-config patch-jobs execute \
    --instance-filter-names="zones/us-east1-b/instances/instance-1" \
    --description "patch for instance-1"

Exemplo 2: suponha que você queira executar um job de patch de forma assíncrona com as seguintes configurações:

  • O patch precisa ser executado em todas as instâncias do projeto.
  • O job de patch precisa atingir o tempo limite e parar após 1 hora e 30 minutos.
  • As máquinas precisam ser reinicializadas com base nas configurações do sistema após a instalação das atualizações.
  • Em VMs que executam o Apt, a aplicação de patch é feita usando apt dist-upgrade.
  • Em VMs que executam o Windows, aplique somente os patches para a atualização KB4339284.
  • Em VMs que executam o Yum, a aplicação de patch é feita com o utilitário yum update-minimal --security.

Você executaria o seguinte comando:

gcloud compute os-config patch-jobs execute \
    --instance-filter-all \
    --duration="1h30m" --reboot-config="DEFAULT" \
    --apt-dist --windows-exclusive-patches=KB4339284 \
    --yum-minimal --yum-security \
    --async

API

Na API, crie uma solicitação POST para executar um novo job de patch. Você precisa definir explicitamente todos os campos de configuração obrigatórios, conforme descrito na documentação da API patchJobs.execute.

Para mais informações sobre quais atualizações são aplicadas, consulte o que está incluído em um job de patch do SO. Para personalizar suas atualizações, use os parâmetros PatchConfig.

Por exemplo, um job de patch com apenas os campos obrigatórios tem a seguinte aparência:

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

{
  "instanceFilter": instance-filter
}

Substitua:

  • project-id: o ID do projeto.
  • instance-filter: os parâmetros de filtro que você quer Para mais informações sobre filtros de instância, consulte filtros de instância.

Exemplos

Exemplo 1: suponha que você queira executar um job de patch em uma instância chamada instance1 localizada em us-east1-b. Neste exemplo, uma descrição foi adicionada e foi especificado que o job é executado por 1 hora e 30 minutos. Substitua project-id pelo ID do projeto.

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

{
  "description":"patch instance1 in us-east1-b",
  "duration":"5400s",
  "instanceFilter":{
    "instances":[
      "zones/us-east1-b/instances/instance1"
    ]
  }
}

Exemplo 2: o job de patch a seguir seleciona VMs com as seguintes configurações:

  • Ter os rótulos env=dev e app=web.
  • Estar em asia-east1-b ou asia-east1-c.
  • Ter o prefixo test-.

No seguinte comando, substitua project-id pelo ID do projeto:

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

{
  "instanceFilter":{
    "groupLabels":[
      {
        "labels":{
          "env":"dev",
          "app":"web"
        }
      }
    ],
    "instanceNamePrefixes":[
      "test-"
    ],
    "zones":[
      "asia-east1-b",
      "asia-east1-c"
    ]
  }
}

Exemplo 3:

Suponha que você queira executar um job de patch com as seguintes configurações:

  • O patch precisa ser executado em todas as instâncias do projeto.
  • O job de patch precisa atingir o tempo limite e parar após 1 hora e 30 minutos. A API exige que o tempo seja expresso em segundos, portanto, defina como 5.400 segundos.
  • As máquinas precisam ser reinicializadas com base nas configurações do sistema após a instalação das atualizações.
  • Em VMs que executam o Apt, a aplicação de patch é feita usando apt dist-upgrade.
  • Em VMs que executam o Windows, aplique somente os patches para a atualização KB4339284.
  • Em VMs que executam o Yum, a aplicação de patch é feita com o utilitário yum update-minimal --security.

Você criaria a seguinte solicitação:

No seguinte comando, substitua project-id pelo ID do projeto:

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

{
 "duration":"5400s",
 "instanceFilter":{
   "all":true
 },
 "patchConfig":{
   "rebootConfig":"DEFAULT",
   "apt":{
     "type":"DIST"
   },
   "yum":{
     "security":true,
     "minimal":true
   },
   "windowsUpdate":{
     "exclusivePatches":"KB4339284"
   }
 }
}

Filtros de instância

É possível especificar as instâncias a serem incluídas em um job de patch usando filtros. Os seguintes filtros são compatíveis com jobs de patch:

  • Filtrar por nome: limita o job de patch a instâncias com nomes específicos. Os nomes das instâncias precisam ser especificados usando o URI completo. Os formatos de URI compatíveis incluem os seguintes:

    • zones/zone/instances/instance-name
    • projects/project-id/zones/zone/instances/instance-name
    • https://www.googleapis.com/compute/v1/projects/project-id/zones/zone/instances/instance-name
  • Filtrar por prefixo de nome: limita o job de patch a instâncias com um prefixo específico no nome.

  • Filtrar por zona: limita o job de patch a instâncias em uma zona específica.

  • Filtrar por rótulo: limita o job de patch a instâncias com rótulos específicos.

Também é possível executar jobs de patch em todas as instâncias de um projeto definindo o campo all em instanceFilter como true. Para mais informações, consulte exemplos de filtros de instância.

Exemplos de filtros de instância

Cenário Filtro gcloud Filtro API
Todas as instâncias no projeto

--instance-filter-all

{
  "instanceFilter":{
    "all":"true"
  }
}
Uma instância com o nome instance1 localizada na zona us-east1-b.

--instance-filter-names="zones/us-east1-b/instances/instance1"

{
  "instanceFilter":{
    "instances":[
      "zones/us-east1-b/instances/instance1"
    ]
  }
}
Instâncias com o prefixo app-

--instance-filter-name-prefixes="app-"

{
  "instanceFilter":{
    "instanceNamePrefixes":[
      "app-"
    ]
  }
}
Instâncias nas zonas us-east1-b ou us-east1-c

--instance-filter-zones="us-east1-b","us-east1-c"

{
  "instanceFilter":{
    "zones":[
      "us-east1-b",
      "us-east1-c"
    ]
  }
}
Instâncias com o rótulo de combinação de env=dev e app=web, bem como instâncias com env=dev e app=worker.

--instance-filter-group-labels="env=dev,app=web"
--instance-filter-group-labels="env=dev,app=worker"

{
  "instanceFilter":{
    "groupLabels":[
      {
        "labels":{
          "env":"dev",
          "app":"web"
        }
      },
      {
        "labels":{
          "env":"dev",
          "app":"worker"
        }
      }
    ]
  }
}

Como combinar de filtros de instância

Os filtros de instância também podem ser combinados. Por exemplo, para executar um job de patch para instâncias que tenham o prefixo test-, localizadas na zona us-east1-c e que tenham os rótulos env=dev e app=web, execute o seguinte comando:

gcloud compute os-config patch-jobs execute \
    --instance-filter-name-prefixes="test-" \
    --instance-filter-zones="us-east1-c" \
    --instance-filter-group-labels="env=prod,app=web"

Configuração de patch

Ao executar um job de patch, é possível especificar parâmetros para controlar os patches aplicados à VM. Os parâmetros de configuração do patch dependem da plataforma e geralmente são transmitidos para as ferramentas de atualização do sistema subjacentes. Os patches reais são provenientes dos repositórios de pacotes (Linux) ou do servidor Windows Update (Windows) configurado na VM.

É possível especificar as seguintes configurações de patch para suas VMs:

  • No Windows, especifique a classificação dos patches a serem aplicados (por exemplo, Security e Critical) ou segmentar KBs específicos a serem excluídos. Para mais informações sobre a classificação de patches, consulte a documentação de suporte da Microsoft.
  • Para o RHEL e o CentOS, o sistema subjacente é yum. Para patches que visam essas VMs, é possível especificar os pacotes security e minimal. Também é possível excluir pacotes específicos. Para mais informações, consulte as páginas do manual de yum (em inglês).
  • Para o Debian e o Ubuntu, o sistema subjacente é apt. Para patches que visam essas VMs, é possível especificar dist-upgrade ou um upgrade padrão. Também é possível excluir pacotes específicos. Para mais informações, consulte as páginas do manual do Debian ou as páginas do manual do Ubuntu.
  • Para o SuSE, o sistema subjacente é zypper, especificamente usando patches zypper. Para patches que visam essas VMs, é possível especificar opções como:

    • with update: atualizar todos os pacotes não cobertos por patches
    • with optional: patches opcionais são tratados conforme necessário
    • As categorias ou gravidades dos patches a serem aplicadas

    Também é possível excluir patches específicos.

Opcionalmente, para todos os sistemas operacionais compatíveis, é possível optar por instalar patches aprovados apenas especificando essas atualizações. Isso permite que você insira uma lista de pacotes ou patches aprovados. Quando você seleciona esses patches aprovados, apenas os pacotes ou patches aprovados são instalados. Todos os outros parâmetros de configuração de patch são ignorados durante a atualização.

Exemplos

Console

  1. Siga as etapas descritas na guia do console para criar um job de patch ou uma implantação de patch.
  2. Na seção Configuração do patch, selecione os parâmetros do job de patch.

    Configuração de patch do SO mostrando campos de entrada.

  3. Faça as configurações adicionais necessárias para o job ou a implantação do patch.

  4. Clique em Implantar.

gcloud

Por exemplo, para executar um job de patch em todas as instâncias na zona northamerica-northeast1-a com configurações de patch específicas para diferentes sistemas operacionais, execute o comando gcloud compute os-config patch-jobs execute:

gcloud compute os-config patch-jobs execute \
    --instance-filter-zones="northamerica-northeast1-a" \
    --apt-dist \
    --yum-security \
    --yum-minimal \
    --zypper-categories=security \
    --windows-classifications=critical,security \
    --reboot-config=default

Para saber mais sobre as opções compatíveis, execute o seguinte comando:

gcloud compute os-config patch-jobs execute --help

API

Por exemplo, para executar um job de patch em todas as instâncias na zona northamerica-northeast1-a com configurações de patch específicas para diferentes sistemas operacionais, execute o seguinte comando:

POST https://osconfig.googleapis.com/v1/projects/project-id/patchJobs:execute
{
    "instanceFilter":{
        "zones":[
            "northamerica-northeast1-a"
        ]
    },
    "patchConfig":{
        "apt": {
            "type": "dist-upgrade"
        },
        "yum": {
            "security": true,
            "minimal": true
        },
        "zypper": {
            "categories": ["security"]
        },
        "windowsUpdate": {
            "classifications": ["CRITICAL", "SECURITY"]
        },
        "rebootConfig": "DEFAULT"
    }
}

Para saber mais sobre os parâmetros compatíveis, analise a documentação do PatchConfig API.

Janela de manutenção

Uma janela de manutenção consiste no tempo total de execução permitido de um job de patch. Os jobs de patch expiram se não forem concluídos de acordo com a janela de manutenção especificada.

Por exemplo, se você definir uma janela de manutenção de 60 minutes, nenhum novo job de patch será iniciado nos 60 minutos após o horário de início. Alguns processos, como download de um arquivo ou reinicialização, podem ocorrer fora dessa janela de manutenção. No entanto, nenhum novo job de patch será iniciado.

Opções de reinicialização

Ao executar um job de patch, é possível especificar as opções de reinicialização do patch. As seguintes opções estão disponíveis:

  • Padrão: o agente decide se uma reinicialização é necessária verificando sinais conhecidos em cada SO. Várias reinicializações podem ocorrer durante o patch e podem ocorrer antes da instalação dos patches.
  • Sempre: a máquina é reinicializada após a conclusão da atualização.
  • Nunca: a máquina não reinicia após a conclusão da atualização. Em alguns casos, isso pode significar que nem todos os patches são totalmente aplicados.

Scripts pré-patch e pós-patch

Ao executar um job de patch, é possível especificar scripts a serem executados como parte do processo de patch. Esses scripts são úteis para desempenhar tarefas como encerrar um aplicativo e realizar verificações de integridade.

  • Scripts pré-patch são executados antes de começar o patch. Caso seja necessário reinicializar o sistema antes de iniciar a aplicação do patch, o script pré-patch é executado antes da reinicialização.
  • Scripts pós-patch são executados depois da aplicação do patch. Caso seja necessário reinicializar o sistema como parte da aplicação do patch, o script pós-patch é executado depois da reinicialização.

Um job de patch é compatível com um script pré-patch e um pós-patch para Linux e para Windows. Os scripts do Linux e do Windows precisam ser fornecidos usando as sinalizações, os parâmetros ou as seções adequadas quando especificados na ferramenta de linha de comando gcloud, na API Cloud OS Config ou no Console do Google Cloud, respectivamente. Os scripts do Linux são executados apenas nas VMs do Linux, e os scripts do Windows são executados somente nas VMs do Windows.

Esses arquivos de script podem ser armazenados na VM ou em um bucket do Cloud Storage com controle de versões. Se o objeto do Cloud Storage não for acessível para leitura pública, verifique se a conta de serviço padrão do Compute Engine do projeto tem as permissões de IAM necessárias para ler objetos do Cloud Storage. Para garantir que você tenha as permissões corretas, verifique as configurações de permissão no objeto do Cloud Storage.

Se você quiser usar um bucket do Cloud Storage para armazenar seus scripts, crie um bucket do Cloud Storage e faça upload dos scripts para o bucket.

Exemplos

Console

  1. Siga as etapas descritas na guia do console para criar um job de patch ou uma implantação de patch.
  2. Na seção Opções avançadas, para as seções de pré-patch e pós-patch, clique em Procurar. Uma página de objeto do Cloud Storage é exibida.

    Página de Gerenciamento de correções do SO mostrando as seções de upload do script.

  3. Na página do objeto do Cloud Storage, selecione o bucket do Cloud Storage que contém o script e selecione o objeto ou arquivo do Cloud Storage.

  4. Faça as configurações adicionais necessárias para o job ou a implantação do patch.

  5. Clique em Implantar.

gcloud

Por exemplo, para executar um job de patch em todas as instâncias na zona northamerica-northeast1-a com script pré-patch e pós-patch para instâncias do Linux e do Windows, execute o seguinte comando:

gcloud compute os-config patch-jobs execute \
    --instance-filter-zones="northamerica-northeast1-a" \
    --async \
    --pre-patch-linux-executable="/tmp/pre_patch_script.sh" \
    --post-patch-linux-executable="gs://my-patch-scripts/linux/post_patch_script#1523477886880" \
    --pre-patch-windows-executable="C:\\Users\\user\\pre-patch-script.cmd" \
    --post-patch-windows-executable="gs://my-patch-scripts/windows/post_patch_script.ps1#135920493447"

Para mais informações sobre formatos de arquivo aceitáveis, execute o seguinte comando:

gcloud compute os-config patch-jobs execute --help

API

Por exemplo, para executar um job de patch em todas as instâncias na zona northamerica-northeast1-a com script pré-patch e pós-patch para instâncias do Linux e do Windows, execute o seguinte comando:

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

{
  "instanceFilter":{
    "zones":[
      "northamerica-northeast1-a"
    ]
  },
  "patchConfig":{
    "preStep":{
      "linuxExecStepConfig":{
        "localPath":"/tmp/pre_patch_script.sh"
      },
      "windowsExecStepConfig":{
        "interpreter":"SHELL",
        "localPath":"C:\\Users\\user\\pre-patch-script.cmd"
      }
    },
    "postStep":{
      "linuxExecStepConfig":{
        "gcsObject":{
          "bucket":"my-patch-scripts",
          "generationNumber":"1523477886880",
          "object":"linux/post_patch_script"
        }
      },
      "windowsExecStepConfig":{
        "gcsObject":{
          "bucket":"my-patch-scripts",
          "generationNumber":"135920493447",
          "object":"windows/post_patch_script.ps1"
        },
        "interpreter":"POWERSHELL"
      }
    }
  }
}

Para mais informações sobre formatos de arquivo aceitáveis, consulte a seção ExecStepConfig da documentação da API PatchConfig.

Opções de lançamento do patch

É possível escolher entre corrigir as VMs uma zona por vez (zona por zona) e corrigir todas as zonas de uma vez (zonas simultâneas).

Além de escolher o lançamento da zona, também é possível especificar um orçamento de interrupção de zona para as VMs.

Orçamento de interrupção da zona

Um orçamento de interrupção é o número máximo (ou porcentagem) de VMs por zona a ser interrompida em um determinado momento.

Quando uma VM é considerada interrompida?

Durante a aplicação de patches, uma VM é considerada interrompida a partir do momento em que o agente de configuração do SO é notificado para dar início ao processo até que as correções sejam concluídas. Esse tempo de interrupção inclui o tempo para concluir a reinicialização e todas as etapas pós-patch.

Uma VM também será contada como parte do orçamento de interrupção se atender a alguma das seguintes condições:

  • a operação de aplicação de patches falha durante o processo;
  • a operação de aplicação de patches falha ao executar etapas pré ou pós-patch;
  • a operação de aplicação de patches não responde com uma notificação de operação bem-sucedida antes do tempo limite.

Como funcionam os orçamentos de interrupção

Em relação aos lançamentos de zona por zona, se o orçamento de interrupção em uma zona for excedido, o job de patch será interrompido. Isso acontece porque seguir para a próxima zona exige a conclusão do processo de aplicações de patches na zona anterior.

Por exemplo, se o orçamento de interrupção tiver um valor de 10, e 8 VMs falharem nas correções na zona atual, o job de patch continuará a corrigir 2 VMs por vez até que o processo na zona seja concluído. Quando essa operação for bem-sucedida, a aplicação de patches começará com 10 VMs por vez na próxima zona. Se o processo falhar em 10 VMs na próxima zona, o job de patch será interrompido.

Exemplos

Console

  1. Siga as etapas descritas na guia do console para criar um job de patch ou uma implantação de patch.
  2. Na seção Opções de lançamento do patch, configure as opções do lançamento:
    • Selecione se quer corrigir uma zona por vez ou todas as zonas simultaneamente.
    • Defina o orçamento de interrupção. Um orçamento de interrupção é o número ou a porcentagem de VMs em uma zona que você quer que seja interrompida de uma só vez pelo processo de aplicação de patches.
  3. Faça as configurações adicionais necessárias para o job ou a implantação do patch.
  4. Clique em Implantar.

gcloud

Exemplo 1

Este exemplo mostra o comando os-config patch-jobs execute para executar um job de patch com as seguintes especificações:

  • Correção de todas as VMs no projeto
  • Correção de VMs zona por zona
  • Garantia de que, no máximo, 10 VMs na mesma zona serão interrompidas em um determinado momento
gcloud compute os-config patch-jobs execute \
   --instance-filter-all \
   --rollout-mode=zone-by-zone \
   --rollout-disruption-budget=10

Exemplo 2

Este exemplo mostra o comando os-config patch-jobs execute para executar um job de patch com as seguintes especificações:

  • Correção de todas as VMs no projeto
  • Correção de zonas simultaneamente
  • Garantia de que, no máximo, 50% das VMs na mesma zona serão interrompidas em um determinado momento
gcloud compute os-config patch-jobs execute \
   --instance-filter-all \
   --rollout-mode=concurrent-zones \
   --rollout-disruption-budget-percent=50

API

Este exemplo mostra o método patchJobs.execute para executar um job de patch com as seguintes especificações:

  • Correção de todas as VMs nas zonas us-central1-a, us-central1-c e us-central1-f
  • Correção de zonas simultaneamente
  • Garantia de que, no máximo, 25% das instâncias na mesma zona serão interrompidas em um determinado momento
POST https://osconfig.googleapis.com/v1/projects/project-id/patchJobs:execute

{
  "instanceFilter":{
    "zones":[
      "us-central1-a",
      "us-central1-c",
      "us-central1-f"
    ]
  },
  "rollout": {
    "disruptionBudget": {
      "percent": 25
    },
    "mode": "CONCURRENT_ZONES"
  }
}

Para saber mais sobre o lançamento de patches, consulte a documentação da API PatchRollout.

Como depurar um job de patch

Se o patch falhar, é possível usar as etapas a seguir para ajudar a encontrar e resolver os problemas.

  1. Analise os detalhes da instância para o job de patch afetado. Isso ajuda a identificar quais instâncias falharam ou em que estado elas estão travadas. A lista de detalhes da instância também contém uma breve mensagem de erro para cada instância.

    Se um patch falhar com um status de NO_AGENT_DETECTED, isso normalmente significa que o serviço enviou uma solicitação ao agente para iniciar a aplicação do patch, mas nunca recebeu uma resposta do agente. Analise as possíveis causas e correções a seguir:

    • A instância não está em execução. Para corrigir isso, inicie a instância de VM.
    • O serviço de Configuração do SO não está ativado. Para corrigir isso, consulte Como configurar sua VM.
    • O agente de Configuração do SO não está instalado ou não está em execução na instância. Para corrigir isso, consulte Como configurar sua VM.
    • As configurações de rede na instância não permitiam que o agente se comunicasse com o serviço. Verifique as configurações de rede.
  2. Se os detalhes da instância não fornecerem informações suficientes, analise os registros do Cloud Logging ou o console da porta serial. O agente de Configuração do SO grava suas entradas de registro em ambos os locais. No Cloud Logging, é possível filtrar usando o código do job de patch para ver todas as entradas de registro relacionadas a esse job de patch. Também é possível ativar a geração de registros de depuração definindo o valor de metadados osconfig-log-level=debug no nível da VM ou do projeto.

A seguir