Descontos por uso contínuo com base em recursos


O Compute Engine oferece descontos por compromisso de uso (CUDs) com base em recursos a cargas de trabalho previsíveis para ajudar a reduzir os custos dos recursos necessários. É possível adquirir e renovar contratos ou compromissos de uso com base em recursos em troca de preços com grandes descontos para o uso de VMs.

Neste documento, oferecemos informações sobre os compromissos com base em recursos, como comprá-los e os CUDs resultantes.

Para saber mais sobre CUDs com base em gastos para o Compute Engine, consulte CUDs flexíveis do Compute.

Os compromissos baseados em recursos são ideais para o uso previsível e estável. Esses compromissos não exigem pagamento antecipado. O Compute Engine permite comprar as seguintes categorias de compromissos baseados em recursos:

Os compromissos de recursos de hardware são separados dos compromissos de licenças. É possível comprar as duas categorias de compromissos para uma instância de VM, mas não é possível comprar um único compromisso que englobe recursos de hardware e licenças.

Antes de começar

  • 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:

    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. 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 funcionam os descontos por uso contínuo

Ao adquirir um contrato de compromisso de uso, você compra recursos do Compute Engine, como vCPUs, memória, GPUs, discos SSDs locais e nós de locatário individual, a um preço com desconto em troca do compromisso de pagamento desses recursos por um ou três anos. O desconto é de até 55% para a maioria dos recursos, como tipos de máquina ou GPUs. O desconto é de até 70% para tipos de máquina com otimização de memória. Confira os preços do compromisso de uso em diferentes tipos de máquina em Preços de instâncias de VM.

Durante a vigência do compromisso, você começa automaticamente a receber CUDs sobre o uso qualificado de recursos no projeto que corresponde aos tipos de recurso, tipo de máquina e região especificados no compromisso. Você continuará recebendo esses CUDs para o uso de recursos qualificados até que o compromisso expire.

O Compute Engine mantém uma garantia no seu projeto para cada região do projeto em que você adquire um compromisso. Quando você adquire um novo compromisso para qualquer região do projeto, o Compute Engine associa a garantia dessa região ao compromisso recém-criado.

Não é possível cancelar um compromisso de licença após a compra. O compromisso expira ao final da vigência especificada, de um ou três anos. No entanto, é possível ativar a renovação automática no seu compromisso para garantir que ele seja renovado automaticamente para um novo período.

Status do compromisso

O compromisso pode ter um dos seguintes status:

  • CREATING: o compromisso está sendo criado.
  • NOT_YET_ACTIVE ou PENDING: ele foi criado, mas ainda não está ativo. O Compute Engine cria compromissos com esse status.

    • Se você estiver usando a Google Cloud CLI ou a API REST para comprar o compromisso, esse valor de status será exibido como NOT_YET_ACTIVE.
    • Se você estiver usando o console do Google Cloud para adquirir seu compromisso, esse valor de status será exibido como PENDING.
  • ACTIVE: o compromisso está ativo.

  • EXPIRED: ele expirou. O Compute Engine reserva o direito de remover compromissos expirados há mais de 210 dias a partir da data de validade.

  • CANCELED: o Compute Engine cancelou o compromisso. O Compute Engine altera o status dos compromissos para CANCELED quando você os combina para criar um novo compromisso mesclado.

Entre o momento da compra do compromisso e o momento de ativação, o status dele permanece como NOT_YET_ACTIVE (ou como PENDING no console do Google Cloud). Após a ativação, o status do compromisso mudará para ACTIVE. Por exemplo, suponha que você compre o compromisso em 20 de janeiro às 22h nos EUA e no horário do Pacífico canadense (UTC-8 ou UTC-7). O Compute Engine cria seu compromisso imediatamente com o status dele como NOT_YET_ACTIVE. No entanto, seu compromisso passa a ser ACTIVE apenas em 21 de janeiro à 0h dos EUA e do Horário do Pacífico canadense (UTC-8 ou UTC-7).

Compromissos de hardware

Os compromissos de hardware se aplicam apenas à região e à série de famílias de máquinas específicas que você comprou. Em troca, você recebe descontos nos preços agregados de todos os recursos de hardware qualificados para a série de máquinas nessa região. Esses recursos de hardware incluem vCPUs, memória, GPUs e discos SSD locais.

A compra de um compromisso não afeta as configurações da VM. Seus CUDs se aplicam ao número agregado de vCPUs, memória, GPUs e discos SSD locais de uma série de máquinas específica em uma região. Consequentemente, os CUDs que você recebe com relação a um compromisso não são afetados por mudanças na configuração da máquina da VM, desde que os recursos sejam abrangidos por esse compromisso.

Ao adquirir um compromisso para uma série de máquinas específica, você se qualifica para CUDs em todos os tipos de máquinas de VM, independentemente do tamanho da VM ou do modelo de locação, incluindo todos os tipos de máquina predefinidos e personalizados e nós de locatário individual. Para mais informações sobre os tipos de recursos qualificados para cada série de máquinas, consulte Tipos de compromisso de hardware.

Uso eficiente dos seus compromissos

Se você tiver apenas alguns projetos, será possível adquirir compromissos apenas para os recursos específicos que você pretende usar. Por exemplo, se você adquirir um compromisso de 8 núcleos e executar 24 durante o mês, receberá descontos por uso contínuo para 8 núcleos. Os outros 16 núcleos serão faturados com taxas padrão por uso não contínuo. Lembre-se de que, depois de comprar uma quantidade definida de compromissos, você receberá cobranças por eles mensalmente, mesmo que não os use. Por exemplo, se você comprar compromissos de 8 núcleos, pagará as taxas pelo uso contínuo desses 8 núcleos durante todo o mês, mesmo que só os tenha executado durante um curto período. Desse modo, só é vantajoso adquirir compromissos em incrementos que você sabe que vai usar.

Não é possível empilhar compromissos para cenários de burst. Por exemplo, se você comprou 10 núcleos por um mês e depois executou 20 núcleos durante metade do mês, seus compromissos não se aplicarão aos 20 núcleos completos porque o uso deles ocorreu somente por metade do mês.

Uso excedente

Qualquer uso de recursos por hora que não seja coberto pelos compromissos será cobrado com base nas taxas sob demanda e poderá se qualificar para descontos por uso prolongado (SUDs). Por exemplo, considere um compromisso de 2 vCPUs e 8 GB de memória que pertencem à série de máquinas N2. Suponha que você use esse compromisso para comprar e executar uma VM de n2-standard-2 (2 vCPUs e 8 GB de memória) por parte do mês e, em seguida, executar uma VM n2-standard-8 (8 vCPUs e 32 GB de memória) pelo restante do mesmo mês. Nesse cenário, o Compute Engine combina o uso das duas VMs e aplica automaticamente os SUDs aplicáveis a qualquer uso de recursos que não seja coberto pelo compromisso.

Combinar reservas com compromissos

Um compromisso fornece um contrato de preço com desconto de um ou três anos, mas não reserva capacidade em uma zona específica. Uma reserva garante que a capacidade seja mantida em uma zona específica, mesmo que as VMs reservadas não estejam em execução. Para conseguir recursos zonais a preços com desconto e também garantir que a capacidade seja reservada para eles, você precisa adquirir compromissos e criar reservas para esses recursos zonais.

Também é possível anexar reservas aos compromissos baseados em recursos para garantir que as reservas sejam específicas a esses compromissos. Quando você se compromete a recursos de GPU ou SSD local, também é necessário reservá-los e anexar essas reservas ao compromisso.

Saiba mais em Como combinar reservas com descontos por compromisso de uso.

Compartilhar descontos por compromisso de uso entre projetos

Por padrão, os descontos por compromisso de uso são aplicados no nível do projeto, e você recebe os descontos por compromisso de uso aplicáveis somente para o projeto em que adquiriu o compromisso. Se você mover o projeto para o qual comprou seus compromissos para uma conta diferente do Cloud Billing, continuará recebendo os descontos por compromisso de uso aplicáveis a esse projeto na nova conta.

No entanto, o Compute Engine permite compartilhar descontos para compromissos de hardware entre vários projetos que compartilham a mesma conta do Cloud Billing. O compartilhamento dos descontos por uso contínuo em todos os projetos reduz a sobrecarga do gerenciamento de descontos por projeto e maximiza a economia ao agrupar todos os descontos no uso de recursos dos projetos.

Se você tiver vários projetos que compartilham a mesma conta do Cloud Billing, poderá ativar o compartilhamento de desconto por compromisso de uso para que todos os projetos na conta compartilhem todos os contratos de desconto por compromisso de uso.

Por exemplo, você compra dois compromissos para 80 núcleos cada (um total de 160 núcleos) e executa 200 núcleos durante o mês em diferentes projetos na conta do Cloud Billing. Se você tiver ativado o compartilhamento de desconto por compromisso de uso da sua conta do Cloud Billing, receberá os descontos por compromisso de uso aplicáveis para 160 desses 200 núcleos usados nos projetos dessa conta. Os outros 40 núcleos serão faturados de acordo com as taxas de uso sob demanda e não compromissadas. Após a compra dos compromissos, seus recursos compromissados serão faturados mensalmente durante todo o período de compromisso, mesmo que você não use os recursos. Consulte Noções básicas sobre o compartilhamento de descontos para conferir as recomendações de utilização econômica.

Os descontos por uso contínuo estão sujeitos ao preço e faturamento baseados em compromisso do Google Cloud. Ao adquirir esse desconto, você concorda com os termos.

Usar a atribuição para alocar descontos

Atribuição refere-se a como os descontos por uso contínuo são alocados nos projetos. Essas alocações são refletidas nas interfaces de gerenciamento de custos do Cloud Billing, como a exportação de custos de uso ou o console do Google Cloud.

A atribuição se aplica somente quando o compartilhamento de descontos está ativado. Você pode escolher o tipo de atribuição que quer usar antes de ativar o compartilhamento de descontos e, em seguida, ativar a configuração de atribuição ao ativar o compartilhamento de descontos.

Os compromissos do Compute Engine usam a atribuição proporcional por padrão. Os compromissos de atribuição proporcional são aplicados aos projetos de acordo com a quantidade do uso qualificado total consumido por cada projeto. Por exemplo, se o projeto A consumisse US$ 75 de uso e o projeto B consumisse US$ 25, o projeto A seria coberto por até 75% do crédito disponível e o projeto B seria coberto por até 25%.

Como alternativa, é possível escolher a atribuição priorizada para os compromissos do Compute Engine com base no uso especificado. Todos os compromissos não priorizados restantes são aplicados proporcionalmente ao uso qualificado nos projetos restantes. O valor total das cotas não pode exceder o valor do compromisso adquirido.

Para escolher a atribuição proporcional ou priorizada para compromissos do Compute Engine, consulte Escolher atribuição para compromissos baseados em recursos.

Especificações

  • Só é possível comprar compromissos baseados em recursos em uma região específica se você tiver cota disponível para essa região e para os seguintes itens:

    • Compromissos
    • Recursos confirmados (exceto a memória)

    Para mais informações, consulte Cotas para compromissos e recursos confirmados.

  • É necessário adquirir os compromissos por região.

  • Para gerenciar compromissos com a CLI gcloud, use gcloud na versão 147.0.0 ou mais recente. Para atualizar a CLI gcloud para a versão mais recente:

    gcloud components update
    

    Para verificar a versão da CLI gcloud que você está executando:

    gcloud version
    

Restrições

Estas restrições se aplicam a CUDs baseados em recursos:

  • Os projetos que estão no período do nível gratuito com crédito e projetos de nível gratuito que não têm histórico de pagamentos não estão qualificados para os descontos por compromisso de uso.
  • Só é possível adquirir compromissos por região.
  • Não é possível alterar o projeto para o qual você comprou um compromisso. Caso queira compartilhar o desconto com vários projetos, ative o compartilhamento de desconto.

  • Para compromissos compartilhados entre projetos em uma Conta de faturamento do Cloud: se alguma parte do compromisso não for usada, a cobrança restante permanecerá no projeto que adquiriu essa parte do compromisso.

  • Os descontos por compromisso de uso não se aplicam a instâncias de VM preemptivas, Tipos de máquina com núcleo compartilhado N1 ou memória estendida.

  • No caso dos tipos de máquinas que dão suporte ao desempenho de rede por VM Tier_1, os SKUs de maior largura de banda são excluídos dos CUDs.

  • As máquinas com núcleo compartilhado f1-micro e g1-small não estão qualificadas para CUDs.

  • Para preços com desconto por uso contínuo para GPUs e discos SSD locais, é preciso reservar seus recursos e anexar essas reservas ao seu compromisso.

  • Se uma reserva for anexada a um desconto por uso contínuo, ela não poderá ser excluída durante o prazo do compromisso.

Preços

O faturamento do compromisso será feito mensalmente, e sua taxa mensal precisa ser paga mesmo que você não use todos os recursos comprometidos. A taxa de compromisso é a soma dos preços com desconto de todos os recursos comprometidos. O Compute Engine calcula o preço com desconto de cada recurso usando o preço sob demanda prevalecente no dia em que o compromisso é ativado. A taxa de compromisso mensal e os preços com desconto dos recursos permanecerão iguais até o final do prazo do compromisso, mesmo que os preços sob demanda sofram alteração.

Se você usar compromissos para executar tipos de máquina personalizados, o Compute Engine vai cobrar um valor extra de 5% sobre os preços dos compromissos. O Compute Engine cobra esse valor extra pela parcela e duração do seu compromisso de executar essas VMs de tipo de máquina personalizado.

O preço com desconto (também conhecido como preço de CUD) para instâncias de VM, com ou sem GPUs e discos SSD locais, varia de acordo com a região. Para ver as taxas atuais, consulte Preços de instâncias de VM.

