Modificar reservas


Neste documento, explicamos como modificar uma reserva atual.

Para modificar uma reserva anexada a um compromisso, consulte Substituir reservas anexadas a compromissos.

Antes de começar

  • Revise os requisitos e restrições para reservas.
  • 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.

    Selecione a guia para como planeja usar as amostras nesta página:

    Console

    Quando você usa o console do Google Cloud para acessar os serviços e as APIs do Google Cloud, não é necessário configurar a autenticação.

    gcloud

    1. Instale a Google Cloud CLI e inicialize-a executando o seguinte comando:

      gcloud init
    2. Defina uma região e uma zona padrão.

    REST

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

      Instale a Google Cloud CLI e inicialize-a executando o seguinte comando:

      gcloud init

Funções exigidas

Para receber as permissões necessárias a fim de modificar reservas, peça ao administrador para conceder a você o papel do IAM de Administrador do Compute (roles/compute.admin) no projeto. Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.

Esse papel predefinido contém as permissões necessárias para modificar reservas. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As seguintes permissões são necessárias para modificar reservas:

  • Para modificar a opção de exclusão automática em uma reserva ou os projetos do consumidor em uma reserva compartilhada: compute.reservations.update no projeto
  • Para modificar o número de VMs em uma reserva: compute.reservations.resize no projeto

Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.

Modificar reservas

É possível fazer as seguintes alterações em uma reserva atual:

Para modificar outras propriedades em uma reserva que não está anexada a um compromisso, consulte Alterar outras propriedades em uma reserva neste documento.

Modificar a exclusão automática de uma reserva

É possível modificar quando o Compute Engine exclui automaticamente uma reserva atual seguindo um destes procedimentos:

  • Ative a opção de exclusão automática ou altere a data em que a reserva é excluída automaticamente.

  • Desativar a opção de exclusão automática.

Para modificar a exclusão automática de uma reserva, use o console do Google Cloud, a gcloud CLI ou o REST.

Console

Para modificar a exclusão automática de uma reserva, siga estas etapas:

  1. No console do Google Cloud, acesse a página Reservas.

    Acessar "Reservas"

  2. Na coluna Nome, clique no nome da reserva que você quer modificar.

    A página de detalhes da reserva adiantada selecionada é aberta.

  3. Na linha Horário da exclusão automática, clique em Editar o horário da exclusão automática.

  4. No painel Atualizar reserva, siga um destes procedimentos:

    • Para excluir a reserva em uma data e hora específicas, faça o seguinte:

      1. Se a opção de exclusão automática ainda não estiver ativada, clique no botão Ativar a exclusão automática para ativar a opção.

      2. No campo Horário da exclusão automática, insira uma data e hora em que o Compute Engine excluirá a reserva automaticamente.

    • Caso contrário, clique no botão de alternar Ativar exclusão automática para a posição desativada.

  5. Clique em Enviar.

    A modificação da reserva pode levar alguns segundos para ser concluída.

gcloud

Ao ativar a opção de exclusão automática em uma reserva, é possível especificar uma data e hora em que a reserva deve ser excluída ou um período após o qual ela deve ser excluída.

Para ativar a opção de exclusão automática ou alterar a data de exclusão da reserva, siga um destes procedimentos:

  • Para excluir a reserva em uma data e hora específicas, use o comando gcloud beta compute reservations update com a flag --delete-at-time.

    gcloud beta compute reservations update RESERVATION_NAME \
        --delete-at-time=DELETE_AT_TIME \
        --project=PROJECT_ID \
        --zone=ZONE
    

    Substitua:

    • RESERVATION_NAME: o nome de uma reserva.

    • DELETE_AT_TIME: data e hora formatadas como um carimbo de data/hora RFC 3339, que precisa ser assim:

      YYYY-MM-DDTHH:MM:SSOFFSET
      

      Substitua:

      • YYYY-MM-DD: uma data formatada como um ano de quatro dígitos, um mês de dois dígitos e um dia de dois dígitos, separados por hífens (-).

      • HH:MM:SS: um horário formatado como uma hora de dois dígitos usando um horário de 24 horas, minutos de dois dígitos e segundos de dois dígitos, separados por dois pontos (:).

      • OFFSET: o fuso horário formatado como um ajuste de Tempo Universal Coordenado (UTC). Por exemplo, para usar o horário padrão do Pacífico (PST), especifique -08:00. Outra possibilidade é não usar ajuste: especifique Z.

    • PROJECT_ID: o ID do projeto em que a reserva está.

    • ZONE: a zona em que está localizada a VM.

  • Para excluir a reserva após uma duração específica, use o comando gcloud beta compute reservations update com a flag --delete-after-duration.

    gcloud beta compute reservations update RESERVATION_NAME \
        --delete-after-duration=DELETE_AFTER_DURATION \
        --project=PROJECT_ID \
        --zone=ZONE
    

    Substitua:

    • RESERVATION_NAME: o nome de uma reserva.

    • DELETE_AFTER_DURATION: uma duração em dias, horas, minutos ou segundos antes da exclusão automática da reserva. Por exemplo, especifique 30m para 30 minutos ou 1d2h3m4s para 1 dia, 2 horas, 3 minutos e 4 segundos.

    • PROJECT_ID: o ID do projeto em que a reserva está.

    • ZONE: a zona em que está localizada a VM.

