Crie solicitações de reserva futuras compartilhadas


Este documento explica como criar solicitações de reservas futuras compartilhadas.

Se Google Cloud aprova sua solicitação de reserva futura compartilhada e, no horário de início especificado na solicitação, o Compute Engine cria automaticamente reservas que são compartilhadas entre vários projetos. Estas reservas partilhadas criadas automaticamente são consumidas por VMs correspondentes e reservas existentes no projeto que acolhe a reserva futura (projeto proprietário) e os projetos com os quais a reserva futura é partilhada (projetos de consumo). Para obter mais informações sobre como as reservas compartilhadas criadas automaticamente funcionam e podem ser consumidas, consulte Criar reservas compartilhadas .

Antes de começar

  • Se você ainda não o fez:
  • 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.
    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.

        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.

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

Funções obrigatórias

Para obter as permissões necessárias para criar solicitações de reserva futuras compartilhadas, peça ao administrador para conceder a você a função do IAM de usuário de reserva futura do Compute ( roles/compute.futureReservationUser ) no projeto. Para obter mais informações sobre a concessão de funções, consulte Gerenciar acesso a projetos, pastas e organizações .

Esta função predefinida contém as permissões necessárias para criar futuras solicitações de reserva compartilhadas. Para ver 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 criar futuras solicitações de reserva compartilhadas:

  • Para criar uma solicitação de reserva futura: compute.futureReservations.create no projeto
  • Para permitir que o Compute Engine crie reservas automaticamente: compute.reservations.create no projeto
  • Para especificar um modelo de instância: compute.instanceTemplates.useReadOnly no modelo de instância

Você também poderá obter essas permissões com funções personalizadas ou outras funções predefinidas .

Restrições

Além das restrições gerais para reservas futuras, a criação de solicitações de reservas futuras compartilhadas possui as seguintes restrições:

  • O projeto que você usa para criar solicitações de reserva futuras compartilhadas (o projeto proprietário) deve ser adicionado à lista de permissões para a restrição de política da organização Projetos proprietários de reservas compartilhadas ( compute.sharedReservationsOwnerProjects ) por um administrador de política da organização. Para mais informações, consulte Permitir e restringir projetos para criar e modificar reservas compartilhadas na documentação de reservas do Compute Engine.

  • Se você mover um projeto que criou uma solicitação de reserva futura compartilhada para uma organização diferente, a reserva futura compartilhada será excluída. O projeto não é automaticamente removido da restrição de política organizacional Projetos de Proprietários de Reservas Compartilhadas ( compute.sharedReservationsOwnerProjects ), mas você pode remover o projeto dessa restrição, se desejar.

  • Cada solicitação de reserva futura compartilhada pode ser compartilhada com até 100 projetos de consumidores.

  • Para cada organização, você pode criar até 100 solicitações de reservas futuras compartilhadas para cada combinação exclusiva de propriedades de VM .

Criar um rascunho de solicitação

Ao criar uma solicitação de reserva futura, você pode salvar a solicitação como rascunho e depois enviá-la para Google Cloud para revisão ou enviar diretamente a solicitação de revisão. O Google recomenda criar primeiro um rascunho de solicitação, pois isso permite determinar o número de VMs que o Compute Engine provisionará para sua solicitação, em vez de estimar manualmente esse número e, opcionalmente, modificar o número de VMs reservadas na solicitação antes de enviá-la para revisão.

Para consumir uma reserva criada automaticamente para uma reserva futura, uma VM deve ter propriedades que correspondam exatamente a essa reserva. Para especificar as propriedades das VMs que você deseja solicitar reserva criando um rascunho de solicitação de reserva futura, use um dos seguintes métodos:

  • Recomendado: especifique um modelo de instância

    Você pode usar um modelo de instância existente para definir as propriedades de um rascunho de solicitação de reserva futura. Ao usar um modelo de instância, você pode definir as propriedades de uma solicitação de reserva futura e as VMs que podem consumir as reservas criadas automaticamente no mesmo local. No entanto, como os modelos são específicos do projeto, não é possível utilizar o mesmo modelo para criar VMs que possam consumir as reservas criadas automaticamente fora do projeto que criou o pedido de reserva futuro. Para os projetos com os quais a reserva futura é compartilhada, você deve criar modelos semelhantes nesses projetos ou criar VMs especificando propriedades diretamente.

  • Especifique uma VM existente

    Você pode usar uma VM existente para definir as propriedades de uma solicitação de reserva futura. Ao utilizar as propriedades de uma VM existente, pode consumir as reservas criadas automaticamente e aprovisionadas para a reserva futura, criando VMs com propriedades que correspondam à VM de referência.

  • Especifique propriedades diretamente

    Você pode definir diretamente as propriedades de um rascunho de solicitação de reserva futura. Este método exige que você garanta manualmente que as propriedades de suas VMs e as reservas criadas automaticamente correspondam exatamente – quaisquer propriedades incompatíveis evitam o consumo.

Uma reserva criada automaticamente para uma reserva futura pode ser consumida automaticamente por qualquer VM com propriedades correspondentes. Se quiser evitar que uma VM consuma alguma dessas reservas criadas automaticamente, veja como criar VMs sem consumir reservas .

Especifique um modelo de instância

Ao criar uma solicitação de reserva futura compartilhada especificando um modelo de instância, considere o seguinte:

  • Um modelo de instância contém configurações específicas do projeto, portanto você só pode acessar e usar um modelo de instância dentro do mesmo projeto. Se você criar uma solicitação de reserva futura compartilhada especificando um modelo de instância, deverá criar modelos semelhantes para criar VMs ou criar VMs especificando propriedades correspondentes diretamente para consumir as reservas criadas automaticamente em cada projeto consumidor.

  • Você deve criar sua solicitação de reserva futura na mesma região e zona que os recursos do modelo de instância. Quaisquer recursos regionais ou zonais especificados em um modelo de instância, como um tipo de máquina ou um disco permanente, restringem o uso do modelo aos locais onde esses recursos estão localizados. Por exemplo, se o modelo de instância especificar um disco permanente existente na zona us-central1-a , você deverá criar sua solicitação de reserva futura na mesma zona. Caso contrário, a criação da solicitação de reserva futura falhará.

    Para verificar se um modelo existente especifica algum recurso que vincula o modelo a uma região ou zona específica, visualize os detalhes do modelo e procure referências a recursos regionais ou zonais dentro dele.

  • Se quiser anexar as reservas criadas automaticamente e provisionadas para uma reserva futura a um compromisso, você deverá desabilitar a opção de exclusão automática. Para obter mais informações, consulte Restrições após a criação .

Depois de criar uma solicitação de reserva futura, não será possível modificar a solicitação de reserva futura para substituir as propriedades da VM do modelo ou especificar outro modelo. Em vez disso, se precisar alterar as propriedades da VM especificadas na solicitação, você deverá criar uma nova solicitação de reserva futura .

Para criar uma reserva futura compartilhada especificando um modelo de instância existente, selecione uma das seguintes opções:

Console

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

    Ir para Reservas

  2. Clique na guia Reservas futuras .

  3. Clique em Criar reserva futura .

    A página Criar uma reserva futura é aberta.

  4. Em Nome , insira um nome para sua futura solicitação de reserva.

  5. Em Prefix , insira um prefixo de nome. O nome de cada reserva criada automaticamente a partir desta solicitação de reserva futura começa com este prefixo.

  6. Para Região e Zona , selecione a região e a zona nas quais reservar recursos.

  7. Em Hora de início , insira uma hora de início para o período de reserva. A hora de início não pode ser posterior a um ano a partir da data e hora em que você envia uma solicitação de reserva futura para análise. Para ter tempo suficiente para modificar, cancelar ou excluir opcionalmente a reserva futura antes que ela entre no horário de bloqueio, especifique um valor recomendado para o horário de início .

  8. Em Hora de término , insira uma hora de término para o período de reserva de pelo menos 14 dias. Na seção Resumo da duração , você pode ver a duração do período da reserva. Para aumentar a probabilidade de que Google Cloudaprovar sua futura solicitação de reserva após enviá-la para análise, certifique-se de especificar um valor recomendado para o período de reserva .

  9. Na seção Tipo de compartilhamento , faça o seguinte:

    1. Para especificar uma solicitação de reserva futura compartilhada, selecione Compartilhado .

    2. Clique em Adicionar projetos e selecione os projetos da organização do projeto atual com os quais você deseja compartilhar a solicitação de reserva futura. Você pode selecionar até 100 projetos.

  10. Em Capacidade total necessária , insira a contagem total de VMs que você deseja reservar para o período, a configuração da VM e os projetos especificados nesta solicitação de reserva futura.

  11. Na seção Configuração da máquina , faça o seguinte:

    1. Selecione Usar modelo de instância .

    2. Em Instance template , selecione o modelo de instância de sua preferência. Se você selecionar um modelo de instância regional, só poderá reservar recursos dentro da mesma região que a região do modelo.

  12. Na seção Exclusão automática de reservas geradas automaticamente , siga um destes procedimentos:

    • Para permitir que o Compute Engine exclua automaticamente as reservas criadas automaticamente para sua solicitação de reserva futura, faça o seguinte:

      1. Clique no botão Ativar exclusão automática para a posição ativada se ainda não estiver definido.

      2. Opcional: para Horário de exclusão automática , insira uma data e hora para excluir as reservas criadas automaticamente. A data e a hora devem ser posteriores ao horário de término do período de reserva. Se você deixar este campo vazio, as reservas criadas automaticamente serão excluídas dentro de duas horas após o horário de término do período de reserva.

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

  13. Para terminar de criar o rascunho da solicitação de reserva futura, clique em Salvar um rascunho .

A página Reservas é aberta. A criação da solicitação de reserva futura pode levar até um minuto para ser concluída.

gcloud

Para criar uma solicitação de reserva futura compartilhada especificando um modelo de instância, use o gcloud beta compute future-reservations create com os --share-setting=projects --share-with .

Para criar um rascunho de solicitação de reserva futura especificando um modelo de instância sem incluir sinalizadores opcionais e excluir automaticamente a reserva criada automaticamente no final do período de reserva, execute o seguinte comando:

gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
    --auto-delete-auto-created-reservations \
    --share-setting=projects \
    --share-with=CONSUMER_PROJECT_IDS \
    --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \
    --start-time=START_TIME \
    --end-time=END_TIME \
    --total-count=TOTAL_COUNT \
    --zone=ZONE

Substitua o seguinte:

  • FUTURE_RESERVATION_NAME : o nome da futura solicitação de reserva.

  • MACHINE_TYPE : o tipo de máquina a ser usado para cada VM reservada.

  • CONSUMER_PROJECT_IDS : uma lista separada por vírgulas de IDs de projetos que você deseja permitir que consumam as reservas criadas automaticamente para esta solicitação de reserva futura — por exemplo, project-1,project-2 . Você pode especificar até 100 projetos. Esses projetos devem estar na mesma organização do projeto onde a futura solicitação de reserva é criada (o projeto proprietário). Não especifique o projeto proprietário. Por padrão, já é permitido consumir as reservas criadas automaticamente para esta futura solicitação de reserva.
  • PROJECT_ID : o ID do projeto onde você deseja reservar recursos e onde o modelo de instância está localizado.

  • LOCATION : o local do modelo de instância. Especifique um dos seguintes valores:

    • Para um modelo de instância regional: regions/ REGION . Substitua REGION pela região onde o modelo de instância está localizado. Se você especificar um modelo de instância regional, só poderá criar a solicitação de reserva futura na mesma região da região do modelo.

    • Para um modelo de instância global: global .

  • INSTANCE_TEMPLATE_NAME : o nome de um modelo de instância existente.

  • START_TIME : o horário de início do período de reserva como um timestamp RFC 3339 , que deve ser formatado da seguinte forma:

    YYYY-MM-DDTHH:MM:SSOFFSET
    

    Substitua o seguinte:

    • YYYY-MM-DD : dados formatados como ano de 4 dígitos, mês de 2 dígitos e dia do mês de 2 dígitos, separados por hífens ( - ).

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

    • OFFSET : o fuso horário formatado como um deslocamento do Tempo Universal Coordenado (UTC) . Por exemplo, para usar o Horário Padrão do Pacífico (PST), especifique -08:00 . Como alternativa, para não usar deslocamento, especifique Z .

    A hora de início não pode ser posterior a um ano a partir da data e hora em que você envia uma solicitação de reserva futura para análise. Para ter tempo suficiente para cancelar, excluir ou modificar opcionalmente uma solicitação de reserva futura depois de aprovada e antes de entrar no horário de bloqueio, especifique um valor recomendado para a hora de início .

  • END_TIME : o horário de término do período de reserva formatado como um carimbo de data/hora RFC 3339. Para aumentar a probabilidade de queGoogle Cloud aprova sua solicitação após o envio, especifique um período mínimo de reserva . Para especificar uma duração em vez de um horário de término, substitua o sinalizador --end-time pelo sinalizador --duration= END_DURATION . Substitua END_DURATION por uma duração em segundos. Por exemplo, especifique 1209600 para 1.209.600 segundos (14 dias).

    Para aumentar a probabilidade de que Google Cloud aprova uma solicitação de reserva futura após enviá-la para análise, especifique uma duração mínima recomendada .

  • TOTAL_COUNT : a contagem total de VMs que você deseja reservar.

  • ZONE : a zona na qual reservar recursos.

Por exemplo, suponha que você queira criar um rascunho de solicitação de reserva futura chamada fr-02 na zona us-central1-a com as seguintes propriedades:

  • Um período de reserva que começa à meia-noite de 10 de novembro de 2024 UTC e termina à meia-noite de 10 de dezembro de 2024 UTC.

  • Uma contagem total de 80 VMs.

  • Um modelo de instância regional da região us-central1 .
  • A opção de exclusão automática ativada. As reservas criadas automaticamente são excluídas no final do período de reserva.
  • A solicitação de reserva futura é compartilhada com project-1 e project-2 .

Para criar fr-02 , execute o seguinte comando:

gcloud beta compute future-reservations create fr-02 \
    --auto-delete-auto-created-reservations \
    --share-setting=projects \
    --share-with=project-1,project-2 \
    --source-instance-template=projects/example-project/regions/us-central1/instanceTemplates/example-template \
    --start-time=2024-11-10T00:00:00Z \
    --end-time=2024-12-10T00:00:00Z \
    --total-count=80 \
    --zone=us-central1-a