Se você mover o projeto para o qual comprou compromissos para uma conta de faturamento do Cloud diferente, você continuará recebendo descontos por compromisso de uso para esse projeto em a nova conta do Cloud Billing. Saiba mais sobre como alterar a conta do Cloud Billing em um projeto.

Tipos de compromisso de hardware

É possível adquirir compromissos para os recursos a seguir.

Tipos de compromisso Recursos para os quais é possível adquirir descontos Aplicável aos tipos de recurso a seguir
Compromissos de uso geral E2
  • vCPUs
  • Memória
Todos os tipos de máquina E2
Compromissos de uso geral N2
  • vCPUs
  • Memória
  • SSD local
  • Todos os tipos de máquina N2
  • Todos os tipos de nó de locatário individual N2
Compromissos de uso geral N2D
  • vCPUs
  • Memória
  • SSD local
  • Todos os tipos de máquina N2D
  • Todos os tipos de nó de locatário individual N2D
Compromissos de uso geral N4
  • vCPUs
  • Memória
  • Todos os tipos de máquina N4
  • Todos os tipos de nó de locatário individual N4
Compromissos de uso geral C4
  • vCPUs
  • Memória
  • Todos os tipos de máquina C4
  • Todos os tipos de nó de locatário individual C4
Compromissos C3 de uso geral
  • vCPUs
  • Memória
  • SSD local
  • Todos os tipos de máquina C3
  • Todos os tipos de nó de locatário individual C3
Compromissos de uso geral C3D
  • vCPUs
  • Memória
  • SSD local
  • Todos os tipos de máquina C3D
  • Todos os tipos de nó de locatário individual C3D
Compromissos de uso geral de Tau T2D
  • vCPUs
  • Memória
Tipos de máquina Tau T2D padrão
Compromissos de uso geral N1
  • vCPUs
  • Memória
  • GPUs
  • SSD local
  • Todos os tipos de máquina N1, excluindo o núcleo compartilhado.
  • Todos os tipos de nó de locatário individual N1
  • GPUs:
    • NVIDIA T4
    • NVIDIA V100
    • NVIDIA P100
    • NVIDIA P4
Compromissos Z3 com otimização de armazenamento
  • vCPUs
  • Memória
  • SSD local
  • Todos os tipos de máquina Z3
Compromissos H3 com otimização para computação
  • vCPUs
  • Memória
  • Todos os tipos de máquina H3
Compromissos C2 com otimização de computação
  • vCPUs
  • Memória
  • SSD local
  • Todos os tipos de máquina C2
  • Todos os tipos de nó de locatário individual C2
Compromissos C2D com otimização de computação
  • vCPUs
  • Memória
  • SSD local
Todos os tipos de máquina C2D
Compromissos M1/M2 com otimização de memória
  • vCPUs
  • Memória
  • SSD local
  • Todos os tipos de máquina M1 e M2
  • Todos os tipos de nó de locatário individual M1 e M2
  • Não se aplica a SKUs Premium de upgrade com otimização de memória
Compromissos M3 com otimização de memória
  • vCPUs
  • Memória
  • SSD local
Todos os tipos de máquina M3
Compromissos A2 otimizados para aceleradores
  • vCPUs
  • Memória
  • GPUs
  • SSD local
  • Todos os tipos de máquina A2
  • GPUs:
    • NVIDIA A100
Compromissos A3 otimizados para aceleradores
  • vCPUs
  • Memória
  • GPUs
  • SSD local
  • Todos os tipos de máquina A3
  • GPUs:
    • NVIDIA H100
Compromissos G2 otimizados para aceleradores
  • vCPUs
  • Memória
  • GPUs
  • SSD local
  • Todos os tipos de máquina G2
  • Todos os tipos de nó de locatário individual da G2
  • GPUs:
    • NVIDIA L4

Não é possível adquirir compromissos para tipos de máquinas f1-micro ou g1-small e para a cobrança premium de locatário individual.

Compromissos para tipos de máquina do Compute Engine

O Google Cloud oferece compromissos baseados em recursos para recursos de hardware de várias séries de famílias de máquinas do Compute Engine. Compre o tipo de compromisso adequado para os tipos de máquina que você planeja usar.

Tipos de máquinas de uso geral

Os CUDs para tipos de máquinas de uso geral são aplicados aos recursos na seguinte ordem:

  1. Tipos de máquina personalizados N4, N2, N2D, E2 ou N1, de acordo com o compromisso adquirido.
  2. Nós de locatário individual
  3. Tipos de máquina predefinidos E2, N2, N2D, N4, C4, C3, C3D, Tau T2D ou N1, de acordo com o compromisso adquirido.

Ao adquirir compromissos para tipos de máquina de uso geral, você escolhe a quais séries de máquinas o compromisso se aplica. Por exemplo, se você comprar compromissos de uso geral E2, eles se aplicarão apenas aos tipos de máquina E2. Da mesma forma, se você comprar compromissos de uso geral N2, N2D, N4, C4, C3, C3D, Tau T2D ou N1, eles nunca irão se sobrepor.

Por exemplo, vamos supor que você tenha uma região com a combinação a seguir:

  • 10 vCPUs com tipo de máquina personalizado N2
  • Memória de 30 GB com tipo de máquina personalizado
  • 2 tipos de máquina predefinidos n2-standard-4

Você compra compromissos N2 para 15 vCPUs e 13,5 GB de memória para uso contínuo. Os CUDs serão aplicados primeiro aos tipos de máquina personalizados N2 e os descontos restantes serão aplicados aos tipos de máquina predefinidos N2. Nesse caso, todas as 10 vCPUs dos tipos de máquina personalizados N2 e os 13,5 GB de memória do tipo de máquina personalizado seriam cobrados com os preços de uso contínuo.

Os descontos para as 5 vCPUs restantes se aplicam a 5 vCPUs aleatórias nos dois tipos de máquina n2-standard-4 machine. Qualquer uso de recursos que não seja coberto pelos compromissos pode se qualificar para os SUDs aplicáveis.

Além disso, se você usar compromissos para executar tipos de máquina personalizados, o Compute Engine vai cobrar um valor extra de 5% sobre os preços dos compromissos. O Compute Engine cobra esse valor extra pela parcela e duração do seu compromisso de executar essas VMs de tipo de máquina personalizado.

Os compromissos são agregados por série de máquinas. Se você não tem certeza de quantos compromissos adquirir, uma opção é comprar um número menor de compromissos e adicionar mais conforme necessário. Por exemplo, é possível comprar vários contratos de 10 vCPUs e zero de memória e, em seguida, adquirir contratos separados para memória extra.

Para adquirir um compromisso para tipos de máquinas de uso geral, consulte Comprar compromissos sem reservas anexadas e Comprar compromissos com reservas anexadas.

Tipos de máquina com otimização de memória

Os CUDs para tipos de máquina com otimização de memória estão disponíveis em dois níveis. Um nível se aplica a tipos de máquina M1 e M2. O outro nível se aplica apenas aos tipos de máquinas M3. Não é possível usar o mesmo compromisso para todos os tipos de máquina com otimização de memória.

As SKUs Premium de núcleo e RAM do upgrade com otimização de memória, que são específicas para os tipos de máquina M2, não são qualificadas para CUDs. Os preços desses SKUs são incorporados às taxas documentadas na página de preços das instâncias de VM e na calculadora de preços.

Se você pretende usar tipos de máquinas com otimização de memória, compre compromissos de otimização de memória. Para adquirir um compromisso para tipos de máquina com otimização de memória, consulte Comprar compromissos sem reservas anexadas.

Tipos de máquina com otimização para armazenamento

Para adquirir compromissos para tipos de máquina Z3 com otimização para armazenamento, consulte Comprar compromissos sem reservas anexadas e Comprar compromissos com reservas anexadas.

Tipos de máquinas otimizados para computação

Para comprar compromissos para tipos de máquina otimizados para computação, consulte uma das seguintes opções:

Tipos de máquina com otimização para aceleradores

As VMs com otimização para aceleradores têm um modelo específico e um número de GPUs NVIDIA anexadas. Ao comprar compromissos para esses tipos de máquina, também é necessário reservar as GPUs do compromisso e anexar essas reservas aos compromissos. Para adquirir um compromisso para os tipos de máquina A3, A2 ou G2, consulte Comprar compromissos com reservas anexadas.

Compromissos para GPUs e recursos de disco SSD local

Para adquirir compromissos para GPUs, discos SSD locais ou ambos, também é necessário reservar os recursos e anexar as reservas ao seu compromisso. A reserva desses recursos é necessária para garantir que eles estejam sempre disponíveis para você, quer sejam usados ou não. Não há qualquer outra cobrança pela reserva dos recursos.

Você precisa adquirir compromissos por tipos específicos de GPU. Por exemplo, é possível comprar GPUs para NVIDIA P100s ou NVIDIA V100s, mas não é possível adquirir compromissos para as GPUs NVIDIA P100 e aplicá-las a outros tipos de GPU.

Para adquirir um compromisso para GPUs, discos SSD locais ou ambos, consulte Compromissos de compra com reservas anexadas neste documento.

Para saber mais sobre compromissos com reservas anexadas, consulte Anexar reservas a compromissos baseados em recursos.

Cotas para compromissos e recursos confirmados

Só é possível comprar compromissos baseados em recursos em uma região específica se você tiver cota disponível para essa região e para os seguintes itens:

  • Compromissos
  • Recursos confirmados (exceto a memória)

Especificamente, para adquirir compromissos para qualquer vCPU, GPU ou discos SSD locais, é preciso ter uma cota disponível para compromissos e para as SKUs confirmadas específicas na região em que você quer adquirir o compromisso. Não há cota na memória. Portanto, não é necessário ter uma cota separada para que a memória confirmada compre um compromisso de memória.

Por exemplo, para adquirir cinco compromissos que abrangem 32 vCPUs do tipo de máquina N1 de uso geral, 16 GB de memória, 4 GPUs NVIDIA P4 e 2 discos SSDs locais na região us-central1, é preciso ter cota para cada um dos seguintes itens:

  • Cinco compromissos em us-central1
  • 32 vCPUs N1 confirmadas em us-central1
  • Quatro GPUs NVIDIA P4 confirmadas em us-central1
  • 750 GB (ou dois discos SSD locais) de espaço em disco SSD local confirmado em us-central1

Limites de cotas

Por padrão, o Compute Engine oferece uma quantidade específica de cota de compromisso para cada tipo de recurso confirmado. Esses limites de cota determinam o número de compromissos que é possível comprar e a quantidade de recursos com os quais você pode se comprometer. Para saber como ver os limites e os valores de uso para seus compromissos e recursos confirmados, consulte Ver cotas no Console do Google Cloud.

Se você paga constantemente uma quantidade muito alta de vCPUs confirmadas pelos projetos em diferentes regiões, talvez atenda aos requisitos para a cota ilimitada das suas vCPUs confirmadas para todos os tipos de máquina (exceto para aqueles com otimização de memória) em todas as regiões.

Se você usar toda a cota de compromisso, não será possível comprar novos compromissos. Da mesma forma, se você esgotar sua cota de recursos confirmados, não será possível adquirir um novo compromisso para esse recurso, mesmo que você tenha cota disponível. Por exemplo, se você usou toda a cota de compromisso, o servidor retornará o seguinte erro quando você fizer um pedido de aprovação de compra de compromisso:

"Quota 'COMMITMENTS' exceeded. Limit: 0.0"

Aumentar os limites de cota

Se você não tiver cota suficiente para seus compromissos ou recursos comprometidos, solicite um aumento de cota na página "Cotas". É possível solicitar aumentos de cota a qualquer momento. Para saber como enviar uma solicitação de aumento dos limites de cota de recursos, consulte Solicitar um limite de cota maior.

Por exemplo, considere um cenário em que você adquiriu dois compromissos para um total de quatro GPUs NVIDIA V100 em us-central1 e atingiu os limites de cota. região. Suponha que você queira comprar dois novos compromissos para dois NVIDIA V100 GPUs cada na mesma região. Faça o seguinte:

  1. Envie uma nova solicitação para aumentar sua cota Committed NVIDIA V100 GPUs em us-central1 para o novo número máximo (8) desejado.
  2. Envie uma nova solicitação de aumento de sua cota Commitments em us-central1 para corresponder ao novo número máximo (4) desejado.

    Aguarde a aprovação e o encerramento das solicitações. Depois que as solicitações são aprovadas, o compromisso e as cotas de GPU confirmadas em us-central1 aumentam para corresponder às novas necessidades. Em seguida, será possível comprar os novos compromissos.

Se você fizer uma solicitação para um aumento no limite de cota de um recurso que já tem cota ilimitada por padrão, o valor da cota para esse recurso permanecerá ilimitado e você será notificado de que o limite solicitado é inferior ao limite aprovado.

Definir um limite para os limites de cota

É possível definir um limite para o valor da cota dos seus recursos confirmados criando uma substituição de cota do consumidor. Para recursos com cota ilimitada por padrão, a criação de uma substituição de cota do consumidor diminui o valor da cota. Para retornar a cota padrão ao valor ilimitado, remova a substituição do consumidor definida para as SKUs confirmadas. Para mais informações, consulte Como criar uma substituição de cota do consumidor e Como excluir uma substituição de cota do consumidor.

Para saber mais sobre como gerenciar cotas dos recursos, consulte Visualizar e gerenciar cotas.

Comprar compromissos sem reservas anexadas

É possível adquirir compromissos para vCPUs, memória ou ambos sem anexar reservas para esses recursos. É possível comprar esses compromissos usando o Console do Google Cloud, a CLI gcloud ou a API.