Para desativar a opção de exclusão automática, use o comando gcloud beta compute reservations update com a flag --disable-auto-delete.

gcloud beta compute reservations update RESERVATION_NAME \
    --disable-auto-delete \
    --project=PROJECT_ID \
    --zone=ZONE

Substitua:

  • RESERVATION_NAME: o nome de uma reserva.

  • PROJECT_ID: o ID do projeto em que a reserva está.

  • ZONE: a zona em que está localizada a VM.

REST

Ao ativar a opção de exclusão automática em uma reserva, é possível especificar uma data e hora em que a reserva deve ser excluída ou um período após o qual ela deve ser excluída.

Para ativar a opção de exclusão automática ou alterar a data de exclusão da reserva, siga um destes procedimentos:

  • Para excluir a reserva em uma data e hora específicas, faça uma solicitação PATCH para o método beta.reservations.update com o parâmetro de consulta paths definido como deleteAtTime.

    PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=deleteAtTime
    
    {
      "name": "RESERVATION_NAME",
      "deleteAtTime": "DELETE_AT_TIME"
    }
    

    Substitua:

    • PROJECT_ID: o ID do projeto em que a reserva está.

    • ZONE: a zona em que está localizada a VM.

    • RESERVATION_NAME: o nome de uma reserva.

    • DELETE_AT_TIME: data e hora formatadas como um carimbo de data/hora RFC 3339, que precisa ser assim:

      YYYY-MM-DDTHH:MM:SSOFFSET
      

      Substitua:

      • YYYY-MM-DD: uma data formatada como um ano de quatro dígitos, um mês de dois dígitos e um dia de dois dígitos, separados por hífens (-).

      • HH:MM:SS: um horário formatado como uma hora de dois dígitos usando um horário de 24 horas, minutos de dois dígitos e segundos de dois dígitos, separados por dois pontos (:).

      • OFFSET: o fuso horário formatado como um ajuste de Tempo Universal Coordenado (UTC). Por exemplo, para usar o horário padrão do Pacífico (PST), especifique -08:00. Outra possibilidade é não usar ajuste: especifique Z.

  • Para excluir a reserva após uma duração específica, faça uma solicitação PATCH para o método beta.reservations.update com o parâmetro de consulta paths definido como deleteAfterDuration.

    PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=deleteAfterDuration
    
    {
      "name": "RESERVATION_NAME",
      "deleteAfterDuration": {
        "seconds": "DELETE_AFTER_DURATION"
      }
    }
    

    Substitua:

    • PROJECT_ID: o ID do projeto em que a reserva está.

    • ZONE: a zona em que está localizada a VM.

    • RESERVATION_NAME: o nome de uma reserva.

    • DELETE_AFTER_DURATION: uma duração em segundos antes da exclusão automática da reserva. Por exemplo, especifique 86400 para 86.400 segundos (1 dia).

Para desativar a opção de exclusão automática, faça uma solicitação PATCH para o método beta.reservations.update. Na solicitação, especifique o parâmetro de consulta paths=deleteAtTime&paths=deleteAfterDuration e omita o corpo da solicitação.

PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=deleteAtTime&paths=deleteAfterDuration

Substitua:

  • PROJECT_ID: o ID do projeto em que a reserva está.

  • ZONE: a zona em que está localizada a VM.

  • RESERVATION_NAME: o nome de uma reserva.

Modificar os projetos do consumidor em uma reserva compartilhada

É possível modificar os projetos do consumidor em uma reserva compartilhada atual. Projetos do consumidor são projetos que são compartilhados com uma reserva compartilhada e que podem consumir a reserva.

Depois de modificar quais projetos de consumidor podem consumir uma reserva compartilhada, o consumo da reserva pode mudar. Por exemplo, qualquer projeto de consumidor removido deixa de consumir recursos da reserva. Além disso, se a reserva tiver sido configurada para ser consumida automaticamente por qualquer VM que corresponda às propriedades dela (o comportamento padrão), qualquer projeto de consumidor adicionado poderá começar a consumir os recursos dela. Para monitorar o consumo de uma reserva, confira como verificar o consumo de reservas.

Para modificar os projetos de consumidor que podem consumir uma reserva compartilhada, use o console do Google Cloud, a gcloud CLI ou o REST.

