Verificando a configuração do VM Manager

Use este documento para verificar se o VM Manager está configurado corretamente. Para obter informações sobre como configurar o VM Manager, consulte Configurar o VM Manager .

Para verificar a configuração, você pode usar o comando de solução de problemas ou realizar verificações manuais na instância da máquina virtual (VM).

Antes de começar

  • Para VMs do Windows, use o PowerShell 3.0 ou posterior .
  • Se ainda não o fez, configure a autenticação. Autenticação é o processo pelo qual sua identidade é verificada para acesso a Google Cloud serviços e APIs. Para executar códigos ou amostras em um ambiente de desenvolvimento local, você pode se autenticar 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. After installing the Google Cloud CLI, initialize it by running the following command:

      gcloud init

      If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

    2. Set a default region and zone.

Use o comando de solução de problemas

Use o comando os-config troubleshoot para verificar a configuração. Se alguma das verificações falhar, você receberá feedback sobre como corrigir o problema.

gcloud compute os-config troubleshoot VM_NAME \
   --zone=ZONE

Substitua o seguinte:

  • VM_NAME : o nome da instância de VM que você deseja solucionar
  • ZONE : a zona onde a instância está localizada

Exemplos

  • Exemplo 1: mostra a saída do comando os-config troubleshoot quando a instância de VM apresenta problemas com a configuração
  • Exemplo 2: mostra a saída do comando os-config troubleshoot quando a instância de VM está configurada corretamente

Exemplo 1

Para solucionar problemas de uma instância de VM chamada my-instance-1 na zona asia-east2-b , execute o seguinte:

gcloud compute os-config troubleshoot my-instance-1 \
    --zone=asia-east2-b

A saída é semelhante à seguinte:

OS Config troubleshooter tool is checking if there are issues with the
VM Manager setup for this VM instance.

> Is the OS Config API enabled? Yes
> Is the OS Config agent enabled? Yes
> Is the OS Config agent up to date? No

The version of OS Config agent running on this VM instance is not the
latest version.
See https://cloud.google.com/compute/docs/manage-os/upgrade-vm-manager#update-agent
on how to update the agent.

Exemplo 2

Para solucionar problemas de uma instância de VM chamada my-instance-2 na zona us-west1-b , execute o seguinte:

gcloud compute os-config troubleshoot my-instance-2 \
    --zone=us-west1-b

A saída é semelhante à seguinte:

OS Config troubleshooter tool is checking if there are issues with the
VM Manager setup for this VM instance.

> Is the OS Config API enabled? Yes
> Is the OS Config agent enabled? Yes
> Is the OS Config agent up to date? Yes
> Is a service account present on the instance? Yes
> Is the OS Config Service account present for this instance? Yes
> Does this instance have a public IP or Private Google Access? Yes
This instance has a public IP.

Verificação manual

Para verificar manualmente se o VM Manager está configurado corretamente, conclua as seguintes verificações:

Se o VM Manager estiver configurado corretamente, mas você ainda tiver problemas, consulte Solução de problemas do VM Manager .

Verifique se a API OS Config está habilitada

No seu projeto do Google Cloud, verifique se a API está ativada.

Console

No console do Google Cloud, acesse a página da API OS Config .

Vá para API de configuração do sistema operacional

gcloud

gcloud services list --enabled

Se a API estiver habilitada, a saída será semelhante a esta:

osconfig.googleapis.com              OS Config API

Se a API não estiver habilitada, habilite a API OS Config .

Verifique se os metadados estão habilitados

Linux

Para metadados do projeto, na VM, conclua as seguintes etapas:

  1. Consulte o endpoint dos atributos do projeto:

    curl "http://metadata.google.internal/computeMetadata/v1/project/attributes/" \
    -H "Metadata-Flavor: Google"
    

    Se o valor de metadados do agente for definido, a saída será semelhante a esta:

    enable-osconfig
    
  2. Se o valor enable-osconfig for exibido, consulte o endpoint:

    curl "http://metadata.google.internal/computeMetadata/v1/project/attributes/enable-osconfig" \
    -H "Metadata-Flavor: Google"

    Se habilitado, o endpoint retornará TRUE .

Se os metadados não estiverem habilitados, habilite os metadados de configuração do sistema operacional .

Windows