Para saber mais sobre compromissos com reservas anexadas, consulte Anexar reservas a compromissos baseados em recursos.

Para adquirir compromissos para GPUs, discos SSDs locais ou ambos, consulte Compromissos de compra com reservas anexadas.

Por padrão, os proprietários do projeto têm permissão para adquirir contratos de desconto por uso contínuo. No entanto, é possível que os proprietários criem papéis personalizados que incluam ou excluam determinados usuários. Leia sobre o controle de acesso para garantir que você tenha permissão para adquirir um contrato de desconto por uso contínuo.

Depois de adquirir um compromisso, ele ficará ativo no dia seguinte à 0h dos EUA e do Horário do Pacífico canadense (UTC-8 ou UTC-7 durante o horário de verão). O Compute Engine mantém uma garantia no seu projeto para cada região do projeto em que você adquire um compromisso. Quando você adquire um novo compromisso para qualquer região do projeto, o Compute Engine associa a garantia dessa região ao compromisso recém-criado.

Entre o momento da compra do compromisso e o momento de ativação, o status dele permanece como NOT_YET_ACTIVE (ou como PENDING no console do Google Cloud). Após a ativação, o status do compromisso mudará para ACTIVE. Por exemplo, suponha que você compre o compromisso em 20 de janeiro às 22h nos EUA e no horário do Pacífico canadense (UTC-8 ou UTC-7). O Compute Engine cria seu compromisso imediatamente com o status dele como NOT_YET_ACTIVE. No entanto, seu compromisso passa a ser ACTIVE apenas em 21 de janeiro à 0h dos EUA e do Horário do Pacífico canadense (UTC-8 ou UTC-7).

Os descontos são aplicados automaticamente às instâncias na região especificada e aos projetos em que esses descontos são comprados.

Console

Antes de adquirir um compromisso usando o console do Google Cloud, selecione o projeto que você quer usar para adquirir o compromisso. Se o compartilhamento de CUDs estiver ativado para uma conta do Cloud Billing, será possível adquirir o compromisso usando qualquer projeto dessa conta. Depois de selecionar o projeto, faça o seguinte:

  1. No Console do Google Cloud, acesse a página Desconto por compromisso de uso.

    Acesse "Descontos por uso contínuo"

  2. Para adquirir um compromisso, clique em Comprar compromisso. A página Comprar um desconto por compromisso de uso é aberta e mostra a guia Hardware.

  3. No campo Nome, insira um nome para o compromisso.

  4. No campo Região, selecione a região em que você quer usar os recursos do Compute Engine relativos ao compromisso.

  5. No campo Tipo de compromisso, selecione a série da família de máquinas para os recursos do compromisso. Para vCPUs, memória ou ambas, é possível escolher dos seguintes tipos de compromisso:

    • A2 com otimização do acelerador para recursos do tipo de máquina A2
    • A3 com otimização para aceleradores para recursos do tipo de máquina A3 High
    • A3 Mega com otimização para aceleradores para recursos do tipo de máquina A3 Mega
    • C2 com otimização para computação para recursos do tipo de máquina C2
    • C2D com otimização para computação para recursos do tipo de máquina C2D
    • H3 com otimização para computação para recursos de tipo de máquina H3
    • Uso geral C3 para recursos do tipo de máquina C3
    • C3D de uso geral para recursos do tipo de máquina C3D
    • Uso geral C4 para recursos do tipo de máquina C4
    • Uso geral E2 para recursos do tipo de máquina E2
    • Uso geral N1 para recursos do tipo de máquina N1
    • Uso geral N2 para recursos do tipo de máquina N2
    • Uso geral N2D para recursos do tipo de máquina N2D
    • Uso geral N4 para recursos do tipo de máquina N4
    • T2D de uso geral para recursos do tipo de máquina Tau T2D
    • G2 com otimização gráfica para recursos do tipo de máquina G2
    • M1/M2 com otimização de memória para recursos dos tipos de máquina M1 e M2
    • M3 com otimização de memória para recursos do tipo de máquina M3
    • Z3 com otimização para armazenamento para recursos do tipo de máquina Z3

  6. Em Duração, escolha 1 ano ou 3 anos como a duração do compromisso.

  7. No campo Núcleos, insira o número de vCPUs que você quer vincular ao compromisso.

  8. No campo Memória, insira a quantidade de memória em GB que você quer vincular ao compromisso.

  9. Para concluir a compra do compromisso, faça o seguinte:

    1. Clique em Comprar.
    2. Na caixa de diálogo Comprar um desconto por compromisso de uso, se você concordar com os termos específicos do serviço, clique novamente em Comprar.

gcloud

Usando a CLI gcloud, execute o comando gcloud compute commitments create:

gcloud compute commitments create COMMITMENT_NAME \
    --region REGION \
    --project PROJECT_ID \
    --resources vcpu=NUMBER_VCPUS,memory=MEMORY \
    --plan DURATION \
    --type COMMITMENT_TYPE

Substitua:

  • COMMITMENT_NAME: o nome para identificar o compromisso.
  • REGION: a região a que esse compromisso se aplica. Cada uma delas tem preços de compromisso diferentes. Para preços atuais, consulte a tabela de preços;
  • PROJECT_ID: o ID do projeto em que você quer criar o compromisso.
  • NUMBER_VCPUS: o número de vCPUs para as quais você quer adquirir compromissos. O número de vCPUs precisa ser um número inteiro de 0 ou mais, par ou ímpar.
  • MEMORY: a quantidade, em MB ou GB, de memória para a qual você quer adquirir compromissos. Por exemplo, 1000MB. Se as unidades não forem especificadas, a unidade padrão usada será GB. A memória pode ser adquirida em incrementos de 0,25 GB.
  • DURATION: o termo do compromisso, 12-month ou 36-month.
  • COMMITMENT_TYPE pode ser:

    • accelerator-optimized para recursos do tipo de máquina A2
    • accelerator-optimized-a3 para recursos do tipo de máquina A3 High
    • accelerator-optimized-a3-mega para recursos do tipo de máquina A3 Mega
    • compute-optimized para recursos do tipo de máquina C2
    • compute-optimized-c2d para recursos do tipo de máquina C2D
    • compute-optimized-c3 para recursos do tipo de máquina C3
    • compute-optimized-c3d para recursos do tipo de máquina C3D
    • compute-optimized-h3 para recursos do tipo de máquina H3
    • general-purpose para recursos do tipo de máquina N1
    • general-purpose-c4 para recursos do tipo de máquina C4
    • general-purpose-e2 para recursos do tipo de máquina E2
    • general-purpose-n2 para recursos do tipo de máquina N2
    • general-purpose-n2d para recursos de máquina N2D
    • general-purpose-n4 para recursos do tipo de máquina N4
    • general-purpose-t2d para recursos do tipo de máquina Tau T2D
    • graphics-optimized para recursos do tipo de máquina G2
    • memory-optimized para recursos de tipo de máquina M1 ou M2
    • memory-optimized-m3 para recursos do tipo de máquina M3
    • storage-optimized-z3 para recursos do tipo de máquina Z3

    Se você não especificar a flag --type, o valor padrão usado será general-purpose.

Exemplos

  • Para criar um compromisso de uso geral para os tipos de máquina N1, use o exemplo a seguir:

    gcloud compute commitments create example-commitment --region us-central1 \
      --resources vcpu=5,memory=33280MB --plan 12-month \
      --project=myproject
    
  • Para criar um compromisso com otimização para computação, use o comando gcloud compute commitments create, que adquire um compromisso de um ano para um tipo de máquina otimizado para computação:

    gcloud compute commitments create example-compute-optimized-commitment \
      --region us-central1 --resources vcpu=2,memory=3814GB --plan 12-month \
      --type compute-optimized --project=myproject
    
  • Para criar um compromisso com otimização de memória:

    gcloud compute commitments create example-memory-optimized-commitment \
      --region us-central1 --resources vcpu=96,memory=1434MB \
      --plan 12-month --type memory-optimized \
      --project=myproject
    
  • Para criar um compromisso otimizado para aceleradores, é preciso adquirir o compromisso com uma reserva anexada compatível usando o comando gcloud compute commitments create. Também é preciso especificar o número total de recursos necessários, incluindo GPUs.

    Ao criar compromissos de GPU, é necessário especificar os flags --accelerator e --resources-accelerator. A sinalização --accelerator especifica o número de GPUs anexadas a cada VM. O flag --resources-accelerator especifica o número total de GPUs no compromisso.

    Por exemplo, o compromisso a seguir inclui 96 vCPUs, 680 GB de memória, 8 GPUs e uma reserva a ser usada em duas VMs em us-central1-a.

    gcloud compute commitments create example-accelerator-optimized-commitment \
      --region=us-central1 \
      --project=myproject \
      --resources=vcpu=96,memory=680GB \
      --resources-accelerator=count=8,type=nvidia-tesla-a100 \
      --plan 12-month \
      --type accelerator-optimized \
    
      --reservation=reservation-01 \
      --reservation-zone=us-central1-a \
      --machine-type=a2-highgpu-4g \
      --accelerator=count=4,type=nvidia-tesla-a100 \
      --vm-count=2
    
    
  • Para criar um compromisso de GPUs, discos SSD locais ou ambos, é preciso comprar o compromisso com uma reserva anexada usando o comando gcloud compute commitments create.

    Ao criar compromissos de GPU, é necessário especificar os flags --accelerator e --resources-accelerator. A sinalização --accelerator especifica o número de GPUs anexadas a cada VM. O flag --resources-accelerator especifica o número total de GPUs no compromisso.

    Por exemplo, o compromisso a seguir inclui quatro GPUs e uma reserva para essas GPUs a serem usadas em duas instâncias em us-central1-a.

    gcloud compute commitments create example-reservation-commitment \
      --region=us-central1 \
      --project=myproject \
      --resources=vcpu=96,memory=624GB \
      --resources-accelerator=type=nvidia-tesla-v100,count=4 \
      --plan 12-month \
      
      --reservation=reservation-01 \
      --reservation-zone=us-central1-a \
      --machine-type=n1-standard-32
      --accelerator=type=nvidia-tesla-v100,count=2 \
      --vm-count=2
      
    

REST

Na API, faça uma solicitação POST para o método regionCommitments.insert, com um corpo de solicitação que contenha informações sobre o compromisso:

https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments?requestId=OPTIONAL_UNIQUE_ID

O corpo do recurso precisa conter o seguinte:

  • name como o nome do compromisso
  • plan como o termo do compromisso, seja de TWELVE_MONTH ou THIRTY_SIX_MONTH
  • resources para especificar o volume de memória e vCPU. A memória precisa ser especificada em MB. É necessário especificar VCPU e MEMORY na seção resources.
  • type de compromisso, uma das seguintes opções:

    • ACCELERATOR_OPTIMIZED para recursos do tipo de máquina A2
    • ACCELERATOR_OPTIMIZED_A3 para recursos do tipo de máquina A3 High
    • ACCELERATOR_OPTIMIZED_A3_MEGA para recursos do tipo de máquina A3 Mega
    • COMPUTE_OPTIMIZED para recursos do tipo de máquina C2
    • COMPUTE_OPTIMIZED_C2D para recursos do tipo de máquina C2D
    • COMPUTE_OPTIMIZED_C3 para recursos do tipo de máquina C3
    • COMPUTE_OPTIMIZED_C3D para recursos do tipo de máquina C3D
    • COMPUTE_OPTIMIZED_H3 para recursos do tipo de máquina H3
    • GENERAL_PURPOSE para recursos do tipo de máquina N1
    • GENERAL_PURPOSE_C4 para recursos do tipo de máquina C4
    • GENERAL_PURPOSE_E2 para recursos do tipo de máquina E2
    • GENERAL_PURPOSE_N2 para recursos do tipo de máquina N2
    • GENERAL_PURPOSE_N2D para recursos de máquina N2D
    • GENERAL_PURPOSE_N4 para recursos do tipo de máquina N4
    • GENERAL_PURPOSE_T2D para recursos do tipo de máquina Tau T2D
    • GRAPHICS_OPTIMIZED para recursos do tipo de máquina G2
    • MEMORY_OPTIMIZED para recursos de tipo de máquina M1 ou M2
    • MEMORY_OPTIMIZED_M3 para recursos do tipo de máquina M3
    • STORAGE_OPTIMIZED_Z3 para recursos do tipo de máquina Z3

Por exemplo, o código a seguir cria um compromisso de 1 ano com 5 vCPUs e 18,75 GB de memória:

{
    "name": "example-commitment",
    "plan": "TWELVE_MONTH",
    "type": "GENERAL_PURPOSE",
    "resources": [
        {
            "amount": "5",
            "type": "VCPU"
        },
        {
            "amount": "19200",
            "type": "MEMORY"
        }
    ]
}

Para criar um compromisso com otimização de memória, inclua a propriedade type. No exemplo a seguir, você verá a compra de um compromisso de um ano para um tipo de máquina m1-megamem-96:

{
    "name": "example-memory-optimized-commitment",
    "plan": "TWELVE_MONTH",
    "type": "MEMORY_OPTIMIZED",
    "resources": [
        {
            "amount": "96",
            "type": "VCPU"
        },
        {
            "amount": "1434",
            "type": "MEMORY"
        }
      ]
}```

To create a compute-optimized commitment, include the `type` property. The
following example, purchases a 1 year commitment for a `c2-standard-16`
machine type:

```json
{
    "name": "example-compute-optimized-commitment",
    "plan": "TWELVE_MONTH",
    "type": "COMPUTE_OPTIMIZED",
    "resources": [
        {
            "amount": "16",
            "type": "VCPU"
        },
        {
            "amount": "1434",
            "type": "MEMORY"
        }
    ]
}