Console

Para modificar os projetos de consumidor de uma reserva compartilhada, siga estas etapas:

  1. No console do Google Cloud, acesse a página Reservas.

    Acessar "Reservas"

  2. Na coluna Nome, clique no nome da reserva que você quer descrever.

    A página de detalhes da reserva será exibida.

  3. Clique em Editar.

  4. Na seção Projetos selecionados, siga um destes procedimentos:

    • Para interromper o compartilhamento da reserva com um projeto de consumidor específico, clique em Excluir.

    • Para começar a compartilhar a reserva com um ou mais projetos específicos, faça o seguinte:

      1. Clique em Adicionar projetos.

      2. Marque a caixa de seleção de cada projeto na organização do projeto do proprietário com a qual você quer compartilhar a reserva.

      3. Clique em Selecionar.

  5. Para confirmar as mudanças, clique em Salvar.

    A modificação da reserva pode levar alguns segundos para ser concluída.

gcloud

Ao modificar os projetos de consumidor de uma reserva compartilhada, especifique uma lista separada por vírgulas de IDs de projetos que você quer permitir ou impedir que consumam a reserva compartilhada. Esses projetos precisam estar na mesma organização do projeto de proprietário. Não especifique o projeto proprietário na lista. Por padrão, é permitido consumir a reserva compartilhada.

Para modificar os projetos de consumidor de uma reserva compartilhada, selecione um dos seguintes métodos:

  • Para permitir que um ou mais projetos consumam uma reserva compartilhada, use o comando gcloud compute reservations update com a flag --add-share-with.

    gcloud compute reservations update RESERVATION_NAME \
        --project=PROJECT_ID \
        --add-share-with=CONSUMER_PROJECT_IDS \
        --zone=ZONE
    

    Substitua:

    • RESERVATION_NAME: o nome de uma reserva compartilhada atual.

    • PROJECT_ID: o ID do projeto proprietário, que é usado para criar a reserva compartilhada.

    • CONSUMER_PROJECT_IDS: uma lista separada por vírgulas de IDs de projetos com os quais a reserva deve ser compartilhada. Por exemplo, especifique project-1,project-2.

    • ZONE: a zona em que a reserva compartilhada está.

  • Para impedir que um ou mais projetos consumam uma reserva compartilhada, use o comando gcloud compute reservations update com a flag --remove-share-with.

    gcloud compute reservations update RESERVATION_NAME \
        --project=PROJECT_ID \
        --remove-share-with=CONSUMER_PROJECT_IDS \
        --zone=ZONE
    

    Substitua:

    • RESERVATION_NAME: o nome de uma reserva compartilhada atual.

    • PROJECT_ID: o ID do projeto proprietário, que é usado para criar a reserva compartilhada.

    • CONSUMER_PROJECT_IDS: uma lista separada por vírgulas de IDs de projetos com os quais você quer parar de compartilhar a reserva. Por exemplo, especifique project-1,project-2.

    • ZONE: a zona em que a reserva compartilhada está.

  • Para substituir a lista de projetos que podem consumir uma reserva compartilhada, use o comando gcloud compute reservations update com a sinalização --share-with.

    gcloud compute reservations update RESERVATION_NAME \
        --project=PROJECT_ID \
        --share-with=CONSUMER_PROJECT_IDS \
        --zone=ZONE
    

    Substitua:

    • RESERVATION_NAME: o nome de uma reserva compartilhada atual.

    • PROJECT_ID: o ID do projeto proprietário, que é usado para criar a reserva compartilhada.

    • ZONE: a zona em que a reserva compartilhada está.

    • CONSUMER_PROJECT_IDS: uma lista separada por vírgulas de IDs de projetos com os quais a reserva deve ser compartilhada. Por exemplo, especifique project-1,project-2.

REST

Ao modificar os projetos do consumidor de uma reserva compartilhada, é necessário especificar os IDs dos projetos que você quer permitir ou impedir de consumir a reserva compartilhada. Esses projetos precisam estar na mesma organização do projeto proprietário. Não especifique o projeto do proprietário. Por padrão, é permitido consumir a reserva compartilhada.