Opcionalmente, você pode fazer um ou mais dos seguintes procedimentos:

  • Para excluir as reservas criadas automaticamente após o horário de término do período de reserva, selecione um dos seguintes métodos:

    • Para excluir as reservas criadas automaticamente em uma data e hora específicas após o horário de término do período de reserva, inclua o sinalizador --auto-created-reservations-delete-time .

      gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
          --auto-created-reservations-delete-time=AUTO_CREATED_RESERVATIONS_DELETE_TIME \
          --auto-delete-auto-created-reservations \
          --share-setting=projects \
          --share-with=CONSUMER_PROJECT_IDS \
          --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \
          --start-time=START_TIME \
          --end-time=END_TIME \
          --total-count=TOTAL_COUNT \
          --zone=ZONE
      

      Substitua AUTO_CREATED_RESERVATIONS_DELETE_TIME por uma data e hora formatada como um carimbo de data/hora RFC 3339.

    • Para excluir as reservas criadas automaticamente após um período específico após o horário de término do período de reserva, inclua o sinalizador --auto-created-reservations-duration .

      gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
          --auto-created-reservations-duration=DURATION_BEFORE_DELETE \
          --auto-delete-auto-created-reservations \
          --share-setting=projects \
          --share-with=CONSUMER_PROJECT_IDS \
          --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \
          --start-time=START_TIME \
          --end-time=END_TIME \
          --total-count=TOTAL_COUNT \
          --zone=ZONE
      

      Substitua DURATION_BEFORE_DELETE por uma duração em dias, horas, minutos ou segundos. Por exemplo, especifique 30m para 30 minutos ou 1d2h3m4s para um dia, duas horas, três minutos e quatro segundos.

  • Para desativar a opção de exclusão automática para reservas criadas automaticamente, substitua o sinalizador --auto-delete-auto-created-reservations pelo sinalizador --no-auto-delete-auto-created-reservations .

    gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
        --no-auto-delete-auto-created-reservations \
        --share-setting=projects \
        --share-with=CONSUMER_PROJECT_IDS \
        --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \
        --start-time=START_TIME \
        --end-time=END_TIME \
        --total-count=TOTAL_COUNT \
        --zone=ZONE
    
  • Para especificar um prefixo de nome para as reservas criadas automaticamente, inclua o sinalizador --name-prefix .

    gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
        --auto-delete-auto-created-reservations \
        --name-prefix=NAME_PREFIX \
        --share-setting=projects \
        --share-with=CONSUMER_PROJECT_IDS \
        --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \
        --start-time=START_TIME \
        --end-time=END_TIME \
        --total-count=TOTAL_COUNT \
        --zone=ZONE
    

    Substitua NAME_PREFIX pelo prefixo do nome de cada reserva criada automaticamente. Para ajudá-lo a identificar as reservas criadas automaticamente para esta futura solicitação de reserva, Google Cloud recomenda especificar um prefixo de nome exclusivo.

DESCANSAR

Para criar uma solicitação de reserva futura compartilhada especificando um modelo de instância, faça uma solicitação POST para o método beta.futureReservations.insert .

Para criar um rascunho de solicitação de reserva futura especificando um modelo de instância sem incluir nenhum campo opcional, faça uma solicitação POST da seguinte maneira:

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations

{
  "autoDeleteAutoCreatedReservations": AUTO_DELETE_AUTO_CREATED_RESERVATIONS,
  "name": "FUTURE_RESERVATION_NAME",
  "shareSettings": {
    "projects": [
      "CONSUMER_PROJECT_ID_1",
      "CONSUMER_PROJECT_ID_2"
    ],
    "shareType": "SPECIFIC_PROJECTS"
  },
  "specificSkuProperties": { 
    "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME",
    "totalCount": TOTAL_COUNT
  },
  "timeWindow": {
    "startTime": "START_TIME",
    "endTime": "END_TIME"
  }
}

Substitua o seguinte:

  • PROJECT_ID : o ID do projeto no qual você deseja reservar recursos e onde o modelo de instância está localizado.

  • ZONE : a zona na qual reservar recursos.

  • AUTO_DELETE_AUTO_CREATED_RESERVATIONS : se você definir esse campo como true , o Compute Engine excluirá automaticamente as reservas criadas automaticamente para essa reserva futura dentro de duas horas a partir do horário de término do período de reserva. Se quiser anexar suas reservas criadas automaticamente a um compromisso, defina este campo como false .

  • CONSUMER_PROJECT_ID_1 e CONSUMER_PROJECT_ID_2 : os IDs dos projetos com os quais esta futura solicitação de reserva pode ser compartilhada. Você pode especificar até 100 projetos. Esses projetos devem estar na mesma organização do projeto onde a futura solicitação de reserva é criada (o projeto proprietário). Não especifique o projeto proprietário. Por padrão, já é permitido consumir as reservas criadas automaticamente para esta futura solicitação de reserva.
  • LOCATION : o local do modelo de instância. Especifique um dos seguintes valores:

    • Para um modelo de instância regional: regions/ REGION . Substitua REGION pela região onde o modelo de instância está localizado. Se você especificar um modelo de instância regional, só poderá criar a solicitação de reserva futura na mesma região da região do modelo.

    • Para um modelo de instância global: global .

  • INSTANCE_TEMPLATE_NAME : o nome de um modelo de instância existente.

  • TOTAL_COUNT : a contagem total de VMs que você deseja reservar.

  • START_TIME : o horário de início do período de reserva como um timestamp RFC 3339 , que deve ser formatado da seguinte forma:

    YYYY-MM-DDTHH:MM:SSOFFSET
    

    Substitua o seguinte:

    • YYYY-MM-DD : dados formatados como ano de 4 dígitos, mês de 2 dígitos e dia do mês de 2 dígitos, separados por hífens ( - ).

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

    • OFFSET : o fuso horário formatado como um deslocamento do Tempo Universal Coordenado (UTC) . Por exemplo, para usar o Horário Padrão do Pacífico (PST), especifique -08:00 . Como alternativa, para não usar deslocamento, especifique Z .

    A hora de início não pode ser posterior a um ano a partir da data e hora em que você envia uma solicitação de reserva futura para análise. Para ter tempo suficiente para cancelar, excluir ou modificar opcionalmente uma solicitação de reserva futura depois de aprovada e antes de entrar no horário de bloqueio, especifique um valor recomendado para a hora de início .

  • END_TIME : o horário de término do período de reserva formatado como um carimbo de data/hora RFC 3339. Para aumentar a probabilidade de queGoogle Cloud aprova sua solicitação após o envio, especifique um período mínimo de reserva . Para especificar uma duração em vez de um horário de término, você pode substituir o campo endTime pelo campo duration :

    "duration": {
      "seconds": END_DURATION
    }
    

    Substitua END_DURATION por uma duração em segundos. Por exemplo, especifique 1209600 para 1.209.600 segundos (14 dias).

Por exemplo, suponha que você queira criar um rascunho de solicitação de reserva futura chamada fr-02 na zona us-central1-a com as seguintes propriedades:

  • Um período de reserva que começa à meia-noite de 10 de novembro de 2024 UTC e termina à meia-noite de 10 de dezembro de 2024 UTC.

  • Uma contagem total de 80 VMs.

  • Um modelo de instância regional da região us-central1 .
  • A opção de exclusão automática ativada. As reservas criadas automaticamente são excluídas no final do período de reserva.
  • A solicitação de reserva futura é compartilhada com project-1 e project-2 .

Para criar fr-02 , faça uma solicitação POST da seguinte forma:

POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations

{
  "autoDeleteAutoCreatedReservations": true,
  "name": "fr-02",
  "specificSkuProperties": { 
    "sourceInstanceTemplate": "projects/example-project/regions/us-central1/instanceTemplates/example-template",
    "totalCount": 80
  },
  "shareSettings": {
    "projects": [
      "project-1",
      "project-2"
    ],
    "shareType": "SPECIFIC_PROJECTS"
  },
  "timeWindow": {
    "startTime": "2024-11-10T00:00:00Z",
    "endTime": "2024-12-10T00:00:00Z"
  }
}

Opcionalmente, você pode fazer um ou mais dos seguintes procedimentos:

  • Para especificar um prefixo de nome para as reservas criadas automaticamente, inclua o campo namePrefix .

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
    
    {
      "autoDeleteAutoCreatedReservations": AUTO_DELETE_AUTO_CREATED_RESERVATIONS,
      "name": "FUTURE_RESERVATION_NAME",
      "namePrefix": "NAME_PREFIX",
      "shareSettings": {
        "projects": [
          "CONSUMER_PROJECT_ID_1",
          "CONSUMER_PROJECT_ID_2"
        ],
        "shareType": "SPECIFIC_PROJECTS"
      },
      "specificSkuProperties": { 
        "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME",
        "totalCount": TOTAL_COUNT
      },
      "timeWindow": {
        "startTime": "START_TIME",
        "endTime": "END_TIME"
      }
    }
    

    Substitua NAME_PREFIX pelo prefixo do nome de cada reserva criada automaticamente. Para ajudá-lo a identificar as reservas criadas automaticamente para esta futura solicitação de reserva, Google Cloud recomenda especificar um prefixo de nome exclusivo.

  • Para excluir as reservas criadas automaticamente após o horário de término do período de reserva, selecione um dos seguintes métodos:

    • Para excluir as reservas criadas automaticamente após um tempo específico após o término do período de reserva, defina autoDeleteAutoCreatedReservations como true e inclua o campo autoCreatedReservationsDeleteTime .

      POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
      
      {
        "autoCreatedReservationsDeleteTime": "DELETE_TIME",
        "autoDeleteAutoCreatedReservations": true,
        "name": "FUTURE_RESERVATION_NAME",
        "shareSettings": {
          "projects": [
            "CONSUMER_PROJECT_ID_1",
            "CONSUMER_PROJECT_ID_2"
          ],
          "shareType": "SPECIFIC_PROJECTS"
        },
        "specificSkuProperties": { 
          "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME",
          "totalCount": TOTAL_COUNT
        },
        "timeWindow": {
          "startTime": "START_TIME",
          "endTime": "END_TIME"
        }
      }
      

      Substitua DELETE_TIME pela data e hora em que o Compute Engine exclui as reservas criadas automaticamente. A data e a hora devem ser formatadas como um carimbo de data/hora RFC 3339.

    • Para excluir as reservas criadas automaticamente após um período específico a partir do horário de início do período de reserva, defina autoDeleteAutoCreatedReservations como true e inclua o campo autoCreatedReservationsDuration .

      POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
      
      {
        "autoCreatedReservationsDuration": {
          "seconds": "DURATION_BEFORE_DELETE"
        },
        "autoDeleteAutoCreatedReservations": true,
        "name": "FUTURE_RESERVATION_NAME",
        "shareSettings": {
          "projects": [
            "CONSUMER_PROJECT_ID_1",
            "CONSUMER_PROJECT_ID_2"
          ],
          "shareType": "SPECIFIC_PROJECTS"
        },
        "specificSkuProperties": { 
          "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME",
          "totalCount": TOTAL_COUNT
        },
        "timeWindow": {
          "startTime": "START_TIME",
          "endTime": "END_TIME"
        }
      }
      

      Substitua DURATION_BEFORE_DELETE por uma duração em segundos. Por exemplo, especifique 604800 para 604.800 segundos (7 dias).

Depois de criar um rascunho de solicitação de reserva futura, você poderá determinar o número de VMs que o Compute Engine provisionará para a solicitação .

Especifique uma VM existente

Você só pode criar um rascunho de solicitação de reserva futura com base em uma VM existente no mesmo projeto e zona que a VM.

Após a futura solicitação de reserva ser aprovada pelo Google Cloud e entrar no período de reserva, você poderá consumir as reservas criadas automaticamente criando VMs com propriedades que correspondam à VM de referência. Você pode fazer isso seguindo um destes procedimentos:

  • Crie e use um modelo de instância da seguinte maneira:

    1. Crie um modelo de instância baseado na VM de referência sem substituir as propriedades da VM de referência.

    2. Crie VMs usando o modelo recém-criado seguindo um ou ambos os procedimentos a seguir:

  • Crie uma VM com propriedades que correspondam exatamente à VM de referência da seguinte maneira:

    • No projeto proprietário, crie uma VM baseada na VM de referência sem alterar as propriedades da VM que você está criando.

    • Nos projetos de consumo, crie uma VM enquanto garante manualmente que suas propriedades e as propriedades da VM de referência correspondem.

Para criar uma solicitação de reserva futura compartilhada que use as propriedades de uma VM existente, faça o seguinte:

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

    Ir para Reservas

  2. Clique na guia Reservas futuras .

  3. Clique em Criar reserva futura .

    A página Criar uma reserva futura é aberta.

  4. Em Nome , insira um nome para sua futura solicitação de reserva.

  5. Em Prefix , insira um prefixo de nome. O nome de cada reserva criada automaticamente a partir desta solicitação de reserva futura começa com este prefixo.

  6. Para Região e Zona , selecione a região e a zona nas quais reservar recursos.

  7. Em Hora de início , insira uma hora de início para o período de reserva. A hora de início não pode ser posterior a um ano a partir da data e hora em que você envia uma solicitação de reserva futura para análise. Para ter tempo suficiente para modificar, cancelar ou excluir opcionalmente a reserva futura antes que ela entre no horário de bloqueio, especifique um valor recomendado para o horário de início .

  8. Em Hora de término , insira uma hora de término para o período de reserva de pelo menos 14 dias. Na seção Resumo da duração , você pode ver a duração do período da reserva. Para aumentar a probabilidade de que Google Cloudaprovar sua futura solicitação de reserva após enviá-la para análise, certifique-se de especificar um valor recomendado para o período de reserva .

  9. Na seção Tipo de compartilhamento , faça o seguinte:

    1. Para especificar uma solicitação de reserva futura compartilhada, selecione Compartilhado .

    2. Clique em Adicionar projetos e selecione os projetos da organização do projeto atual com os quais você deseja compartilhar a solicitação de reserva futura. Você pode selecionar até 100 projetos.

  10. Em Capacidade total necessária , insira a contagem total de VMs que você deseja reservar para o período, a configuração da VM e os projetos especificados nesta solicitação de reserva futura.

  11. Na seção Configuração da máquina , faça o seguinte:

    1. Selecione Usar VM existente .

    2. Para VM existente , selecione a VM cujas propriedades você deseja usar para criar a reserva.

  12. Na seção Exclusão automática de reservas geradas automaticamente , siga um destes procedimentos:

    • Para permitir que o Compute Engine exclua automaticamente as reservas criadas automaticamente para sua solicitação de reserva futura, faça o seguinte:

      1. Clique no botão Ativar exclusão automática para a posição ativada se ainda não estiver definido.

      2. Opcional: para Horário de exclusão automática , insira uma data e hora para excluir as reservas criadas automaticamente. A data e a hora devem ser posteriores ao horário de término do período de reserva. Se você deixar este campo vazio, as reservas criadas automaticamente serão excluídas dentro de duas horas após o horário de término do período de reserva.

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

  13. Para terminar de criar o rascunho da solicitação de reserva futura, clique em Salvar um rascunho .