Comprar compromissos com reservas anexadas

Quando você compra um novo compromisso, é possível anexar reservas a ele de uma das seguintes maneiras:

Depois de adquirir um compromisso, ele ficará ativo no dia seguinte à 0h dos EUA e do Horário do Pacífico canadense (UTC-8 ou UTC-7 durante o horário de verão). Entre o momento da compra do compromisso e o momento de ativação, o status dele permanece como NOT_YET_ACTIVE (ou como PENDING no console do Google Cloud). Após a ativação, o status do compromisso mudará para ACTIVE. Por exemplo, suponha que você compre o compromisso em 20 de janeiro às 22h nos EUA e no horário do Pacífico canadense (UTC-8 ou UTC-7). O Compute Engine cria seu compromisso imediatamente com o status dele como NOT_YET_ACTIVE. No entanto, seu compromisso passa a ser ACTIVE apenas em 21 de janeiro à 0h dos EUA e do Horário do Pacífico canadense (UTC-8 ou UTC-7).

Requisitos

Antes de adquirir um compromisso com reservas anexadas, revise estes requisitos e verifique se o compromisso e as reservas atendem aos seguintes critérios:

  • É necessário adquirir o compromisso e criar as reservas anexadas no mesmo projeto e região.
  • É necessário adquirir o compromisso e criar as reservas anexadas para recursos da mesma série de família de máquinas.
  • Desative a opção de exclusão automática nas reservas anexadas.
  • Se o compromisso tiver GPUs, o tipo de GPU na reserva e o compromisso precisarão ser correspondentes.
  • Para GPUs e discos SSD locais, o número de recursos reservados de cada tipo de recurso precisa corresponder exatamente ao número de recursos comprometidos desse tipo de recurso. Por exemplo, se você quiser adquirir um compromisso para quatro GPUs V100, as reservas anexadas ao compromisso precisarão ter um total de quatro GPUs V100. No entanto, a quantidade de vCPU e memória que você reserva pode ser maior ou menor do que a que você se compromete.
  • Para GPUs, adquira compromissos para os tipos específicos de GPU que você pretende usar. Por exemplo, é possível comprar compromissos para NVIDIA P100s ou NVIDIA V100s, mas não é possível usar um compromisso que tenha sido comprado para GPUs NVIDIA P100 para abranger GPUs NVIDIA V100.
  • Se a reserva anexada for uma reserva compartilhada e você quiser receber os CUDs aplicáveis quando consumir essa reserva fora do projeto do compromisso, faça o seguinte:

    • Compartilhe suas reservas apenas entre projetos que pertençam à mesma conta do Cloud Billing que o compromisso.
    • Ative o compartilhamento de CUD para essa conta do Cloud Billing.

Anexar reservas já criadas

É possível anexar reservas atuais ao adquirir o compromisso usando o console do Google Cloud, a CLI do Google Cloud ou REST.

Console

Antes de adquirir um compromisso usando o console do Google Cloud, selecione o projeto que você quer usar para adquirir o compromisso. Se o compartilhamento de CUDs estiver ativado para uma conta do Cloud Billing, será possível adquirir o compromisso usando qualquer projeto dessa conta. Depois de selecionar o projeto, faça o seguinte:

  1. No Console do Google Cloud, acesse a página Desconto por compromisso de uso.

    Acesse "Descontos por uso contínuo"

  2. Para adquirir um compromisso, clique em Comprar compromisso. A página Comprar um desconto por compromisso de uso é aberta e mostra a guia Hardware.

  3. No campo Nome, insira um nome para o compromisso.

  4. No campo Região, selecione a região em que você quer usar os recursos do Compute Engine relativos ao compromisso.

  5. No campo Tipo de compromisso, selecione a série da família de máquinas para os recursos do compromisso. Os tipos de compromisso a seguir oferecem opções para GPUs, discos SSD locais ou ambos:

    • A2 com otimização do acelerador para recursos do tipo de máquina A2
    • A3 com otimização para aceleradores para recursos do tipo de máquina A3 High
    • A3 Mega com otimização para aceleradores para recursos do tipo de máquina A3 Mega
    • C2 com otimização para computação para recursos do tipo de máquina C2
    • C2D com otimização para computação para recursos do tipo de máquina C2D
    • Uso geral C3 para recursos do tipo de máquina C3
    • C3D de uso geral para recursos do tipo de máquina C3D
    • Uso geral N1 para recursos do tipo de máquina N1
    • Uso geral N2 para recursos do tipo de máquina N2
    • Uso geral N2D para recursos do tipo de máquina N2D
    • G2 com otimização gráfica para recursos do tipo de máquina G2
    • M3 com otimização de memória para recursos do tipo de máquina M3
    • Z3 com otimização para armazenamento para recursos do tipo de máquina Z3

  6. No campo Duração, selecione a duração do compromisso.

  7. No campo Núcleos, insira o número de vCPUs que você quer vincular ao compromisso.

  8. No campo Memória, insira a quantidade de memória em GB que você quer vincular ao compromisso.

  9. Para confirmar as GPUs, na seção GPUs, clique em Adicionar GPU e faça o seguinte:

    1. No campo Tipo de GPU, selecione o tipo de GPU.
    2. No campo Número de GPUs, digite o número de GPUs.
    3. Opcional: se o modelo de GPU der suporte a estações de trabalho virtuais (vWS) NVIDIA RTX para cargas de trabalho de gráficos e você quiser executar cargas de trabalho com muitos gráficos, marque a caixa de seleção Ativar a estação de trabalho virtual (NVIDIA GRID).
  10. Para se comprometer com discos SSD locais, na seção SSDs locais, clique em Adicionar SSD e, no campo Número de SSDs, especifique o número de discos.

  11. Para anexar uma ou mais reservas atuais ao compromisso, no campo Reservas, selecione Anexar reservas atuais.

    O console do Google Cloud exibe uma lista de todas as reservas no projeto com região, tipo de máquina e tipo de GPU correspondentes ao compromisso. Em seguida, faça o seguinte:

    1. Opcional. Para exibir reservas com propriedades específicas, no menu Filtrar, adicione ou remova os filtros para as propriedades pretendidas.
    2. Selecione todas as reservas que você quer anexar ao compromisso.
  12. Para concluir a compra do compromisso com as reservas anexadas, faça o seguinte:

    1. Clique em Comprar.
    2. Na caixa de diálogo Comprar um desconto por compromisso de uso, se você concordar com os termos específicos do serviço, clique novamente em Comprar.

gcloud

Para adquirir um compromisso anexando reservas atuais, execute o comando gcloud compute commitments create. No seu comando, inclua a sinalização --existing-reservation para especificar uma reserva atual que você queira anexar ao compromisso. Inclua uma nova instância dessa sinalização para cada reserva atual que você queira anexar. É possível anexar qualquer número de reservas atuais ao compromisso.

Por exemplo, para adquirir um compromisso anexando duas reservas a ele, execute o seguinte comando:

gcloud compute commitments create COMMITMENT_NAME \
    --region=REGION \
    --project=PROJECT_ID \
    --resources=vcpu=COMMITTED_VCPUS,memory=COMMITTED_MEMORY,local-ssd=COMMITTED_LOCAL_SSD \
    --resources-accelerator=count=COMMITTED_ACCELERATOR_COUNT,type=COMMITTED_ACCELERATOR_TYPE \
    --plan=DURATION \
    --type=COMMITMENT_TYPE \
    --existing-reservation=name='RESERVATION_NAME_1',zone='RESERVATION_ZONE_1' \
    --existing-reservation=name='RESERVATION_NAME_2',zone='RESERVATION_ZONE_2'

Substitua:

  • COMMITMENT_NAME: o nome do compromisso.
  • REGION: a região em que a chave está localizada.
  • PROJECT_ID: o ID do projeto em que você quer comprar o compromisso com as reservas anexadas.
  • DURATION: a duração do compromisso, 12-month ou 36-month.
  • COMMITMENT_TYPE: o tipo de compromisso. Os tipos de compromisso a seguir oferecem opções para GPUs, discos SSD locais ou ambos:

    • accelerator-optimized para recursos do tipo de máquina A2
    • accelerator-optimized-a3 para recursos do tipo de máquina A3 High
    • accelerator-optimized-a3-mega para recursos do tipo de máquina A3 Mega
    • compute-optimized para recursos do tipo de máquina C2
    • compute-optimized-c2d para recursos do tipo de máquina C2D
    • compute-optimized-c3 para recursos do tipo de máquina C3
    • compute-optimized-c3d para recursos do tipo de máquina C3D
    • general-purpose para recursos do tipo de máquina N1
    • general-purpose-n2 para recursos do tipo de máquina N2
    • general-purpose-n2d para recursos de máquina N2D
    • graphics-optimized para recursos do tipo de máquina G2
    • memory-optimized-m3 para recursos do tipo de máquina M3
    • storage-optimized-z3 para recursos do tipo de máquina Z3

  • COMMITTED_VCPUS: o número de vCPUs que você quer no compromisso. O número deve ser um número inteiro positivo.

  • COMMITTED_MEMORY: a quantidade, em MB ou GB, de memória que você quer no seu compromisso. Por exemplo, 10240MB ou 10GB. Se você não especificar uma unidade, o Compute Engine usará GB como a unidade. É possível comprar memória em incrementos de 0,25 GB.

  • COMMITTED_LOCAL_SSD: a quantidade, em GB, de espaço SSD local que você quer no seu compromisso. Cada SSD local tem 375 GB.

  • COMMITTED_ACCELERATOR_COUNT: o número de GPUs que você quer no compromisso.

  • COMMITTED_ACCELERATOR_TYPE: o tipo de GPU que você quer no compromisso.

  • RESERVATION_NAME_1 e RESERVATION_NAME_2: os nomes das reservas atuais que você quer anexar ao compromisso.

  • RESERVATION_ZONE_1 e RESERVATION_ZONE_2: as zonas das reservas atuais que você quer anexar ao compromisso.

Exemplo: comprar um compromisso anexando reservas existentes

Suponha que você tenha duas reservas res-01 e res-02 nas zonas us-central1-a e us-central1-b do projeto myproject. Suponha que essas reservas tenham uma capacidade combinada para quatro GPUs NVIDIA P100 e quatro discos SSD locais. Para adquirir um novo compromisso na região us-central1 deste projeto para essas GPUs e discos SSD locais e usar essas reservas atuais como reservas anexadas, execute o comando a seguir. O compromisso de exemplo também contém vCPUs e memória.

gcloud compute commitments create commitment-01 \
    --region=us-central1 \
    --project=myproject \
    --resources=vcpu=96,memory=624GB \
    --resources-accelerator=type=nvidia-tesla-v100,count=4 \
    --plan 12-month \
    --existing-reservation=name=res-01,zone=us-central1-a \
    --existing-reservation=name=res-02,zone=us-central1-b
    

REST

Para adquirir um compromisso anexando reservas atuais, faça uma solicitação POST ao método regionCommitments.insert. Na solicitação, inclua o campo existingReservations para especificar uma lista separada por vírgulas de todas as reservas atuais que você quer anexar ao compromisso. É possível anexar qualquer número de reservas existentes ao seu compromisso.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments

{
  "name": "COMMITMENT_NAME",
  "plan": "DURATION",
  "type": COMMITMENT_TYPE,
  "resources":
  [
    {
      "amount": "COMMITTED_VCPUS",
      "type": "VCPU"
    },
    {
      "amount": "COMMITTED_MEMORY",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "COMMITTED_ACCELERATOR_TYPE",
      "amount": "COMMITTED_ACCELERATOR_COUNT",
      "type": "ACCELERATOR"
    }
    {
      "amount": "COMMITTED_LOCAL_SSD",
      "type": "LOCAL_SSD"
    }
  ],
  "existingReservations": "RESERVATION_URLs"
}

Substitua:

  • COMMITMENT_NAME: o nome do compromisso.
  • REGION: a região em que a chave está localizada.
  • PROJECT_ID: o ID do projeto em que você quer comprar o compromisso com as reservas anexadas.
  • DURATION: a duração do compromisso, TWELVE_MONTH ou THIRTY_SIX_MONTH.
  • COMMITMENT_TYPE: o tipo de compromisso. Os tipos de compromisso a seguir oferecem opções para GPUs, discos SSD locais ou ambos:

    • ACCELERATOR_OPTIMIZED para recursos do tipo de máquina A2
    • ACCELERATOR_OPTIMIZED_A3 para recursos do tipo de máquina A3 High
    • ACCELERATOR_OPTIMIZED_A3_MEGA para recursos do tipo de máquina A3 Mega
    • COMPUTE_OPTIMIZED para recursos do tipo de máquina C2
    • COMPUTE_OPTIMIZED_C2D para recursos do tipo de máquina C2D
    • COMPUTE_OPTIMIZED_C3 para recursos do tipo de máquina C3
    • COMPUTE_OPTIMIZED_C3D para recursos do tipo de máquina C3D
    • GENERAL_PURPOSE para recursos do tipo de máquina N1
    • GENERAL_PURPOSE_N2 para recursos do tipo de máquina N2
    • GENERAL_PURPOSE_N2D para recursos de máquina N2D
    • GRAPHICS_OPTIMIZED para recursos do tipo de máquina G2
    • MEMORY_OPTIMIZED_M3 para recursos do tipo de máquina M3
    • STORAGE_OPTIMIZED_Z3 para recursos do tipo de máquina Z3

  • COMMITTED_VCPUS: o número de vCPUs que você quer no compromisso. O número deve ser um número inteiro positivo.

  • COMMITTED_MEMORY: a quantidade, em MB, de memória que você quer no compromisso. Por exemplo, 10240MB. É possível comprar memória em incrementos de 256 MB.

  • COMMITTED_LOCAL_SSD: a quantidade, em GB, de armazenamento SSD local que você quer no seu compromisso. Cada SSD local tem 375 GB.

  • COMMITTED_ACCELERATOR_COUNT: o número de GPUs que você quer no compromisso.

  • COMMITTED_ACCELERATOR_TYPE: o tipo de GPU que você quer no compromisso.

  • RESERVATION_URLs: uma lista separada por vírgulas de URLs das reservas atuais que você quer anexar ao compromisso. Por exemplo, para anexar duas reservas, res-1 e res-2, especifique o seguinte:

    "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/reservations/example-res-1",
    "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-c/reservations/example-res-2"
    

