Como gerenciar políticas de convidado (legado)

Depois de criar uma política de convidado, será possível usar os procedimentos a seguir para revisar e gerenciar as políticas:

Como o agente de configuração do SO é executado a cada 10-15 minutos, quando você configura uma atualização ou exclusão de uma política, ela leva cerca de 10 a 15 minutos para entrar em vigor.

É possível gerenciar suas políticas de convidado usando a CLI do Google Cloud ou a REST.

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 da seguinte maneira.

    Select the tab for how you plan to use the samples on this page:

    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.

Como atualizar políticas de convidado

Para atualizar uma política de convidado, siga estas etapas:

  1. Atualize o arquivo YAML ou JSON.
  2. Execute um comando update ou patch. O processo de atualização é semelhante ao processo de criação, com a adição de suporte para ETags que permitem controle de simultaneidade e consistência.

gcloud

Use o comando os-config guest-policies update para atualizar uma política de convidado.

gcloud beta compute os-config guest-policies update POLICY_ID \
     --file=FILE

Substitua:

  • POLICY_ID: o nome da política de convidado que você quer atualizar.
  • FILE: o arquivo JSON ou YAML que contém as especificações de política de convidado atualizadas.

REST

Na API, crie uma solicitação PATCH para o método projects.guestPolicies.patch.

PATCH https://osconfig.googleapis.com/v1beta/projects/PROJECT_ID/guestPolicies/POLICY_ID

{
  For more information, see Guest policy JSON
}

Substitua:

  • PROJECT_ID: o ID do projeto.
  • POLICY_ID: o nome da sua política de convidado.

Como descrever uma política de convidado

gcloud

Para visualizar detalhes sobre uma política de convidado, use o comando os-config guest-policies describe. Substitua POLICY_ID pelo nome da política de convidado que você quer descrever.

gcloud beta compute os-config guest-policies describe POLICY_ID

REST

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

GET https://osconfig.googleapis.com/v1beta/projects/PROJECT_ID/guestPolicies/POLICY_ID

Substitua:

  • PROJECT_ID: o ID do projeto.
  • POLICY_ID: o nome da sua política de convidado.

Listar políticas de convidado

gcloud

Para visualizar uma lista de políticas de convidado no projeto, use o comando os-config guest-policies list.

gcloud beta compute os-config guest-policies list

REST

Na API, crie uma solicitação GET para o método projects.guestPolicies.list. Substitua PROJECT_ID pelo ID do projeto.

GET https://osconfig.googleapis.com/v1beta/projects/PROJECT_ID/guestPolicies

Como excluir políticas de convidado

Quando o agente de Configuração do SO detecta que a exclusão de uma política de convidado é acionada, o estado atual do sistema é mantido, mas nenhuma outra manutenção é feita. Por exemplo, digamos que você tenha uma política de convidado package-update-zone2b configurada que instale um pacote my-package em todas as VMs na zona us-west2-b e mantenha o pacote UPDATED.

Se você excluir a política package-update-zone2b, ocorrerão as seguintes alterações:

  • Todas as VMs em us-west2-b com my-package instalado manterão o my-package instalado. Não há reversão do estado atual do sistema.
  • Em todas as execuções futuras do agente de Configuração do SO, após a exclusão da política, ocorrerá o seguinte:

    • Se uma nova VM for adicionada a us-west2-b, my-package não será instalado nesta nova VM.
    • Para instâncias com my-package instalado, o pacote não é atualizado.

gcloud

Para excluir uma política de convidado, use o comando os-config guest-policies delete. Substitua POLICY_ID pelo nome da política de convidado que você quer excluir.

gcloud beta compute os-config guest-policies delete POLICY_ID

REST

Na API, crie uma solicitação DELETE para o método projects.guestPolicies.delete.

DELETE https://osconfig.googleapis.com/v1beta/projects/PROJECT_ID/guestPolicies/POLICY_ID

Substitua:

  • PROJECT_ID: o ID do projeto.
  • POLICY_ID: o nome da sua política de convidado.

Conferir as configurações de uma instância de VM

gcloud

Para conferir as políticas aplicadas a uma única instância de VM, use o comando os-config guest-policies lookup.

gcloud beta compute os-config guest-policies lookup VM_NAME \
    --zone=ZONE

Substitua:

  • VM_NAME: o nome da instância de VM.
  • ZONE: a zona da instância de VM

REST

Para conferir as políticas aplicadas a uma única instância de VM, use a solicitação de POST a seguir.

POST https://osconfig.googleapis.com/v1beta/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME:lookupEffectiveGuestPolicy

Substitua:

  • PROJECT_ID: o ID do projeto.
  • ZONE: a zona da instância de VM
  • VM_NAME: o nome da instância de VM.

Solução de problemas

Inspecionar políticas de convidado

Use o console do Google Cloud ou a Google Cloud CLI para inspecionar as políticas de convidado associadas ao projeto.

Console

  1. No console do Google Cloud, acesse a página Políticas de convidado do SO.

    Acessar a página "Políticas de convidado do SO"

  2. Selecione a política de convidado que você quer inspecionar e clique em VER DETALHES.

gcloud

  1. Use o comando os-config guest-policies list para listar todas as políticas de convidado.

    gcloud beta compute os-config guest-policies list
    
  2. Na lista de políticas de convidado, copie os IDs das políticas de convidado que você quer inspecionar e execute o comando para inspecionar cada uma delas. Substitua POLICY_ID pelo ID da política que você quer analisar.

    gcloud beta compute os-config guest-policies describe POLICY_ID
    

Inspecionar políticas de convidado para uma VM específica

É possível executar o comando lookup para uma determinada VM para conferir quais configurações se aplicam a ela.

Nos casos em que uma instância de VM não estiver aplicando os requisitos da política de convidado conforme esperado, inspecione a lista de políticas de convidado que tenham atribuições que incluam essa instância de VM específica. Isso ajuda a determinar se o campo Assignment na política de convidado corresponde a essa VM específica.

Use o comando os-config guest-policies lookup para listar as políticas de convidado que podem estar segmentando uma determinada VM. Substitua VM_NAME pelo nome da VM a ser inspecionada.

gcloud beta compute os-config guest-policies lookup VM_NAME

Para mais informações, consulte Como visualizar configurações de uma instância de VM.

A saída do comando pode revelar que a VM não está realmente segmentada nas propriedades de atribuição de VM da política de convidado. Por exemplo, talvez ela não esteja listada na lista de Labels ou na lista de prefixos de nome de VM.

Como se recuperar de falhas

Uma instalação de receita de software com falha não é repetida. Isso ocorre porque o sistema não sabe em que estado ficou o roteiro do software com falha.

Ao depurar roteiros de software com falha, recomendamos as seguintes etapas:

  1. Renomeie a receita de software.
  2. Exclua e recrie a política de convidado usando a receita de software renomeada.

Para mais etapas de solução de problemas, consulte Solução de problemas do VM Manager.

A seguir