A página Reservas é aberta. A criação da solicitação de reserva futura pode levar até um minuto para ser concluída.

Depois de criar um rascunho de solicitação de reserva futura, você poderá determinar o número de VMs que o Compute Engine provisionará para a solicitação .

Especifique propriedades diretamente

Se quiser anexar as reservas criadas automaticamente e provisionadas para uma reserva futura a um compromisso, você deverá desabilitar a opção de exclusão automática. Para obter mais informações, consulte Restrições após a criação .

Para criar uma solicitação de reserva futura compartilhada especificando propriedades diretamente, selecione uma das seguintes opções:

Console

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

    Ir para Reservas

  2. Clique na guia Reservas futuras .

  3. Clique em Criar reserva futura .

    A página Criar uma reserva futura é aberta.

  4. Em Nome , insira um nome para sua futura solicitação de reserva.

  5. Em Prefix , insira um prefixo de nome. O nome de cada reserva criada automaticamente a partir desta solicitação de reserva futura começa com este prefixo.

  6. Para Região e Zona , selecione a região e a zona nas quais reservar recursos.

  7. Em Hora de início , insira uma hora de início para o período de reserva. A hora de início não pode ser posterior a um ano a partir da data e hora em que você envia uma solicitação de reserva futura para análise. Para ter tempo suficiente para modificar, cancelar ou excluir opcionalmente a reserva futura antes que ela entre no horário de bloqueio, especifique um valor recomendado para o horário de início .

  8. Em Hora de término , insira uma hora de término para o período de reserva de pelo menos 14 dias. Na seção Resumo da duração , você pode ver a duração do período da reserva. Para aumentar a probabilidade de que Google Cloudaprovar sua futura solicitação de reserva após enviá-la para análise, certifique-se de especificar um valor recomendado para o período de reserva .

  9. Na seção Tipo de compartilhamento , faça o seguinte:

    1. Para especificar uma solicitação de reserva futura compartilhada, selecione Compartilhado .

    2. Clique em Adicionar projetos e selecione os projetos da organização do projeto atual com os quais você deseja compartilhar a solicitação de reserva futura. Você pode selecionar até 100 projetos.

  10. Em Capacidade total necessária , insira a contagem total de VMs que você deseja reservar para o período, a configuração da VM e os projetos especificados nesta solicitação de reserva futura.

  11. Na seção Configuração da máquina , faça o seguinte:

    1. Selecione Especificar tipo de máquina se ainda não estiver selecionado.

    2. Especifique o tipo de máquina a ser usado para as VMs reservadas.

  12. Na seção Exclusão automática de reservas geradas automaticamente , siga um destes procedimentos:

    • Para permitir que o Compute Engine exclua automaticamente as reservas criadas automaticamente para sua solicitação de reserva futura, faça o seguinte:

      1. Clique no botão Ativar exclusão automática para a posição ativada se ainda não estiver definido.

      2. Opcional: para Horário de exclusão automática , insira uma data e hora para excluir as reservas criadas automaticamente. A data e a hora devem ser posteriores ao horário de término do período de reserva. Se você deixar este campo vazio, as reservas criadas automaticamente serão excluídas dentro de duas horas após o horário de término do período de reserva.

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

  13. Para terminar de criar o rascunho da solicitação de reserva futura, clique em Salvar um rascunho .

A página Reservas é aberta. A criação da solicitação de reserva futura pode levar até um minuto para ser concluída.

gcloud

Para criar uma solicitação de reserva futura compartilhada especificando propriedades diretamente, use o gcloud beta compute future-reservations create com os --share-setting=projects e --share-with .

Para criar um rascunho de solicitação de reserva futura especificando propriedades diretamente, sem incluir sinalizações opcionais, e excluir automaticamente a reserva criada automaticamente no final do período de reserva, execute o seguinte comando:

gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
    --auto-delete-auto-created-reservations \
    --machine-type=MACHINE_TYPE \
    --share-setting=projects \
    --share-with=CONSUMER_PROJECT_IDS \
    --start-time=START_TIME \
    --end-time=END_TIME \
    --total-count=TOTAL_COUNT \
    --zone=ZONE

Substitua o seguinte:

  • FUTURE_RESERVATION_NAME : o nome da futura solicitação de reserva.

  • MACHINE_TYPE : o tipo de máquina a ser usado para cada VM reservada.

  • CONSUMER_PROJECT_IDS : uma lista separada por vírgulas de IDs de projetos que você deseja permitir que consumam as reservas criadas automaticamente para esta solicitação de reserva futura — por exemplo, project-1,project-2 . Você pode especificar até 100 projetos. Esses projetos devem estar na mesma organização do projeto onde a futura solicitação de reserva é criada (o projeto proprietário). Não especifique o projeto proprietário. Por padrão, já é permitido consumir as reservas criadas automaticamente para esta futura solicitação de reserva.
  • START_TIME : o horário de início do período de reserva como um timestamp RFC 3339 , que deve ser formatado da seguinte forma:

    YYYY-MM-DDTHH:MM:SSOFFSET
    

    Substitua o seguinte:

    • YYYY-MM-DD : dados formatados como ano de 4 dígitos, mês de 2 dígitos e dia do mês de 2 dígitos, separados por hífens ( - ).

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

    • OFFSET : o fuso horário formatado como um deslocamento do Tempo Universal Coordenado (UTC) . Por exemplo, para usar o Horário Padrão do Pacífico (PST), especifique -08:00 . Como alternativa, para não usar deslocamento, especifique Z .

    A hora de início não pode ser posterior a um ano a partir da data e hora em que você envia uma solicitação de reserva futura para análise. Para ter tempo suficiente para cancelar, excluir ou modificar opcionalmente uma solicitação de reserva futura depois de aprovada e antes de entrar no horário de bloqueio, especifique um valor recomendado para a hora de início .

  • END_TIME : o horário de término do período de reserva formatado como um carimbo de data/hora RFC 3339. Para aumentar a probabilidade de queGoogle Cloud aprova sua solicitação após o envio, especifique um período mínimo de reserva . Para especificar uma duração em vez de um horário de término, substitua o sinalizador --end-time pelo sinalizador --duration= END_DURATION . Substitua END_DURATION por uma duração em segundos. Por exemplo, especifique 1209600 por 1.209.600 segundos (14 dias).

    Para aumentar a probabilidade de que Google Cloud Aprova uma solicitação de reserva futura depois de enviá -la para revisão, especifique uma duração mínima recomendada .

  • TOTAL_COUNT : a contagem total das VMs que você deseja reservadas.

  • ZONE : a zona para reservar recursos.

Por exemplo, suponha que você queira criar um rascunho de uma solicitação de reserva futura chamada fr-02 na zona us-central1-a com as seguintes propriedades:

  • Um período de reserva que começa à meia -noite de 10 de novembro de 2024 UTC e termina à meia -noite de 10 de dezembro de 2024 UTC.

  • Uma contagem total de 80 VMs.

  • Um tipo de máquina predefinido N2 com 4 vcpus.
  • A opção de derrota automática ativada. As reservas criadas automaticamente são excluídas no final do período de reserva.
  • A futura solicitação de reserva é compartilhada com project-1 e project-2 .

Para criar fr-02 , execute o seguinte comando:

gcloud beta compute future-reservations create fr-02 \
    --auto-delete-auto-created-reservations \
    --machine-type=n2-standard-4 \
    --share-setting=projects \
    --share-with=project-1,project-2 \
    --start-time=2024-11-10T00:00:00Z \
    --end-time=2024-12-10T00:00:00Z \
    --total-count=80 \
    --zone=us-central1-a

Opcionalmente, você pode fazer um ou mais dos seguintes:

  • Para conectar as GPUs às suas VMs N1 reservadas, inclua o sinalizador --accelerator .

    gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
        --accelerator=NUMBER_OF_ACCELERATORS,type=ACCELERATOR_TYPE \
        --auto-delete-auto-created-reservations \
        --machine-type=MACHINE_TYPE \
        --share-setting=projects \
        --share-with=CONSUMER_PROJECT_IDS \
        --start-time=START_TIME \
        --end-time=END_TIME \
        --total-count=TOTAL_COUNT \
        --zone=ZONE
    

    Substitua o seguinte:

    • NUMBER_OF_ACCELERATORS : o número de GPUs a serem adicionadas por VM reservada.

    • ACCELERATOR_TYPE : um modelo GPU suportado para VMs N1 . Para evitar erros, verifique se o seu modelo GPU escolhido está disponível na zona em que você está criando a futura solicitação de reserva.

  • Para excluir as reservas criadas automaticamente após o horário final do período de reserva, selecione um dos seguintes métodos:

    • Para excluir as reservas criadas automaticamente em uma data e hora específicas após o horário final do período de reserva, inclua o sinalizador-sinalizador --auto-created-reservations-delete-time .

      gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
          --auto-created-reservations-delete-time=AUTO_CREATED_RESERVATIONS_DELETE_TIME \
          --auto-delete-auto-created-reservations \
          --machine-type=MACHINE_TYPE \
          --share-setting=projects \
          --share-with=CONSUMER_PROJECT_IDS \
          --start-time=START_TIME \
          --end-time=END_TIME \
          --total-count=TOTAL_COUNT \
          --zone=ZONE
      

      Substitua AUTO_CREATED_RESERVATIONS_DELETE_TIME por uma data e hora formatados como um timestamp RFC 3339.

    • Para excluir as reservas criadas automaticamente após uma duração específica após o horário final do período de reserva, inclua o sinalizador --auto-created-reservations-duration .

      gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
          --auto-created-reservations-duration=DURATION_BEFORE_DELETE \
          --auto-delete-auto-created-reservations \
          --machine-type=MACHINE_TYPE \
          --share-setting=projects \
          --share-with=CONSUMER_PROJECT_IDS \
          --start-time=START_TIME \
          --end-time=END_TIME \
          --total-count=TOTAL_COUNT \
          --zone=ZONE
      

      Substitua DURATION_BEFORE_DELETE por uma duração em dias, horas, minutos ou segundos. Por exemplo, especifique 30m por 30 minutos, ou 1d2h3m4s por um dia, duas horas, três minutos e quatro segundos.

  • Para desativar a opção de telete automaticamente para as reservas criadas automaticamente, substitua o sinalizador --auto-delete-auto-created-reservations --no-auto-delete-auto-created-reservations .

    gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
        --no-auto-delete-auto-created-reservations \
        --machine-type=MACHINE_TYPE \
        --share-setting=projects \
        --share-with=CONSUMER_PROJECT_IDS \
        --start-time=START_TIME \
        --end-time=END_TIME \
        --total-count=TOTAL_COUNT \
        --zone=ZONE
    
  • Para anexar os discos SSD locais a um tipo de máquina que não inclui discos SSD locais por padrão , inclua o sinalizador --local-ssd . Você pode anexar apenas o disco SSD local de 375 GB.

    gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
        --auto-delete-auto-created-reservations \
        --local-ssd=count=NUMBER_OF_LOCAL_SSD_DISKS,size=375,interface=INTERFACE_TYPE \
        --machine-type=MACHINE_TYPE \
        --share-setting=projects \
        --share-with=CONSUMER_PROJECT_IDS \
        --start-time=START_TIME \
        --end-time=END_TIME \
        --total-count=TOTAL_COUNT \
        --zone=ZONE
    

    Substitua o seguinte:

    • NUMBER_OF_LOCAL_SSD_DISKS : o número de discos SSD locais a serem anexados.

    • INTERFACE_TYPE : o tipo de interface de disco que você deseja que os discos SSD locais usem e que o tipo de máquina especificado suporta . Especifique um dos seguintes valores:

      • Para a interface de disco NVME: nvme

      • Para a interface de disco SCSI: scsi

  • Para que as VMs reservadas usem uma plataforma mínima específica da CPU em vez da plataforma CPU padrão da zona, inclua o sinalizador --min-cpu-platform .

    gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
        --auto-delete-auto-created-reservations \
        --machine-type=MACHINE_TYPE \
        --min-cpu-platform="MIN_CPU_PLATFORM" \
        --share-setting=projects \
        --share-with=CONSUMER_PROJECT_IDS \
        --start-time=START_TIME \
        --end-time=END_TIME \
        --total-count=TOTAL_COUNT \
        --zone=ZONE
    

    Substitua MIN_CPU_PLATFORM por uma plataforma CPU mínima. Para garantir que uma plataforma CPU esteja disponível na zona em que você esteja reservando recursos, consulte as plataformas de CPU disponíveis por zona .

  • Para especificar um prefixo de nome para as reservas criadas automaticamente, inclua o sinalizador --name-prefix .

    gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
        --auto-delete-auto-created-reservations \
        --machine-type=MACHINE_TYPE \
        --name-prefix=NAME_PREFIX \
        --share-setting=projects \
        --share-with=CONSUMER_PROJECT_IDS \
        --start-time=START_TIME \
        --end-time=END_TIME \
        --total-count=TOTAL_COUNT \
        --zone=ZONE
    

    Substitua o NAME_PREFIX pelo prefixo de nome para cada reserva criada automaticamente. Para ajudá-lo a identificar as reservas criadas automaticamente para esta futura solicitação de reserva, Google Cloud Recomenda especificar um prefixo de nome exclusivo.

DESCANSAR

Para criar uma solicitação de reserva futura compartilhada especificando as propriedades diretamente, faça uma solicitação POST para o método beta.futureReservations.insert .

Para criar um rascunho de solicitação de reserva futura, especificando as propriedades diretamente sem incluir campos opcionais, faça uma solicitação POST da seguinte maneira:

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations

{
  "autoDeleteAutoCreatedReservations": AUTO_DELETE_AUTO_CREATED_RESERVATIONS,
  "name": "FUTURE_RESERVATION_NAME",
  "shareSettings": {
    "projects": [
      "CONSUMER_PROJECT_ID_1",
      "CONSUMER_PROJECT_ID_2"
    ],
    "shareType": "SPECIFIC_PROJECTS"
  },
  "specificSkuProperties": { 
    "instanceProperties": {
      "machineType": "MACHINE_TYPE"
    },
    "totalCount": TOTAL_COUNT
  },
  "timeWindow": {
    "startTime": "START_TIME",
    "endTime": "END_TIME"
  }
}