Exemplo: comprar um compromisso anexando reservas existentes

Suponha que você tenha duas reservas res-01 e res-02 nas zonas us-central1-a e us-central1-b do projeto myproject. Suponha que essas reservas tenham uma capacidade combinada para quatro GPUs NVIDIA P100 e quatro discos SSD locais. Para adquirir um novo compromisso na região us-central1 deste projeto para essas GPUs e discos SSD locais e usar essas reservas atuais como reservas anexadas, faça a seguinte solicitação POST. Observe que o compromisso de exemplo também contém vCPUs e memória.

POST https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-central1/commitments

{
  "name": "commitment-01",
  "plan": "TWELVE_MONTH",
  "type": "GENERAL_PURPOSE"
  "resources":
  [
    {
      "amount": "96",
      "type": "VCPU"
    },
    {
      "amount": "638976",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "nvidia-tesla-v100",
      "amount": "4",
      "type": "ACCELERATOR"
    },
    {
      "amount": "1536000",
      "type": "LOCAL_SSD"
    }
  ],
  "existingReservations":
  [
    "https://www.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/reservations/res-01",
    "https://www.googleapis.com/compute/v1/projects/my-project/zone/us-central1-b/reservations/res-02"
  ]
}

Criar novas reservas para anexar

É possível criar suas reservas anexadas ao comprar seu compromisso usando o console do Google Cloud, a CLI do Google Cloud ou o REST.

Console

Antes de adquirir um compromisso usando o console do Google Cloud, selecione o projeto que você quer usar para adquirir o compromisso. Se o compartilhamento de CUDs estiver ativado para uma conta do Cloud Billing, será possível adquirir o compromisso usando qualquer projeto dessa conta. Depois de selecionar o projeto, faça o seguinte:

  1. No Console do Google Cloud, acesse a página Desconto por compromisso de uso.

    Acesse "Descontos por uso contínuo"

  2. Para adquirir um compromisso, clique em Comprar compromisso. A página Comprar um desconto por compromisso de uso é aberta e mostra a guia Hardware.

  3. No campo Nome, insira um nome para o compromisso.

  4. No campo Região, selecione a região em que você quer usar os recursos do Compute Engine relativos ao compromisso.

  5. No campo Tipo de compromisso, selecione a série da família de máquinas para os recursos do compromisso. Os tipos de compromisso a seguir oferecem opções para GPUs, discos SSD locais ou ambos:

    • A2 com otimização do acelerador para recursos do tipo de máquina A2
    • A3 com otimização para aceleradores para recursos do tipo de máquina A3 High
    • A3 Mega com otimização para aceleradores para recursos do tipo de máquina A3 Mega
    • C2 com otimização para computação para recursos do tipo de máquina C2
    • C2D com otimização para computação para recursos do tipo de máquina C2D
    • Uso geral C3 para recursos do tipo de máquina C3
    • C3D de uso geral para recursos do tipo de máquina C3D
    • Uso geral N1 para recursos do tipo de máquina N1
    • Uso geral N2 para recursos do tipo de máquina N2
    • Uso geral N2D para recursos do tipo de máquina N2D
    • G2 com otimização gráfica para recursos do tipo de máquina G2
    • M3 com otimização de memória para recursos do tipo de máquina M3
    • Z3 com otimização para armazenamento para recursos do tipo de máquina Z3

  6. Em Duração, escolha 1 ano ou 3 anos como a duração do compromisso.

  7. No campo Núcleos, insira o número de vCPUs que você quer vincular ao compromisso.

  8. No campo Memória, insira a quantidade de memória em GB que você quer vincular ao compromisso.

  9. Para confirmar as GPUs, na seção GPUs, clique em Adicionar GPU e faça o seguinte:

    1. No campo Tipo de GPU, selecione o tipo de GPU.
    2. No campo Número de GPUs, digite o número de GPUs.
    3. Opcional: se o modelo de GPU der suporte a estações de trabalho virtuais (vWS) NVIDIA RTX para cargas de trabalho de gráficos e você quiser executar cargas de trabalho com muitos gráficos, marque a caixa de seleção Ativar a estação de trabalho virtual (NVIDIA GRID).
  10. Para se comprometer com discos SSD locais, na seção SSDs locais, clique em Adicionar SSD e, no campo Número de SSDs, especifique o número de discos.

  11. Para criar uma reserva e anexá-la ao compromisso, no campo Reservas, selecione Criar reservas e siga as instruções a seguir. Repita esta etapa para cada nova reserva que você quer criar e anexar.

    1. Clique em Adicionar reserva. A seção Nova reserva vai aparecer.
    2. No campo Nome, insira um nome para a reserva anexada.
    3. No campo Região, selecione a mesma região do compromisso.
    4. No campo Zona, selecione a zona em que você quer reservar os recursos.
    5. Na seção Tipo de compartilhamento, especifique como você quer compartilhar essa reserva de uma das seguintes maneiras:

      • Para criar uma reserva de projeto único, selecione Local.
      • Para criar uma reserva compartilhada com vários projetos, selecione Compartilhada. Em seguida, para especificar os projetos com os quais compartilhar a reserva, clique em Adicionar projetos e selecione os projetos pretendidos da organização do projeto atual.
    6. No campo Usar com instância de VM, selecione como você quer que as VMs consumam a reserva de uma das seguintes maneiras:

      • Para permitir que VMs com propriedades correspondentes consumam automaticamente a reserva, clique em Usar reserva automaticamente (padrão).
      • Para consumir os recursos da reserva apenas ao criar VMs com propriedades correspondentes relacionadas especificamente a essa reserva por nome, clique em Selecionar reserva específica.
    7. Na seção Detalhes do recurso, faça o seguinte:

      1. No campo Número de instâncias da VM, insira o número de instâncias de VM que você quer reservar.
      2. Na seção Configuração da máquina, especifique as propriedades das VMs reservadas de uma das seguintes maneiras:

        1. Para especificar as propriedades das VMs usando um modelo de instância atual, selecione Usar modelo de instância.

          No campo Modelo de instância, selecione um modelo de instância que especifique a mesma série de família de máquinas do compromisso. Se você selecionar um modelo de instância regional, a região desse modelo também deverá corresponder à região especificada no compromisso.

        2. Para especificar manualmente as propriedades das VMs, clique em Selecionar tipo de máquina e siga estas etapas:

          1. Selecione a família de máquinas que se aplica à série de máquinas especificada para o compromisso:

            • Uso geral para séries de máquinas de uso geral
            • Otimização para computação para séries de máquinas com otimização para computação
            • Otimização de memória para séries de máquinas com otimização de memória
            • GPUs para séries de máquinas com otimização para aceleradores
          2. Na tabela com a coluna Série, selecione a mesma série de máquinas especificada para o compromisso.

          3. No campo Tipo de máquina, especifique um tipo de máquina predefinido ou personalizado de uma das seguintes maneiras:

            1. Para escolher um tipo de máquina predefinido, selecione Predefinido e selecione o tipo pretendido.
            2. Para escolher um tipo de máquina personalizado, selecione Personalizado e especifique os Núcleos e a Memória que você quer usar.
          4. Para especificar uma plataforma mínima de CPU, GPUs ou ambas, abra o menu Plataforma de CPU e GPU e faça o seguinte:

            1. Opcional: para especificar uma plataforma mínima de CPU, selecione uma opção na lista Plataforma de CPU.
            2. Opcional: para reservar GPUs, clique em Adicionar GPU. Em seguida, nos campos Tipo de GPU e Número de GPUs, selecione o tipo e o número de GPUs para cada VM.

          5. Para reservar discos SSD locais, faça o seguinte:

            1. No campo Número de discos, selecione o número de discos SSD locais que você quer para cada VM.
            2. No campo Tipo de interface, selecione a interface para os discos SSD locais.
    8. Para concluir a especificação das propriedades desta reserva, clique em Concluído.

  12. Para concluir a compra do compromisso com as reservas anexadas, faça o seguinte:

    1. Clique em Comprar.
    2. Na caixa de diálogo Comprar um desconto por compromisso de uso, se você concordar com os termos específicos do serviço, clique novamente em Comprar.

gcloud

Para criar suas reservas anexadas ao comprar seu compromisso, execute o comando gcloud compute commitments create.

Se você quer anexar uma única reserva ou várias, execute o comando de uma das seguintes maneiras:

  • Para criar e anexar uma única reserva ao seu compromisso, defina as propriedades da reserva anexada executando o seguinte comando:

    gcloud compute commitments create COMMITMENT_NAME \
        --region=REGION \
        --project=PROJECT_ID \
        --plan DURATION \
        --type COMMITMENT_TYPE
        --resources=vcpu=COMMITTED_VCPUS,memory=COMMITTED_MEMORY,local-ssd=COMMITTED_LOCAL_SSD \
        --resources-accelerator=count=COMMITTED_ACCELERATOR_COUNT,type=COMMITTED_ACCELERATOR_TYPE \
        --reservation=RESERVATION_NAME \
        --reservation-zone=RESERVATION_ZONE \
        --machine-type=RESERVED_MACHINE_TYPE \
        --require-specific-reservation=REQUIRE_SPECIFIC_RESERVATION_VALUE \
        --vm-count=NUMBER_OF_RESERVED_VMs \
        --accelerator=type=RESERVED_ACCELERATOR_TYPE,count=RESERVED_ACCELERATOR_COUNT \
        --local-ssd=interface=INTERFACE_1,size=375 \
        --local-ssd=interface=INTERFACE_2,size=375 \
        --minimum-cpu-platform=MINIMUM_CPU_PLATFORM \
        --share-setting=SHARE_SETTING \
        --share-with=CONSUMER_PROJECT_ID_1,CONSUMER_PROJECT_ID_2
    
  • Para criar e anexar várias reservas ao compromisso, defina as propriedades da reserva usando um arquivo YAML e especifique esse arquivo YAML no comando usado para adquirir seu compromisso. Outra opção é usar essa abordagem de arquivo YAML para criar e anexar uma única reserva ao compromisso. Para criar suas reservas anexadas usando essa abordagem, faça o seguinte:

    1. Crie o arquivo YAML no diretório atual e especifique a configuração para cada reserva anexada. Por exemplo, para especificar a configuração de uma reserva compartilhada compartilhada com dois projetos que especificam GPUs, dois discos SSD locais e uma plataforma mínima de CPU, inclua o texto a seguir no arquivo YAML. :

      - reservation: RESERVATION_NAME
        reservation_zone: RESERVATION_ZONE
        require_specific_reservation: REQUIRE_SPECIFIC_RESERVATION_VALUE
        vm_count: NUMBER_OF_RESERVED_VMs
        machine_type: RESERVED_MACHINE_TYPE
        accelerator:
        - count: RESERVED_ACCELERATOR_COUNT
          type: RESERVED_ACCELERATOR_TYPE
        localssd:
        - interface: INTERFACE_1
          size: 375
        - interface: INTERFACE_2
          size: 375
        project: OWNER_PROJECT_ID
        minimum-cpu-platform: MINIMUM_CPU_PLATFORM
        share-setting: SHARE_SETTING
        share-with:
        - CONSUMER_PROJECT_ID_1
        - CONSUMER_PROJECT_ID_2
      
      

      Para especificar a configuração de várias reservas, repita essas propriedades para cada uma delas. É possível anexar ao compromisso quantas reservas você quiser.

    2. Use o comando gcloud compute commitments create e inclua a sinalização --reservation-from-file:

      gcloud compute commitments create COMMITMENT_NAME \
          --region REGION \
          --project PROJECT_ID \
          --plan DURATION \
          --type COMMITMENT_TYPE \
          --resources=vcpu=COMMITTED_VCPUS,memory=COMMITTED_MEMORY,local-ssd=COMMITTED_LOCAL_SSD \
          --resources-accelerator=count=COMMITTED_ACCELERATOR_COUNT,type=COMMITTED_ACCELERATOR_TYPE \
          --reservations-from-file=YAML_FILE
      

Substitua o seguinte pelas propriedades correspondentes do compromisso e das reservas anexadas:

Compromisso

  • COMMITMENT_NAME: o nome do compromisso.
  • REGION: a região em que a chave está localizada.
  • PROJECT_ID: o ID do projeto em que você quer comprar o compromisso com as reservas anexadas.
  • DURATION: a duração do compromisso, 12-month ou 36-month.
  • COMMITMENT_TYPE: o tipo de compromisso. Os tipos de compromisso a seguir oferecem opções para GPUs, discos SSD locais ou ambos:

    • accelerator-optimized para recursos do tipo de máquina A2
    • accelerator-optimized-a3 para recursos do tipo de máquina A3 High
    • accelerator-optimized-a3-mega para recursos do tipo de máquina A3 Mega
    • compute-optimized para recursos do tipo de máquina C2
    • compute-optimized-c2d para recursos do tipo de máquina C2D
    • compute-optimized-c3 para recursos do tipo de máquina C3
    • compute-optimized-c3d para recursos do tipo de máquina C3D
    • general-purpose para recursos do tipo de máquina N1
    • general-purpose-n2 para recursos do tipo de máquina N2
    • general-purpose-n2d para recursos de máquina N2D
    • graphics-optimized para recursos do tipo de máquina G2
    • memory-optimized-m3 para recursos do tipo de máquina M3
    • storage-optimized-z3 para recursos do tipo de máquina Z3

  • COMMITTED_VCPUS: o número de vCPUs que você quer no compromisso. O número deve ser um número inteiro positivo.

  • COMMITTED_MEMORY: a quantidade, em MB ou GB, de memória que você quer no seu compromisso. Por exemplo, 10GB ou 10240MB. Se você não especificar uma unidade, o Compute Engine usará GB como a unidade. É possível comprar memória em incrementos de 0,25 GB.

  • COMMITTED_LOCAL_SSD: a quantidade, em GB, de armazenamento SSD local que você quer no seu compromisso. Cada SSD local tem 375 GB.

  • COMMITTED_ACCELERATOR_COUNT: o número de GPUs que você quer no compromisso.

  • COMMITTED_ACCELERATOR_TYPE: o tipo de GPU que você quer no compromisso.

  • YAML_FILE: o caminho para o arquivo YAML que contém a configuração das reservas anexadas.

Reservas anexadas

  • RESERVATION_NAME: o nome da reserva anexada.
  • RESERVATION_ZONE: a zona da reserva anexada.
  • REQUIRE_SPECIFIC_RESERVATION_VALUE: especifica se a reserva anexada é uma reserva especificamente segmentada (true ou false). Para mais informações sobre reservas segmentadas especificamente, consulte Como funcionam as reservas.
  • NUMBER_OF_RESERVED_VMS: o número de VMs que você quer reservar na reserva anexada.
  • RESERVED_MACHINE_TYPE: o tipo de máquina que você quer para as VMs na reserva anexada.

    • Para tipos de máquina predefinidos, use o formato MACHINE_FAMILY-standard-CPUS. Por exemplo, n2-standard-4.
    • Para tipos de máquina personalizados, use o formato MACHINE_FAMILY-custom-CPUS-MEMORY. Por exemplo, n2-custom-4-5120. Para ver uma lista completa de restrições, leia as especificações dos tipos de máquina personalizados.

      Substitua:

      • MACHINE_FAMILY: a família dos tipos de máquina. Por exemplo, especifique n2 para VMs N2.
      • CPUS: o número de vCPUs
      • MEMORY: a memória total para uma VM reservada. A memória precisa ser um múltiplo de 256 MB e ser fornecida em MB. Por exemplo, para criar uma VM N2 com 4 vCPUs e 5 GB de memória, que é 5.120 MB, use n2-custom-4-5120.
  • RESERVED_ACCELERATOR_COUNT: o número de GPUs que você quer adicionar, por VM, na reserva anexada.

  • RESERVED_ACCELERATOR_TYPE: o tipo de acelerador que você quer adicionar à reserva anexada.

  • INTERFACE_1 e INTERFACE_2: o tipo de interface que você quer que os discos SSD locais de cada VM reservada usem. As opções válidas são: scsi e nvme. Cada SSD local tem 375 GB. Repita o parâmetro local_ssd para cada disco SSD local que você quer adicionar. É possível especificar até 24 discos SSD locais.

  • OWNER_PROJECT_ID: o ID do projeto em que você quer adquirir o compromisso com a reserva anexada. Especifique esse campo se quiser compartilhar sua reserva de substituição em vários projetos de consumidor.

  • MINIMUM_CPU_PLATFORM: a plataforma de CPU mínima que você quer especificar para a reserva anexada.

  • SHARE_SETTING: o tipo de compartilhamento da reserva atual. Especifique esse campo com o valor como projects se você quiser compartilhar sua reserva de substituição em vários projetos de consumidores. Exclua esse campo se quiser criar uma reserva de projeto único.

  • CONSUMER_PROJECT_ID_1 e CONSUMER_PROJECT_ID_2: os IDs dos projetos que podem compartilhar essa reserva. Por exemplo project-1 e project-2. É possível incluir até 100 projetos pessoais. Esses projetos precisam estar na mesma organização do projeto de proprietário. Não inclua o ID do projeto em que você cria essa reserva, já que esse projeto tem permissão para consumir essa reserva por padrão. Exclua esses campos se quiser criar uma reserva de projeto único.

O Compute Engine criará o compromisso com as reservas anexadas criadas somente se houver recursos suficientes do tipo de máquina especificado na zona de destino e cota suficiente no momento da solicitação. Se a compra foi bem-sucedida, você verá uma mensagem semelhante a esta:

Created[https://www.googleapis.com/compute/v1/projects/your-project/regions/your-region/commitments/your-commitment-name]

Exemplos de compra de compromissos criando novas reservas para anexar

Os cenários e comandos de exemplo a seguir mostram como comprar um compromisso para GPUs, discos SSD locais ou ambos criando novas reservas para anexar a esse compromisso.

Exemplo 1: comprar um compromisso para GPUs anexando uma única reserva nova

Suponha que você queira adquirir um compromisso commitment-01 na região us-central1 que inclua quatro GPUs NVIDIA V100. Você quer criar uma nova reserva reservation-01 como a reserva anexada para essas GPUs. Suponha que você também queira especificar que o Compute Engine use essas GPUs reservadas em duas VMs n1-standard-32 na zona us-central1-a. Para comprar este compromisso de exemplo com a reserva anexada, execute o seguinte comando:

gcloud compute commitments create commitment-01 \
    --region=us-central1 \
    --project=myproject \
    --resources=vcpu=96,memory=624GB \
    --resources-accelerator=type=nvidia-tesla-v100,count=4 \
    --plan 12-month \
    --reservation=reservation-01 \
    --reservation-zone=us-central1-a \
    --machine-type=n1-standard-32 \
    --accelerator=type=nvidia-tesla-v100,count=2 \
    --vm-count=2

Exemplo 2: adquirir um compromisso para GPUs sem confirmar vCPUs ou memória

Para se comprometer e reservar GPUs e discos SSD locais sem se comprometer com vCPUs ou memória, especifique 0 como o valor para as quantidades de vCPUs e memória. Por exemplo, suponha que você queira adquirir um compromisso commitment-02 para uma única GPU NVIDIA P4 na região us-west2. Você também quer criar uma nova reserva como a reserva anexada e especificar que o Compute Engine use a GPU reservada em uma VM n1-standard-2 na zona us-west2-b. Para comprar este exemplo de compromisso com a reserva anexada, execute o seguinte comando:

gcloud compute commitments create commitment-02 \
    --region=us-west2 \
    --project=myproject \
    --resources=vcpu=0,memory=0 \
    --resources-accelerator=type=nvidia-tesla-p4,count=1 \
    --plan 12-month \
    --reservation=reservation-01 \
    --reservation-zone=us-west2-b \
    --machine-type=n1-standard-2 \
    --accelerator=type=nvidia-tesla-p4,count=1 \
    --vm-count=1

Exemplo 3: adquirir um compromisso para GPUs e discos SSD locais anexando várias novas reservas

Suponha que você queira adquirir um compromisso commitment-03 para uma GPU NVIDIA V 100 e dois discos SSD locais na região us-central1. Você também quer criar e anexar duas reservas na zona us-central1-a. Na primeira reserva, res-01, você quer reservar 1 VM n1-standard-2 com 1 GPU. Você quer tornar res-01 uma reserva direcionada, o que significa que é necessário segmentar especificamente essa reserva pelo nome para usar as VMs reservadas. Na segunda reserva, res-02, você quer reservar uma VM n1-standard-8 com dois tipos de discos SSD locais anexados.

Para adquirir este compromisso de exemplo com as reservas anexadas, primeiro crie o arquivo YAML com as propriedades de ambas as reservas.

- reservation: res-01
  reservation_zone: us-central1-a
  require_specific_reservation: true
  vm_count: 1
  machine_type: n1-standard-2
  accelerator:
  - count: 1
    type: nvidia-tesla-v100
- reservation: res-02
  reservation_zone: us-central1-a
  vm_count: 1
  machine_type: n1-standard-8
  local_ssd:
  - interface: scsi
    size: 375
  - interface: nvme
    size: 375

Depois de criar o arquivo YAML, para concluir a compra do compromisso com as reservas anexadas, execute o comando a seguir. Observe que o compromisso de exemplo também contém recursos de vCPU e memória.

gcloud compute commitments create commitment-03 \
    --region=us-central1 \
    --project=myproject \
    --resources=vcpu=96,memory=624,local-ssd=750 \
    --resources-accelerator=type=nvidia-tesla-v100,count=1 \
    --plan 12-month \
    --reservations-from-file=YAML_FILE

REST

Para criar as reservas anexadas ao comprar seu compromisso, faça uma solicitação POST ao método regionCommitments.insert. Na solicitação, inclua o campo reservations para definir uma lista de todas as novas reservas que você quer criar e anexar. É possível anexar quantas reservas você quiser ao compromisso.

  • Para criar sua nova reserva especificando manualmente todas as propriedades da VM, inclua o campo instanceProperties e exclua o campo sourceInstanceTemplate.

    Por exemplo, para especificar manualmente a configuração de uma reserva compartilhada com dois projetos que especificam GPUs, dois discos SSD locais e uma plataforma mínima de CPU, faça a seguinte solicitação:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments
    
    {
    "name": "COMMITMENT_NAME",
    "plan": "DURATION",
    "type": COMMITMENT_TYPE,
    "resources":
    [
      {
        "amount": "COMMITTED_VCPUS",
        "type": "VCPU"
      },
      {
        "amount": "COMMITTED_MEMORY",
        "type": "MEMORY"
      },
      {
        "acceleratorType": "COMMITTED_ACCELERATOR_TYPE",
        "amount": "COMMITTED_ACCELERATOR_COUNT",
        "type": "ACCELERATOR"
      }
      {
        "amount": "COMMITTED_LOCAL_SSD",
        "type": "LOCAL_SSD"
      }
    ],
    "reservations":
    [
      {
        "name": "RESERVATION_NAME",
        "specificReservation":
        {
          "count": "NUMBER_OF_RESERVED_VMS",
          "instanceProperties":
          {
            "guestAccelerators":
            [
              {
                "acceleratorCount": "RESERVED_ACCELERATOR_COUNT",
                "acceleratorType": "RESERVED_ACCELERATOR_TYPE"
              }
            ],
            "localSsds":
            [
              {
                "diskSizeGb": "375",
                "interface": "RESERVED_INTERFACE_1"
              },
              {
                "diskSizeGb": "375",
                "interface": "RESERVED_INTERFACE_2"
              }
            ],
            "machineType": "RESERVED_MACHINE_TYPE",
            "minCpuPlatform": "MINIMUM_CPU_PLATFORM"
          }
        },
        "specificReservationRequired": REQUIRE_SPECIFIC_RESERVATION_VALUE",
        "zone": "RESERVED_ZONE",
        "shareSettings":
        {
          "shareType": "SPECIFIC_PROJECTS",
          "projectMap":
          {
            "CONSUMER_PROJECT_ID_1":
            {
              "projectId": "CONSUMER_PROJECT_ID_1"
            },
            "CONSUMER_PROJECT_ID_2":
            {
              "projectId": "CONSUMER_PROJECT_ID_2"
            }
          }
        }
      }
    ]
    }
    
    
  • Para criar a nova reserva especificando um modelo de instância, inclua o campo sourceInstanceTemplate e exclua o campo instanceProperties.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments
    
    {
    "name": "COMMITMENT_NAME",
    "plan": "DURATION",
    "type": COMMITMENT_TYPE,
    "resources":
    [
      {
        "amount": "COMMITTED_VCPUS",
        "type": "VCPU"
      },
      {
        "amount": "COMMITTED_MEMORY",
        "type": "MEMORY"
      },
      {
        "acceleratorType": "COMMITTED_ACCELERATOR_TYPE",
        "amount": "COMMITTED_ACCELERATOR_COUNT",
        "type": "ACCELERATOR"
      }
      {
        "amount": "COMMITTED_LOCAL_SSD",
        "type": "LOCAL_SSD"
      }
    ],
    "reservations":
    [
      {
        "name": "RESERVATION_NAME",
        "specificReservation":
        {
          "count": "NUMBER_OF_RESERVED_VMS",
          "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME"
        },
        "specificReservationRequired": REQUIRE_SPECIFIC_RESERVATION_VALUE",
        "zone": "RESERVED_ZONE",
        "shareSettings":
        {
          "shareType": "SPECIFIC_PROJECTS",
          "projectMap":
          {
            "CONSUMER_PROJECT_ID_1":
            {
              "projectId": "CONSUMER_PROJECT_ID_1"
            },
            "CONSUMER_PROJECT_ID_2":
            {
              "projectId": "CONSUMER_PROJECT_ID_2"
            }
          }
        }
      }
    ]
    }
    
    

Substitua o seguinte pelas propriedades correspondentes do compromisso e das reservas anexadas:

Compromisso

  • COMMITMENT_NAME: o nome do compromisso.
  • REGION: a região em que a chave está localizada.
  • PROJECT_ID: o ID do projeto em que você quer comprar o compromisso com as reservas anexadas.
  • DURATION: a duração do compromisso, TWELVE_MONTH ou THIRTY_SIX_MONTH.
  • COMMITMENT_TYPE: o tipo de compromisso. Os tipos de compromisso a seguir oferecem opções para GPUs, discos SSD locais ou ambos:

    • ACCELERATOR_OPTIMIZED para recursos do tipo de máquina A2
    • ACCELERATOR_OPTIMIZED_A3 para recursos do tipo de máquina A3 High
    • ACCELERATOR_OPTIMIZED_A3_MEGA para recursos do tipo de máquina A3 Mega
    • COMPUTE_OPTIMIZED para recursos do tipo de máquina C2
    • COMPUTE_OPTIMIZED_C2D para recursos do tipo de máquina C2D
    • COMPUTE_OPTIMIZED_C3 para recursos do tipo de máquina C3
    • COMPUTE_OPTIMIZED_C3D para recursos do tipo de máquina C3D
    • GENERAL_PURPOSE para recursos do tipo de máquina N1
    • GENERAL_PURPOSE_N2 para recursos do tipo de máquina N2
    • GENERAL_PURPOSE_N2D para recursos de máquina N2D
    • GRAPHICS_OPTIMIZED para recursos do tipo de máquina G2
    • MEMORY_OPTIMIZED_M3 para recursos do tipo de máquina M3
    • STORAGE_OPTIMIZED_Z3 para recursos do tipo de máquina Z3

  • COMMITTED_VCPUS: o número de vCPUs que você quer no compromisso. O número deve ser um número inteiro positivo.

  • COMMITTED_MEMORY: a quantidade, em MB, de memória que você quer no compromisso. Por exemplo, 10240MB. É possível comprar memória em incrementos de 256 MB.

  • COMMITTED_LOCAL_SSD: a quantidade, em GB, de armazenamento SSD local que você quer no seu compromisso. Cada SSD local tem 375 GB.

  • COMMITTED_ACCELERATOR_COUNT: o número de GPUs que você quer no compromisso.

  • COMMITTED_ACCELERATOR_TYPE: o tipo de GPU que você quer no compromisso.

Reservas anexadas

  • RESERVATION_NAME: o nome da reserva anexada.
  • RESERVATION_ZONE: a zona da reserva anexada.
  • REQUIRE_SPECIFIC_RESERVATION_VALUE: especifica se a reserva anexada é uma reserva especificamente segmentada (true ou false). Para mais informações sobre reservas segmentadas especificamente, consulte Como funcionam as reservas.
  • NUMBER_OF_RESERVED_VMS: o número de VMs que você quer reservar na reserva anexada.
  • RESERVED_MACHINE_TYPE: o tipo de máquina que você quer para as VMs na reserva anexada.

    • Para tipos de máquina predefinidos, use o formato MACHINE_FAMILY-standard-CPUS. Por exemplo, n2-standard-4.
    • Para tipos de máquina personalizados, use o formato MACHINE_FAMILY-custom-CPUS-MEMORY. Por exemplo, n2-custom-4-5120. Para ver uma lista completa de restrições, leia as especificações dos tipos de máquina personalizados.

      Substitua:

      • MACHINE_FAMILY: a família dos tipos de máquina. Por exemplo, especifique n2 para VMs N2.
      • CPUS: o número de vCPUs
      • MEMORY: a memória total para uma VM reservada. A memória precisa ser um múltiplo de 256 MB e ser fornecida em MB. Por exemplo, para criar uma VM N2 com 4 vCPUs e 5 GB de memória, que é 5.120 MB, use n2-custom-4-5120.
  • RESERVED_ACCELERATOR_COUNT: o número de GPUs que você quer adicionar, por VM, na reserva anexada.

  • RESERVED_ACCELERATOR_TYPE: o tipo de acelerador que você quer adicionar à reserva anexada.

  • INTERFACE_1 e INTERFACE_2: o tipo de interface que você quer que os discos SSD locais de cada VM reservada usem. As opções válidas são: scsi e nvme. Cada SSD local tem 375 GB. Repita o parâmetro localSsds para cada disco SSD local que você quer adicionar. É possível especificar até 24 discos SSD locais.

  • MINIMUM_CPU_PLATFORM: a plataforma de CPU mínima que você quer especificar para a reserva anexada.

  • INSTANCE_TEMPLATE_NAME: o nome do modelo de instância que você quer usar para criar a reserva anexada.

  • SHARE_SETTING: o tipo de compartilhamento da reserva atual. Especifique esse campo com o valor como SPECIFIC_PROJECTS se você quiser compartilhar sua reserva de substituição em vários projetos de consumidores. Exclua este campo se quiser criar uma reserva de projeto único.

  • CONSUMER_PROJECT_ID_1 e CONSUMER_PROJECT_ID_2: os IDs dos projetos que podem compartilhar essa reserva. Por exemplo project-1 e project-2. É possível incluir até 100 projetos pessoais. Esses projetos precisam estar na mesma organização do projeto de proprietário. Não inclua o ID do projeto em que você cria essa reserva, já que esse projeto tem permissão para consumir essa reserva por padrão. Exclua esses campos se quiser criar uma reserva de projeto único.

O Compute Engine criará o compromisso com as reservas anexadas criadas somente se houver recursos suficientes do tipo de máquina especificado na zona de destino e cota suficiente no momento da solicitação. Se a compra foi bem-sucedida, o Computee Engine retornará um status 200 para a solicitação da API REST.

Exemplos de compra de compromissos criando novas reservas para anexar

Os cenários e comandos de exemplo a seguir mostram como comprar um compromisso para GPUs, discos SSD locais ou ambos criando novas reservas para anexar a esse compromisso.

Exemplo 1: comprar um compromisso para GPUs anexando uma única reserva nova

Suponha que você queira adquirir um compromisso commitment-01 na região us-central1 que inclua quatro GPUs NVIDIA V100. Você quer criar uma nova reserva reservation-01 como a reserva anexada para essas GPUs. Suponha que você também queira especificar o Compute Engine para usar essas GPUs reservadas em duas VMs n1-standard-8 na zona us-central1-a. Para comprar este exemplo de compromisso com a reserva anexada, faça a seguinte solicitação POST:

POST https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-central1/commitments

{
  "name": "commitment-01",
  "plan": "TWELVE_MONTH",
  "type": "GENERAL_PURPOSE"
  "resources":
  [
    {
      "amount": "96",
      "type": "VCPU"
    },
    {
      "amount": "638976",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "nvidia-tesla-v100",
      "amount": "4",
      "type": "ACCELERATOR"
    }
  ],
  "reservations":
  [
    {
      "name": "reservation-01",
      "specificReservation":
      {
        "count": "2",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": 2,
              "acceleratorType": "nvidia-tesla-v100"
            }
          ],
          "machineType": "n1-standard-8"
        }
      },
      "specificReservationRequired": false,
      "zone": "us-central1-a"
    }
  ]
}