Para modificar os projetos de consumidor de uma reserva compartilhada, selecione um dos seguintes métodos:

  • Para permitir que um ou mais projetos consumam uma reserva compartilhada, faça uma solicitação PATCH para o método reservations.update. No URL da solicitação, inclua o parâmetro de consulta paths=shareSettings.projectMap.PROJECT_ID para cada projeto com que você quer compartilhar a reserva.

    Por exemplo, para permitir que dois projetos consumam uma reserva compartilhada, faça a seguinte solicitação PATCH:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=shareSettings.projectMap.CONSUMER_PROJECT_ID_1&paths=shareSettings.projectMap.CONSUMER_PROJECT_ID_2
    
    {
      "name": "RESERVATION_NAME",
      "shareSetting": {
        "projectMap": {
          "CONSUMER_PROJECT_ID_1": {
            "projectId": "CONSUMER_PROJECT_ID_1"
          },
          "CONSUMER_PROJECT_ID_2": {
            "projectId": "CONSUMER_PROJECT_ID_2"
          }
        }
      }
    }
    

    Substitua:

    • PROJECT_ID: o ID do projeto proprietário, que é usado para criar a reserva compartilhada.

    • ZONE: a zona em que a reserva compartilhada está.

    • RESERVATION_NAME: o nome de uma reserva compartilhada atual.

    • CONSUMER_PROJECT_ID_1 e CONSUMER_PROJECT_ID_2: os IDs de dois projetos com os quais você quer compartilhar a reserva.

  • Para impedir que um ou mais projetos consumam uma reserva compartilhada, faça uma solicitação PATCH para o método reservations.update. No URL da solicitação, inclua o parâmetro de consulta paths=shareSettings.projectMap.PROJECT_ID para cada projeto com que você quer parar de compartilhar a reserva. Além disso, omita o campo shareSetting do corpo da solicitação.

    Por exemplo, para impedir que dois projetos consumam uma reserva compartilhada, faça a seguinte solicitação PATCH:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=shareSettings.projectMap.CONSUMER_PROJECT_ID_1&paths=shareSettings.projectMap.CONSUMER_PROJECT_ID_2
    
    {
      "name": "RESERVATION_NAME"
    }
    

    Substitua:

    • PROJECT_ID: o ID do projeto proprietário, que é usado para criar a reserva compartilhada.

    • ZONE: a zona em que a reserva compartilhada está.

    • RESERVATION_NAME: o nome de uma reserva compartilhada atual.

    • CONSUMER_PROJECT_ID_1 e CONSUMER_PROJECT_ID_2: os IDs de dois projetos com os quais você quer parar de compartilhar a reserva.

Modificar o número de VMs reservadas em uma reserva

É possível modificar uma reserva atual para aumentar ou diminuir o número de VMs reservadas.

Antes de modificar o número de VMs reservadas em uma reserva, verifique o seguinte:

  • Se você quiser aumentar o número de VMs reservadas em uma reserva, as seguintes restrições se aplicarão:

    • É preciso que haja recursos suficientes na zona em que a reserva está localizada.

    • É preciso ter cota suficiente para os recursos adicionais que estão sendo reservados.

  • Se o tipo de consumo da reserva for específico e você quiser diminuir o número de VMs reservadas nela, verifique se o número de VMs que estão consumindo a reserva não excede o tamanho da reserva desejada. Para fazer isso, use os seguintes métodos:

    Caso contrário, você vai encontrar erros.

Para modificar o número de VMs reservadas em uma reserva, use o console do Google Cloud, a gcloud CLI ou o REST.

Console

Para modificar o número de VMs reservadas em uma reserva, siga estas etapas:

  1. No console do Google Cloud, acesse a página Reservas.

    Acessar "Reservas"

  2. Na coluna Nome, clique no nome da reserva que você quer modificar.

    A página de detalhes da reserva será exibida.

  3. Clique em Editar.

  4. No campo Número de instâncias de VM, insira o número atualizado de VMs a serem reservadas.

  5. Para confirmar, clique em Salvar.

    A modificação da reserva pode levar alguns segundos para ser concluída.

gcloud

Para modificar o número de VMs reservadas em uma reserva, use o comando gcloud compute reservations update.

gcloud compute reservations update RESERVATION_NAME \
    --project=PROJECT_ID \
    --vm-count=NUMBER_OF_VMS \
    --zone=ZONE

Substitua:

  • RESERVATION_NAME: o nome de um reserva atual.

  • PROJECT_ID: o ID do projeto em que a reserva está.

  • NUMBER_OF_VMS: o número de VMs a serem reservadas.

  • ZONE: a zona em que está localizada a VM.

REST

Para modificar o número de VMs reservadas em uma reserva, faça uma solicitação POST para o método reservations.resize.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME/resize

{
  "specificSkuCount": "NUMBER_OF_VMS"
}

Substitua:

  • PROJECT_ID: o ID do projeto em que a reserva está.

  • ZONE: a zona em que está localizada a VM.

  • RESERVATION_NAME: o nome de um reserva atual.

  • NUMBER_OF_VMS: o número de VMs a serem reservadas.

Mudar outras propriedades de uma reserva

Para alterar outras propriedades em uma reserva existente, faça o seguinte:

  1. Crie um novo projeto único ou uma reserva compartilhada com as propriedades atualizadas.

  2. Exclua a reserva existente.

Resolver problemas

Saiba como resolver problemas com atualizações de reserva.

A seguir