Substitua o seguinte:

  • PROJECT_ID : o ID do projeto no qual você deseja reservar recursos.

  • ZONE : a zona para reservar recursos.

  • AUTO_DELETE_AUTO_CREATED_RESERVATIONS : Se você definir esse campo como true , calcule o mecanismo excluir automaticamente as reservas criadas automaticamente para essa reserva futura dentro de duas horas a partir do horário final do período de reserva. Se você deseja anexar suas reservas criadas automaticamente a um compromisso, defina esse campo como false .

  • CONSUMER_PROJECT_ID_1 e CONSUMER_PROJECT_ID_2 : os IDs dos projetos com os quais essa futura solicitação de reserva pode ser compartilhada. Você pode especificar até 100 projetos. Esses projetos devem estar na mesma organização que o projeto em que a futura solicitação de reserva é criada (o projeto do proprietário). Não especifique o projeto do proprietário. Por padrão, ele já tem permissão para consumir as reservas criadas automaticamente para esta futura solicitação de reserva.
  • TOTAL_COUNT : a contagem total das VMs que você deseja reservadas.

  • START_TIME : o horário de início do período de reserva como um timestamp RFC 3339 , que deve ser formatado da seguinte forma:

    YYYY-MM-DDTHH:MM:SSOFFSET
    

    Substitua o seguinte:

    • YYYY-MM-DD : Um dados formatado como um ano de 4 dígitos, mês de 2 dígitos e um dia de 2 dígitos do mês, separado por hífens ( - ).

    • HH:MM:SS : Um tempo formatado como uma hora de 2 dígitos usando um tempo de 24 horas, 2 minutos e segundos de 2 dígitos, separado por cenários ( : .

    • OFFSET : o fuso horário formatado como um deslocamento do tempo universal coordenado (UTC) . Por exemplo, para usar o tempo padrão do Pacífico (PST), especifique -08:00 . Como alternativa, para não usar o deslocamento, especifique Z .

    O horário de início não pode ser posterior a um ano a partir da data e hora em que você envia uma solicitação de reserva futura para revisão. Para ter tempo suficiente para opcionalmente cancelar, excluir ou modificar uma solicitação de reserva futura após a aprovação e antes de entrar em seu tempo de bloqueio, especifique um valor recomendado para o horário de início .

  • END_TIME : o horário final do período de reserva formatado como um registro de data e hora RFC 3339. Para aumentar a probabilidade de queGoogle Cloud Aprova sua solicitação após o envio, especifique um período mínimo de reserva . Para especificar uma duração em vez de um horário de término, você pode substituir o campo endTime pelo campo duration :

    "duration": {
      "seconds": END_DURATION
    }
    

    Substitua END_DURATION por uma duração em segundos. Por exemplo, especifique 1209600 por 1.209.600 segundos (14 dias).

Por exemplo, suponha que você queira criar um rascunho de uma solicitação de reserva futura chamada fr-02 na zona us-central1-a com as seguintes propriedades:

  • Um período de reserva que começa à meia -noite de 10 de novembro de 2024 UTC e termina à meia -noite de 10 de dezembro de 2024 UTC.

  • Uma contagem total de 80 VMs.

  • Um tipo de máquina predefinido N2 com 4 vcpus.
  • A opção de derrota automática ativada. As reservas criadas automaticamente são excluídas no final do período de reserva.
  • A futura solicitação de reserva é compartilhada com project-1 e project-2 .

Para criar fr-02 , faça uma solicitação POST da seguinte maneira:

POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations

{
  "autoDeleteAutoCreatedReservations": true,
  "name": "fr-02",
  "specificSkuProperties": { 
    "instanceProperties": {
      "machineType": "n2-standard-4"
    },
    "totalCount": 80
  },
  "shareSettings": {
    "projects": [
      "project-1",
      "project-2"
    ],
    "shareType": "SPECIFIC_PROJECTS"
  },
  "timeWindow": {
    "startTime": "2024-11-10T00:00:00Z",
    "endTime": "2024-12-10T00:00:00Z"
  }
}

Opcionalmente, você pode fazer um ou mais dos seguintes:

  • Para especificar um prefixo de nome para as reservas criadas automaticamente, inclua o campo namePrefix .

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
    
    {
      "autoDeleteAutoCreatedReservations": AUTO_DELETE_AUTO_CREATED_RESERVATIONS,
      "name": "FUTURE_RESERVATION_NAME",
      "namePrefix": "NAME_PREFIX",
      "shareSettings": {
        "projects": [
          "CONSUMER_PROJECT_ID_1",
          "CONSUMER_PROJECT_ID_2"
        ],
        "shareType": "SPECIFIC_PROJECTS"
      },
      "specificSkuProperties": { 
        "instanceProperties": {
          "machineType": "MACHINE_TYPE"
        },
        "totalCount": TOTAL_COUNT
      },
      "timeWindow": {
        "startTime": "START_TIME",
        "endTime": "END_TIME"
      }
    }
    

    Substitua o NAME_PREFIX pelo prefixo de nome para cada reserva criada automaticamente. Para ajudá-lo a identificar as reservas criadas automaticamente para esta futura solicitação de reserva, Google Cloud Recomenda especificar um prefixo de nome exclusivo.

  • Para anexar as GPUs às suas VMs N1 reservadas, inclua o campo guestAccelerators .

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
    
    {
      "autoDeleteAutoCreatedReservations": AUTO_DELETE_AUTO_CREATED_RESERVATIONS,
      "name": "FUTURE_RESERVATION_NAME",
      "shareSettings": {
        "projects": [
          "CONSUMER_PROJECT_ID_1",
          "CONSUMER_PROJECT_ID_2"
        ],
        "shareType": "SPECIFIC_PROJECTS"
      },
      "specificSkuProperties": {
        "instanceProperties": {
          "guestAccelerators": [
            {
              "acceleratorCount": NUMBER_OF_ACCELERATORS,
              "acceleratorType": "ACCELERATOR_TYPE"
            }
          ],
          "machineType": "MACHINE_TYPE"
        },
        "totalCount": TOTAL_COUNT
      },
      "timeWindow": {
        "startTime": "START_TIME",
        "endTime": "END_TIME"
      }
    }
    

    Substitua o seguinte:

    • NUMBER_OF_ACCELERATORS : o número de GPUs a serem adicionadas por VM reservada.

    • ACCELERATOR_TYPE : um modelo GPU suportado para VMs N1 . Para evitar erros, verifique se o seu modelo GPU escolhido está disponível na zona em que você está criando a futura solicitação de reserva.

  • Para anexar discos SSD locais a um tipo de máquina que não inclui discos SSD locais por padrão , inclua o campo localSsds no órgão de solicitação. Você só pode anexar discos SSD locais de 375 GB.

    Por exemplo, para especificar dois discos locais de SSD ao criar uma solicitação de reserva futura, faça uma solicitação POST da seguinte forma:

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
    
    {
      "autoDeleteAutoCreatedReservations": AUTO_DELETE_AUTO_CREATED_RESERVATIONS,
      "name": "FUTURE_RESERVATION_NAME",
      "shareSettings": {
        "projects": [
          "CONSUMER_PROJECT_ID_1",
          "CONSUMER_PROJECT_ID_2"
        ],
        "shareType": "SPECIFIC_PROJECTS"
      },
      "specificSkuProperties": {
        "instanceProperties": {
          "localSsds": [
            {
              "diskSizeGb": "375",
              "interface": "INTERFACE_TYPE"
            },
            {
              "diskSizeGb": "375",
              "interface": "INTERFACE_TYPE"
            }
          ],
          "machineType": "MACHINE_TYPE"
        },
        "totalCount": TOTAL_COUNT
      },
      "timeWindow": {
        "startTime": "START_TIME",
        "endTime": "END_TIME"
      }
    }
    

    Substitua INTERFACE_TYPE pelo tipo de interface de disco que você deseja que os discos SSD locais usem e que o tipo de máquina especificado suporta . Especifique um dos seguintes valores:

    • Para a interface de disco NVME: NVME

    • Para a interface de disco SCSI: SCSI

  • Para que as VMs reservadas usem uma plataforma mínima específica da CPU em vez da plataforma CPU padrão da zona, inclua o minCpuPlatform .

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
    
    {
      "autoDeleteAutoCreatedReservations": AUTO_DELETE_AUTO_CREATED_RESERVATIONS,
      "name": "FUTURE_RESERVATION_NAME",
      "shareSettings": {
        "projects": [
          "CONSUMER_PROJECT_ID_1",
          "CONSUMER_PROJECT_ID_2"
        ],
        "shareType": "SPECIFIC_PROJECTS"
      },
      "specificSkuProperties": {
        "instanceProperties": {
          "machineType": "MACHINE_TYPE",
          "minCpuPlatform": "MINIMUM_CPU_PLATFORM"
        },
        "totalCount": TOTAL_COUNT
      },
      "timeWindow": {
        "startTime": "START_TIME",
        "endTime": "END_TIME"
      }
    }
    

    Substitua MIN_CPU_PLATFORM por uma plataforma CPU mínima. Para garantir que uma plataforma CPU esteja disponível na zona em que você esteja reservando recursos, consulte as plataformas de CPU disponíveis por zona .

  • Para excluir as reservas criadas automaticamente após o horário final do período de reserva, selecione um dos seguintes métodos:

    • Para excluir as reservas criadas automaticamente após um horário específico após o final do seu período de reserva, defina o autoDeleteAutoCreatedReservations como true e inclua o campo autoCreatedReservationsDeleteTime .

      POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
      
      {
        "autoCreatedReservationsDeleteTime": "DELETE_TIME",
        "autoDeleteAutoCreatedReservations": true,
        "name": "FUTURE_RESERVATION_NAME",
        "shareSettings": {
          "projects": [
            "CONSUMER_PROJECT_ID_1",
            "CONSUMER_PROJECT_ID_2"
          ],
          "shareType": "SPECIFIC_PROJECTS"
        },
        "specificSkuProperties": { 
          "instanceProperties": {
            "machineType": "MACHINE_TYPE"
          },
          "totalCount": TOTAL_COUNT
        },
        "timeWindow": {
          "startTime": "START_TIME",
          "endTime": "END_TIME"
        }
      }
      

      Substitua DELETE_TIME por uma data e hora em que o mecanismo de computação exclui as reservas criadas automaticamente. A data e a hora devem ser formatadas como um timestamp RFC 3339.

    • Para excluir as reservas criadas automaticamente após uma duração específica a partir do horário de início do período de reserva, defina os autoDeleteAutoCreatedReservations como true e incluir o campo autoCreatedReservationsDuration .

      POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
      
      {
        "autoCreatedReservationsDuration": {
          "seconds": "DURATION_BEFORE_DELETE"
        },
        "autoDeleteAutoCreatedReservations": true,
        "name": "FUTURE_RESERVATION_NAME",
        "shareSettings": {
          "projects": [
            "CONSUMER_PROJECT_ID_1",
            "CONSUMER_PROJECT_ID_2"
          ],
          "shareType": "SPECIFIC_PROJECTS"
        },
        "specificSkuProperties": { 
          "instanceProperties": {
            "machineType": "MACHINE_TYPE"
          },
          "totalCount": TOTAL_COUNT
        },
        "timeWindow": {
          "startTime": "START_TIME",
          "endTime": "END_TIME"
        }
      }
      

      Substitua DURATION_BEFORE_DELETE por uma duração em segundos. Por exemplo, especifique 604800 por 604.800 segundos (7 dias).

Depois de criar um rascunho de solicitação de reserva futura, você pode determinar o número de VMs que o mecanismo de computação provisionará para a solicitação .

Envie uma solicitação de rascunho

Depois que uma solicitação de reserva futura é enviada, aprovada por Google Cloude, passando pelo tempo de bloqueio, você pode excluir a reserva futura e suas reservas criadas automaticamente somente após o final do período de reserva da reserva futura. A exclusão de uma reserva futura existente é útil se você precisar criar outra reserva futura com as mesmas propriedades. Assim, antes de criar uma solicitação de reserva futura, verifique se o seguinte:

  • Quaisquer reservas existentes ou reservas futuras em um projeto restringem as configurações de compartilhamento das futuras solicitações de reserva que você pode criar. Para garantir que você possa criar com sucesso uma solicitação de reserva futura e sua solicitação não causar problemas em outros projetos, você compartilha futuras solicitações de reserva ou reservas, consulte Restrições .

  • Você deve se comprometer a pagar pelos recursos reservados que calculam as disposições do mecanismo para todo o período de reserva, independentemente de as reservas criadas automaticamente serem consumidas ou não. Para mais informações, consulte o faturamento .

Se você deseja modificar uma ou mais propriedades ao enviar o rascunho da solicitação de reserva futura de revisão, consulte Modificar futuras solicitações de reserva .

Para enviar um projeto de solicitação de reserva futura para Google Cloud Para revisão, selecione uma das seguintes opções:

Console

  1. No Google Cloud Console, vá para a página de reservas .

    Vá para reservas

  2. Clique na guia Future Reservas .

  3. Na coluna Nome , clique no nome da futura solicitação de reserva com um status de compra da elaboração .

    A página futura de reservas com os detalhes da futura solicitação de reserva é aberta.

  4. Clique em Rascunho Editar .

    A página para atualizar o rascunho da solicitação de reserva futura é aberta.

  5. Para enviar o rascunho da solicitação de reserva futura de revisão, clique em Enviar .

A página de reserva é aberta. Na coluna de status da futura solicitação de reserva que você acabou de enviar, o status de compras está definido para aprovação pendente .

gcloud

Para enviar um rascunho de solicitação de reserva futura de revisão, use o comando gcloud beta compute future-reservations update com o sinalizador --planning-status definido para SUBMITTED .

gcloud beta compute future-reservations update FUTURE_RESERVATION_NAME \
    --planning-status=SUBMITTED \
    --zone=ZONE

Substitua o seguinte:

  • FUTURE_RESERVATION_NAME : O nome de um rascunho existente de solicitação de reserva futura.

  • ZONE : a zona onde a futura solicitação de reserva está localizada.

DESCANSAR

Para enviar um rascunho de solicitação de reserva futura, faça uma solicitação PATCH ao método beta.futureReservations.update . No órgão de solicitação, inclua o campo planningStatus e defina -o como SUBMITTED .

PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations/FUTURE_RESERVATION_NAME?updateMask=planningStatus

{
  "name": "FUTURE_RESERVATION_NAME",
  "planningStatus": "SUBMITTED"
}

Substitua o seguinte:

  • PROJECT_ID : o ID do projeto em que a futura solicitação de reserva está localizada.

  • ZONE : a zona onde a futura solicitação de reserva está localizada.

  • FUTURE_RESERVATION_NAME : O nome de um rascunho existente de solicitação de reserva futura.

Depois de enviar um rascunho de uma solicitação de reserva futura de revisão, você pode fazer o seguinte:

Solucionar problemas

Se você se deparar com erros ao criar uma solicitação de reserva futura, consulte como solucionar problemas de solicitações de reserva futuras .

Se você ainda encontrar problemas após a solução de problemas, entre em contato com o gerente de conta técnica ou a equipe de vendas .

O que vem a seguir