Exemplo 2: adquirir um compromisso para GPUs sem confirmar vCPUs ou memória

Para se comprometer e reservar GPUs e discos SSD locais sem se comprometer com vCPUs ou memória, especifique 0 como o valor para as quantidades de vCPUs e memória. Por exemplo, suponha que você queira adquirir um compromisso commitment-02 para uma única GPU NVIDIA P4 na região us-west2. Você também quer criar uma nova reserva como a reserva anexada e especificar que o Compute Engine use a GPU reservada em uma VM n1-standard-2 na zona us-west2-b. Para comprar este exemplo de compromisso com a reserva anexada, faça a seguinte solicitação POST:

POST https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-west2/commitments

{
  "name": "commitment-02",
  "plan": "TWELVE_MONTH",
  "type": "GENERAL_PURPOSE",
  "resources":
  [
    {
      "amount": "0",
      "type": "VCPU"
    },
    {
      "amount": "0",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "nvidia-tesla-p4",
      "amount": "4",
      "type": "ACCELERATOR"
    }
  ],
  "reservations":
  [
    {
      "name": "reservation-01",
      "specificReservation":
      {
        "count": "1",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": 4,
              "acceleratorType": "nvidia-tesla-p4"
            }
          ],
          "machineType": "n1-standard-2"
        }
      },
      "specificReservationRequired": false,
      "zone": "us-west2-b"
    }
  ]
}

Exemplo 3: adquirir um compromisso para GPUs e discos SSD locais anexando várias novas reservas

Suponha que você queira adquirir um compromisso commitment-03 para uma GPU NVIDIA V 100 e dois discos SSD locais na região us-central1. Você também quer criar e anexar duas reservas na zona us-central1-a. Na primeira reserva, res-01, você quer reservar 1 VM n1-standard-2 com 1 GPU. Você quer tornar res-01 uma reserva direcionada, o que significa que é necessário segmentar especificamente essa reserva pelo nome para usar as VMs reservadas. Na segunda reserva, res-02, você quer reservar uma VM n1-standard-8 com dois tipos de discos SSD locais anexados. Para adquirir esse compromisso de exemplo com as reservas anexadas, faça a seguinte solicitação POST. Observe que o compromisso de exemplo também contém recursos de vCPU e memória.

POST https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-central1/commitments

{
  "name": "commitment-03",
  "plan": "TWELVE_MONTH",
  "type": "GENERAL_PURPOSE",
  "resources":
  [
    {
      "amount": "96",
      "type": "VCPU"
    },
    {
      "amount": "638976",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "nvidia-tesla-v100",
      "amount": "1",
      "type": "ACCELERATOR"
    },
    {
      "amount": "768000",
      "type": "LOCAL_SSD"
    }
  ],
  "reservations":
  [
    {
      "name": "res-01",
      "specificReservation":
      {
        "count": "1",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": 1,
              "acceleratorType": "nvidia-tesla-v100"
            }
          ],
          "machineType": "n1-standard-2"
        }
      },
      "specificReservationRequired": true,
      "zone": "us-central1-a"
    },
    {
      "name": "res-02",
      "specificReservation":
      {
        "count": "1",
        "instanceProperties":
        {
          "localSsds":
          [
            {
              "diskSizeGb": "375",
              "interface": "SCSI"
            },
            {
              "diskSizeGb": "375",
              "interface": "NVME"
            }
          ]
          "machineType": "n1-standard-8"
        }
      },
      "specificReservationRequired": false,
      "zone": "us-central1-a"
    }
  ]
}

Depois de comprar um compromisso com reservas anexadas, as reservas permanecerão ativas enquanto o compromisso estiver ativo. Quando o compromisso expirar, o Compute Engine excluirá automaticamente todas as reservas vinculadas. A exclusão dessas reservas não afeta nenhuma instância de VM em execução que esteja vinculada a essas reservas. As VMs em execução continuam sendo executadas e você ainda é cobrado por essas VMs.

Durante a vigência do compromisso, não é possível excluir nem redimensionar nenhuma reserva anexada que contenha GPUs, SSDs locais ou ambos. No entanto, é possível substituir as reservas anexadas atuais de um compromisso por novas. Para mais informações sobre o que pode ou não ser alterado nas reservas anexadas, consulte Substituir reservas anexadas a compromissos.

Comprar compromissos para licenças

É possível adquirir compromissos para suas licenças se você executar as cargas de trabalho em VMs que usam as seguintes imagens de sistema operacional (SO):

  • Imagens do SUSE Linux Enterprise Server (SLES)
  • SLES para imagens SAP

As porcentagens de CUD que você recebe para compromissos de licença de cada imagem do SO dependem do número de vCPUs que sua VM usa. As tabelas a seguir mostram as porcentagens de CUD para cada tipo de compromisso de licença de software:

Tipo de compromisso de licença Número de vCPUs Porcentagem de CUD de um ano Porcentagem de CUD de três anos
Imagens SLES 1-2 77% 79%
Imagens SLES 3-4 54% 59%
Imagens SLES 5+ 45% 50%
SLES para imagens SAP 1-2 59% 63%
SLES para imagens SAP 3-4 59% 63%
SLES para imagens SAP 5+ 59% 63%

Quando você compra um compromisso para licenças, ele forma um "conjunto" de licenças que são automaticamente aplicadas a qualquer instância de VM em execução em um projeto selecionado em uma região especificada. As licenças no compromisso não estão vinculadas a nenhuma VM específica. Quando uma VM é iniciada, ela usa uma licença comprometida do pool e, quando a VM é interrompida, ela retorna a licença para o pool, onde a licença pode ser usada por outra VM. Se houver licenças comprometidas disponíveis no pool, você continuará recebendo descontos por uso premium do SO.

Por exemplo, se você precisar executar 10 VMs em duas regiões (5 VMs em us-central1 e 5 VMs em us-west1) e com o mesmo ID do projeto, vai ser necessário comprar 5 licenças em cada região para cobrir as VMs em execução. As licenças comprometidas podem ser aplicadas a qualquer uma das cinco VMs em execução simultaneamente a qualquer momento durante o ano na respectiva região. Você receberá cobranças mensais pelo compromisso, independentemente do uso.

Depois de adquirir um compromisso, ele ficará ativo no dia seguinte à 0h dos EUA e do Horário do Pacífico canadense (UTC-8 ou UTC-7 durante o horário de verão). O Compute Engine mantém uma garantia no seu projeto para cada região do projeto em que você adquire um compromisso. Quando você adquire um novo compromisso para qualquer região do projeto, o Compute Engine associa a garantia dessa região ao compromisso recém-criado.

Entre o momento da compra do compromisso e o momento de ativação, o status dele permanece como NOT_YET_ACTIVE (ou como PENDING no console do Google Cloud). Após a ativação, o status do compromisso mudará para ACTIVE. Por exemplo, suponha que você compre o compromisso em 20 de janeiro às 22h nos EUA e no horário do Pacífico canadense (UTC-8 ou UTC-7). O Compute Engine cria seu compromisso imediatamente com o status dele como NOT_YET_ACTIVE. No entanto, seu compromisso passa a ser ACTIVE apenas em 21 de janeiro à 0h dos EUA e do Horário do Pacífico canadense (UTC-8 ou UTC-7).