Para metadados do projeto, em uma VM, abra um terminal do PowerShell como administrador e execute o seguinte comando:

  1. Consulte o endpoint dos atributos do projeto:

    $value = (Invoke-RestMethod `
             -Headers @{'Metadata-Flavor' = 'Google'} `
             -Uri "http://metadata.google.internal/computeMetadata/v1/project/attributes/")
    $value
    

    Se o valor de metadados do agente for definido, a saída será semelhante a esta:

    enable-osconfig
    
  2. Se o valor enable-osconfig for exibido, consulte o endpoint:

    $value = (Invoke-RestMethod `
             -Headers @{'Metadata-Flavor' = 'Google'} `
             -Uri "http://metadata.google.internal/computeMetadata/v1/project/attributes/enable-osconfig")
    $value
    

    Se habilitado, o endpoint retornará TRUE .

Se os metadados não estiverem habilitados, habilite os metadados de configuração do sistema operacional .

Verifique se o agente de configuração do sistema operacional está instalado e em execução

Linux

Para verificar se sua VM Linux tem o agente instalado, execute o seguinte comando:

sudo systemctl status google-osconfig-agent

Se o agente estiver instalado e em execução, a saída será semelhante a esta:

google-osconfig-agent.service - Google OSConfig Agent
Loaded: loaded (/lib/systemd/system/google-osconfig-agent.service; enabled; vendor preset:
Active: active (running) since Wed 2020-01-15 00:14:22 UTC; 6min ago
Main PID: 369 (google_osconfig)
 Tasks: 8 (limit: 4374)
Memory: 102.7M
CGroup: /system.slice/google-osconfig-agent.service
        └─369 /usr/bin/google_osconfig_agent

Se o agente não estiver instalado, instale o agente de configuração do SO .

Windows

Para verificar se sua VM do Windows tem o agente instalado, execute o seguinte comando:

PowerShell Get-Service google_osconfig_agent

Se o agente estiver instalado e em execução, a saída será semelhante a esta:

Status   Name               DisplayName
------   ----               -----------
Running  google_osconfig... Google OSConfig Agent

Se o agente não estiver instalado, instale o agente de configuração do SO .

Verifique se a conta de serviço está habilitada

Para obter informações sobre os requisitos da conta de serviço, consulte Visão geral da configuração .

Linux

Na VM, execute o seguinte:

curl "http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/" \
-H "Metadata-Flavor: Google"

A saída deve incluir pelo menos a conta de serviço padrão.

default/

Windows

Na VM, abra um terminal PowerShell como administrador e execute o seguinte comando:

$value = (Invoke-RestMethod `
         -Headers @{'Metadata-Flavor' = 'Google'} `
         -Uri "http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/")
$value

A saída deve incluir pelo menos a conta de serviço padrão.

default/

Verifique se a VM pode se comunicar com a API OS Config

Para verificar se a VM pode se comunicar com a API OS Config, execute o seguinte comando em sua VM Linux ou Windows:

ping osconfig.googleapis.com

Para interromper o ping da API OS Config, pressione Control + C .

Se sua VM estiver em execução em uma rede VPC privada e não tiver acesso público à Internet, verifique se você ativou o Acesso privado do Google .

Depois de ativar o Acesso privado do Google, verifique se a VM consegue se comunicar com a API OS Config.

Linux

Na VM, execute o seguinte:

 curl --ssl 'https://osconfig.googleapis.com/$discovery/rest' | head

Se a VM puder se comunicar com a API OS Config, a saída do comando será semelhante a esta:

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                             Dload  Upload   Total   Spent    Left  Speed
0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0{
"discoveryVersion": "v1",
"baseUrl": "https://osconfig.googleapis.com/",
"ownerName": "Google",
"version": "v1beta",
"schemas": {
  "GooSettings": {
    "description": "Googet patching is performed by running `googet update`.",
    "properties": {},
    "id": "GooSettings",
100  9569    0  9569    0     0   198k      0 --:--:-- --:--:-- --:--:--  198k

Windows

Na VM, abra um terminal do PowerShell como administrador e execute o seguinte:

 Invoke-RestMethod  -Headers @{'Metadata-Flavor' = 'Google'}
 -Uri 'https://osconfig.googleapis.com/$discovery/rest'

O que vem a seguir?