Não é possível cancelar um compromisso de licença após a compra. Quando os compromissos de licença expiram, as VMs em execução continuam sendo executadas e você é cobrado pelas licenças com preços de imagens sob demanda.

Adquira um compromisso de licença usando o console do Google Cloud, a CLI do Google Cloud ou a REST.

Console

Antes de adquirir um compromisso usando o console do Google Cloud, selecione o projeto que você quer usar para adquirir o compromisso. Se o compartilhamento de descontos estiver ativado para uma conta de faturamento, será possível adquirir o compromisso usando qualquer projeto dessa conta. Depois de selecionar o projeto, execute as seguintes etapas:

  1. No Console do Google Cloud, acesse a página descontos por compromisso de uso.

    Acessar a página "Descontos por uso contínuo"

  2. Clique em Comprar compromisso para adquirir um novo.
  3. Clique em Nova licença de desconto por uso contínuo para comprar um novo compromisso de licença.
  4. Dê um nome ao compromisso e escolha a região em que ele será aplicado.
  5. Escolha um valor para a duração dele, sendo de 1 ou 3 anos.
  6. Escolha uma Família de licenças.
  7. Escolha o Tipo de licença e quantidade.
  8. Escolha o Número de licenças.
  9. Clique em Comprar.

gcloud

Usando a CLI gcloud, execute o comando gcloud compute commitments create-license para adquirir um compromisso de licença.

gcloud compute commitments create-license COMMITMENT_NAME \
    --license `LICENSE_URI`
    --amount NUMBER_OF_LICENSES \
    --cores-per-license CORES_PER_LICENSE \
    --plan PLAN \
    --region REGION \

Substitua:

  • COMMITMENT_NAME: o nome do compromisso.
  • LICENSE_URI: o URI da licença. Por exemplo: https://www.googleapis.com/compute/v1/projects/myproject/global/licenses/sles-sap-12
  • NUMBER_OF_LICENSES: o número de licenças que você planeja comprar.
  • CORES_PER_LICENSE: o número de núcleos por licença. Insira 1-2 3-4 ou 5+.
  • PLAN: digite a duração do plano, 12-month ou 36-month.
  • REGION: a região a que esse compromisso se aplica.

Por exemplo, o compromisso a seguir é para quatro licenças SAP com 3 a 4 núcleos por licença por 36 meses na região us-central1:

gcloud compute commitments create-license commitment-1
    --license https://www.googleapis.com/compute/v1/projects/myproject/global/licenses/sles-12
    --amount=4
    --cores-per-license=3-4
    --plan=36-month
    --region=us-central1

Por exemplo, o compromisso a seguir é para duas licenças do SLES para SAP com 1 a 2 núcleos por licença por 12 meses na região us-central1:

gcloud compute commitments create-license commitment-2
    --license https://www.googleapis.com/compute/v1/projects/myproject/global/licenses/sles-sap-12
    --amount=2
    --cores-per-license=1-2
    --plan=12-month
    --region=us-central1

REST

Use o método regionCommitments.insert e inclua o campo licenseResource para definir as propriedades do compromisso de licença.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments?requestId=OPTIONAL_UNIQUE_ID

{
    "name": COMMITMENT_NAME,
    "plan": PLAN,
    "category": "LICENSE",
    "licenseResource": {
      "coresPerLicense": CORES_PER_LICENSE,
      "amount": NUMBER_OF_LICENSES,
      "license": `LICENSE_URI`
      }
}

Substitua:

  • COMMITMENT_NAME: o nome do compromisso.
  • LICENSE_URI: o URI da licença. Por exemplo: https://www.googleapis.com/compute/v1/projects/myproject/global/licenses/sles-sap-12
  • NUMBER_OF_LICENSES: o número de licenças que você planeja comprar.
  • CORES_PER_LICENSE: o número de núcleos por licença. Insira 1-2 3-4 ou 5+.
  • PLAN: digite a duração do plano, 12-month ou 36-month.
  • REGION: a região a que esse compromisso se aplica.

Por exemplo, o compromisso a seguir é para quatro licenças do SLES para SAP com 3 a 4 núcleos por licença por 36 meses na região us-central1.

POST https://compute.googleapis.com/compute/v1/projects/myproject/regions/us-central1/commitments

{
    "name": "commitment-3",
    "plan": "THIRTY_SIX_MONTH",
    "category": "LICENSE",
    "licenseResource": {
      "coresPerLicense": "3-4",
      "amount": "4",
      "license": "https://www.googleapis.com/compute/v1/projects/suse-sap-cloud/global/licenses/sles-sap-12"
      }
}

Aplicar recomendações de desconto por compromisso de uso

O Google Cloud analisa as tendências de gastos da VM com e sem um compromisso e gera recomendações de CUDs. Use as recomendações de CUD para otimizar os custos de computação. É possível comparar os custos com e sem um compromisso e estimar quanto você pode economizar a cada mês com um compromisso.

As recomendações de CUD estão disponíveis no console do Google Cloud. O recomendador gera um cartão com informações sobre o uso da VM nos últimos 30 dias. Se as VMs mostrarem uma tendência de uso não contínuo ao longo de 30 dias, o recomendador vai classificar isso como uma oportunidade para comprar compromissos e reduzir os custos das VMs.

O uso é considerado descontínuo e qualificado se o seguinte for verdadeiro.

  • A VM ficou ativa por todo o período de 30 dias.
  • A SKU da VM faz parte de um bucket de desconto por uso contínuo qualificado.
  • O uso da VM ainda não foi coberto por um compromisso atual.

As recomendações são atualizadas uma vez por dia e consideram os últimos 30 dias do histórico de uso.

As recomendações para CUDs são geradas por dois algoritmos separados, que você pode selecionar ao comprá-los (ou aceitá-los) no card de resumo.

  • As recomendações de uso estável abrangem o uso estável mínimo ao longo do tempo.
  • Recomendações ideais são baseadas no uso geral e podem cobrir recursos que não estão sempre disponíveis.

Para saber mais sobre como as recomendações de CUD funcionam, consulte Recomendador de desconto por compromisso de uso.

Limitações

As recomendações de CUD estão disponíveis apenas para a CPU e o componente de memória dos compromissos do tipo de máquina. As recomendações de CUD não estão disponíveis para discos SSD locais, GPUs ou compromissos de licença.

Analisar e aceitar uma recomendação

Para saber como adquirir os compromissos recomendados, consulte Recomendações de compra.

Dispensar uma recomendação

Para saber como dispensar as recomendações de compromisso ou restaurar as recomendações recomendadas que foram dispensadas anteriormente, consulte Como dispensar recomendações.

Histórico de recomendações

Para saber como exibir o histórico das recomendações de compromisso aplicadas e dispensadas, consulte Visualizando o histórico de recomendações.

Ativar o compartilhamento de descontos para compromissos de hardware

Por padrão, os CUDs baseados em recursos são aplicados ao projeto em que você comprou os compromissos baseados em recursos e têm descontos no escopo do projeto. Se você mover o projeto para o qual comprou seus compromissos para uma conta diferente do Cloud Billing, continuará recebendo os descontos por compromisso de uso aplicáveis a esse projeto na nova conta.

Para compartilhar o desconto para compromissos de hardware durante o uso qualificado em todos os projetos vinculados à sua conta do Cloud Billing, ative o compartilhamento de desconto por uso contínuo no console do Google Cloud.

Quando você ativa o compartilhamento de desconto por uso contínuo, o escopo do compromisso é alterado de Projeto para Conta de faturamento. Depois de alterar o escopo do compromisso para Conta de faturamento ativando o compartilhamento de desconto, não é possível desativar o compartilhamento de desconto para voltar ao escopo do projeto. Em vez disso, o suporte do Cloud Billing precisa realizar essa ação para você.

O compartilhamento de descontos funciona com sua configuração de atribuição. Você pode usar a atribuição proporcional ou a atribuição priorizada.

A menos que você configure suas preferências de atribuição primeiro, ao ativar o compartilhamento de descontos, o padrão é usar a atribuição proporcional para os compromissos baseados em recursos do Compute Engine.

Se você quiser definir a configuração de atribuição antes de ativar o compartilhamento de descontos, consulte Escolher atribuição para compromissos baseados em recursos para saber mais detalhes e como ativar cada tipo de atribuição.

Siga estas etapas para ativar o compartilhamento de desconto por uso contínuo:

  1. Faça login na sua conta do Cloud Billing no Console do Google Cloud.

    Faça login na sua conta do Cloud Billing

  2. No prompt, escolha a conta de faturamento do Cloud em que você quer configurar os descontos por uso contínuo para usar o compartilhamento de descontos. A página Visão geral do faturamento é aberta para a conta do Cloud Billing selecionada.

  3. No menu de navegação "Faturamento", selecione Análise de CUD para visualizar a página de análise de descontos por uso contínuo.

  4. Na página Análise de desconto por compromisso de uso, no menu Tipo de compromisso, selecione Compromissos baseados em recursos.

  5. Abaixo do título do relatório Compromissos baseados em recursos, localize o Escopo do compromisso.

    • O escopo do projeto indica que o compartilhamento de desconto não está ativado para descontos por uso contínuo com base em recursos. Os descontos para escopo do projeto são aplicados somente ao uso qualificado no projeto em que os compromissos são comprados.
    • O escopo da conta de faturamento indica que o compartilhamento de desconto já está ativado para os compromissos baseados em recursos. Os compromissos de billing-account-scope aplicam os descontos por uso contínuo em todos os usos qualificados em todos os projetos associados ao Cloud Billing.
  6. Para alterar a configuração do escopo do compromisso, selecione Editar.

    • Se a propriedade escopo atual é Projeto, na caixa de entrada de texto, digite Ativar para ativar o compartilhamento de desconto na conta de faturamento, clique em Ativar escopo da conta de faturamento para salvar as alterações.

    • Se o escopo atual para Conta de faturamento, o compartilhamento de descontos já estará ativado. Para desativar o compartilhamento de desconto e reverter para os compromissos com escopo do Projeto, clique em Entrar em contato com o suporte.

Você só precisa ativar o compartilhamento de descontos em um compromisso baseado em recursos com escopo do projeto para afetar o escopo de todos os compromissos baseados em recursos na mesma conta do Cloud Billing. Quando você ativa o compartilhamento de desconto por uso contínuo, o escopo do compromisso muda da seguinte maneira:

  • Todos os descontos por uso contínuo baseados em recursos ativos e atuais em todos os projetos da mesma conta do Cloud Billing, incluindo aqueles comprados anteriormente e os que forem comprados no futuro, serão compartilhados entre sua conta do Cloud Billing.
  • Quando você altera a configuração do escopo do compromisso, como criar um novo projeto vinculado à conta do Cloud Billing ou vincular um projeto à conta do Cloud Billing, a alteração entra em vigor no dia seguinte à 0h (meia-noite) nos EUA e no horário do Pacífico canadense (UTC-8 ou UTC-7).
  • Se você mover o projeto que tinha o compromisso original para uma nova conta do Cloud Billing, as configurações de compartilhamento de desconto serão alteradas. Para informações sobre os efeitos da alteração da conta do Cloud Billing em um projeto, consulte Alterar a conta do Cloud Billing vinculada a um projeto.

Para entender melhor como os descontos por uso contínuo afetam e aparecem na sua fatura, consulte Noções básicas da sua fatura com descontos por uso contínuo.

Ver seus compromissos

Confira a lista de todos os seus compromissos no console do Google Cloud, na CLI do Google Cloud ou na REST.

Console

No console do Google Cloud, visualize uma lista de compromissos na página desconto por compromisso de uso.

Acesse "Descontos por uso contínuo"

gcloud

Para fazer uma solicitação, use o comando commitments list:

gcloud compute commitments list

A ferramenta retorna uma lista de compromissos:

 NAME              REGION    END_TIMESTAMP                  STATUS
 my-commitment     us-east1  2018-03-17T00:00:00.000-07:00  NOT_YET_ACTIVE

REST

Para ter acesso a uma lista de compromissos em todas as regiões, faça uma solicitação aggregatedList ao URL a seguir:

https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/commitments

Ele retorna uma lista de compromissos:

"commitments": [
{
  "kind": "compute#commitment",
  "id": "3294122326373778983",
  "creationTimestamp": "2017-02-09T15:18:32.411-08:00",
  "name": "example-commitment",
  "region": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1",
  "selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/commitments/example-commitment",
  "status": "NOT_YET_ACTIVE",
  "statusMessage": "The commitment is not yet active (its startTimestamp is in the future). It will not apply to current resource usage.",
  "plan": "TWELVE_MONTH",
  "startTimestamp": "2017-02-10T00:00:00.000-08:00",
  "endTimestamp": "2018-02-10T00:00:00.000-08:00",
  "resources": [
    {
      "type": "VCPU",
      "amount": "5"
    },
    {
      "type": "MEMORY",
      "amount": "32500"
    }]
  }
]

Modificar um compromisso

É possível modificar seus compromissos ativos das seguintes maneiras:

Depois de criar o compromisso, não será possível modificar o projeto, o tipo ou a região dele.

Cancelar um compromisso

Depois de criar um compromisso, não é possível cancelá-lo. É necessário pagar o valor mensal que você aceitou pela duração do compromisso. Os compromissos não são afetados por futuras alterações nos preços padrão dos recursos do Compute Engine.

Se você adquiriu um compromisso por engano ou cometeu um erro ao configurá-lo, entre em contato com o suporte do Cloud Billing para receber ajuda.

Entender sua fatura com descontos por compromisso de uso

Leia os seguintes documentos para entender melhor o faturamento:

Suporte

Em caso de dúvidas sobre descontos por uso contínuo na sua fatura, entre em contato com o suporte do Google Cloud (em inglês).

A seguir