Para ajudar você a gerenciar os requisitos de recursos dos projetos, o Compute Engine permite mesclar ou dividir os compromissos atuais e redistribuir os recursos para corresponder à granularidade necessária para os projetos.
Neste documento, descrevemos os benefícios e o processo de mesclagem e divisão de compromissos, incluindo as limitações e os requisitos.
Antes de começar
-
Configure a autenticação, caso ainda não tenha feito isso.
Com isso, você confirma 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 selecionando uma das seguintes opções:
Selecione a guia para como planeja usar as amostras nesta página:
Console
Quando você usa o console Google Cloud para acessar serviços Google Cloud e APIs, não é necessário configurar a autenticação.
gcloud
-
Instale a CLI do Google Cloud. Após a instalação, inicialize a Google Cloud CLI executando o seguinte comando:
gcloud initAo usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
-
- Defina uma região e uma zona padrão.
REST
Para usar as amostras da API REST desta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
Instale a CLI do Google Cloud.
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
Saiba mais em Autenticar para usar REST na documentação de autenticação do Google Cloud .
Mesclar compromissos
É possível mesclar vários compromissos compatíveis para criar um novo compromisso maior. Ao mesclar compromissos, é possível os rastrear e gerenciar como uma única entidade. A mesclagem de compromissos ajuda a evitar datas de término de compromissos escalonadas em conjunto de prazos de validade individuais ao mesmo tempo. A mesclagem também permite intensificar gradualmente suas cargas de trabalho. Por exemplo, é possível comprar compromissos mais recentes e menores quando precisar e mesclar os compromissos juntos ou com um compromisso existente.
Como funciona a mesclagem
Ao mesclar compromissos individuais (compromissos de origem), você cria um novo compromisso (compromisso mesclado) que combina recursos de todos os compromissos de origem. Às 0h dos EUA e do Horário do Pacífico canadense (UTC-8 ou UTC-7, durante o horário de verão) do dia seguinte, o compromisso mesclado fica ativo e os compromissos de origem são cancelados. Essa data de ativação se torna a data de início do compromisso mesclado, e a operação de mesclagem é concluída.
O compromisso mesclado herda as seguintes propriedades, independente de os compromissos de origem terem uma duração de prazo predefinida ou personalizada:
- A data de término mais distante no futuro entre os compromissos de origem.
- O período de qualificação para extensão de prazo que termina mais cedo entre os compromissos de origem.
Como o compromisso mesclado só pode ser criado depois que os compromissos de origem estão ativos, ele pode ter uma duração personalizada em vez da duração predefinida de 1 ou 3 anos. No entanto, o compromisso mesclado mantém o plano de compromisso de 1 ou 3 anos dos compromissos de origem.
Por exemplo, considere dois compromissos de origem que começam em 1º de janeiro de 2020 e 1º de dezembro de 2020. As datas de término são 1º de janeiro de 2023 e 1º de dezembro de 2023, respectivamente. O período de qualificação para a extensão do prazo do primeiro contrato permanece aberto até 1º de maio de 2020, e do segundo contrato até 1º de abril de 2021. Se você mesclar esses compromissos em 1º de março de 2022, o compromisso mesclado será um compromisso de prazo personalizado com uma data de início de 2 de março de 2022 e uma data de término de 1º de dezembro de 2023. O período de qualificação para a extensão do prazo do compromisso combinado já teria terminado em 1º de maio de 2020.
Se algum dos compromissos de origem tiver reservas anexadas, elas serão preservadas durante a mesclagem e anexadas ao compromisso mesclado após a criação. Para mais informações sobre compromissos com reservas anexadas, consulte Anexar reservas a compromissos baseados em recursos.
Exemplo de um compromisso mesclado
A tabela a seguir mostra as propriedades dos compromissos de origem e mesclados quando
você mescla dois compromissos (source-commitment-1 e source-commitment-2)
em um único compromisso (merged-commitment) em 1o de março de 2022:
| Compromisso de primeira origem | Compromisso de segunda origem | Compromisso mesclado | |
|---|---|---|---|
| Nome | source-commitment-1 | source-commitment-2 | merged-commitment |
| Tipo | N2 | N2 | N2 |
| Região | us-central1 | us-central1 | us-central1 |
| Recursos |
|
|
|
| Termo | 3 anos | 3 anos | 3 anos |
| Data de início* | 1º de janeiro de 2020 | 1º de dezembro de 2020 | 2 de março de 2022 (dia após a mesclagem) |
| Data de término† | 1 de janeiro de 2023 | 1 de dezembro de 2023 | 1 de dezembro de 2023 |
| Período de qualificação para extensão do prazo aberto até | 1º de maio de 2020 | 1º de abril de 2021 | 1º de maio de 2020 |
*Todos os compromissos começam à 0h no horário do Pacífico dos EUA e do Canadá (UTC-8 ou UTC-7) na data de início especificada.
†Todos os compromissos expiram à 0h no horário do Pacífico dos EUA e do Canadá (UTC-8 ou UTC-7) na data de término especificada.
Implicações nos preços
A taxa de compromisso é a soma dos preços com desconto de todos os recursos confirmados. Quando você mescla os compromissos, os preços com desconto dos recursos do compromisso mesclado podem mudar no dia em que o compromisso mesclado se torna ativo. Esse novo preço com desconto para cada recurso permanece o mesmo até o final do prazo do compromisso mesclado, mesmo que os preços sob demanda sejam alterados. No entanto, se você mesclar ou dividir esse compromisso novamente, os preços com desconto dos recursos poderão mudar novamente.
Limitações
- Não é possível mesclar compromissos de licença.
- O compromisso mesclado inclui automaticamente todas as reservas já vinculadas aos compromissos de origem. Não é possível anexar outras reservas (novas ou atuais) ao compromisso mesclado.
- Não é possível mesclar compromissos que expiraram ou foram cancelados.
- Por padrão, quando você cria compromissos mesclados, a configuração de renovação automática fica desativada nos novos compromissos, mesmo que todos os compromissos de origem estejam definidos para renovação automática. Se você quiser renovar seus compromissos mesclados de maneira automática, ative manualmente a configuração de renovação automática nesses compromissos. Isso pode ser feito no momento da criação ou após a criação.
Requisitos
Ao mesclar compromissos de origem individuais para criar um novo compromisso mesclado, eles precisam atender aos seguintes requisitos:
- Os compromissos de origem precisam ter o mesmo projeto, região, plano de compromisso, tipo de compromisso e categoria de compromisso.
- O compromisso mesclado precisa ter o mesmo projeto, região, plano, tipo e categoria dos compromissos de origem. No entanto, é possível escolher um novo nome para o compromisso mesclado.
- Os tipos de recursos especificados para o compromisso mesclado precisam corresponder exatamente aos tipos de recursos nos compromissos de origem. Além disso, a quantidade de cada tipo de recurso no compromisso mesclado precisa ser a soma das quantidades desse tipo de recurso em todos os compromissos de origem. Por exemplo, se o primeiro compromisso de origem tem 100 vCPUs e 100 GB de memória, e o segundo tem 200 vCPUs e 300 GB de memória, você precisa criar o compromisso mesclado com 300 vCPUs e 400 GB de memória.
- Os compromissos de origem e mesclados precisam ser para recursos de hardware (vCPUs, memória, GPUs e discos SSD locais).
Criar compromissos mesclados
Crie um compromisso mesclado usando a CLI gcloud ou a REST. Antes de mesclar compromissos, consulte as limitações de mesclagem.
Console
No console Google Cloud , selecione o projeto em que você quer mesclar compromissos. Em seguida, acesse a página Descontos por uso contínuo.
Para iniciar a operação de mesclagem para um conjunto de compromissos, na guia Compromissos de hardware da página Lista de compromissos, clique em Mesclar.
Outra possibilidade é selecionar os compromissos que você quer mesclar na lista e clicar em Mesclar.
Na guia Escolher compromisso da página Mesclar aberta, faça isto:
Em Escolher compromissos para mesclar, selecione na lista os compromissos que você quer mesclar. Se você já selecionou esses compromissos na página Lista de compromissos, verifique os compromissos selecionados nessa guia.
Opcional: para filtrar a lista de compromissos, especifique os valores de Plano, Região e Tipo de compromisso para o compromisso mesclado antes de selecionar qualquer compromisso.
Clique em Próxima. A guia Revisar abre.
Na guia Revisar da página Mesclar, faça isto:
Analise e confirme os detalhes do compromisso mesclado. Para modificar a lista de compromissos individuais, selecione a guia Escolher compromisso no lado esquerdo da janela e repita a etapa 3.
No campo Novo nome do compromisso, insira um nome para o compromisso mesclado.
Opcional: para ativar a renovação automática no compromisso mesclado, marque a caixa de seleção Ativar renovação automática.
Leia os Termos e Condições.
Para concluir a criação do compromisso mesclado e retornar à página Lista de compromissos, clique em Mesclar.
gcloud
Para mesclar os compromissos atuais em um único compromisso, use o comando
gcloud compute commitments create
com a sinalização --merge-source-commitment.
gcloud compute commitments create COMMITMENT_NAME \
--region=REGION \
--project=PROJECT_ID \
--plan=COMMITMENT_PLAN \
--type=COMMITMENT_TYPE \
--resources=vcpu=NUMBER_VCPUS,memory=MEMORY \
--merge-source-commitments=SOURCE_COMMITMENT_URLS
Substitua:
COMMITMENT_NAME: o nome do novo compromisso mesclado.NUMBER_VCPUS: a soma dos números de vCPUs nos compromissos de origem.COMMITMENT_TYPE: o mesmo tipo de compromisso que seus compromissos de origem, um dos seguintes:- Para tipos de máquina A2, use
accelerator-optimized - Para tipos de máquina A3 Edge e A3 High, use
accelerator-optimized-a3 - Para tipos de máquina A3 Mega, use
accelerator-optimized-a3-mega - Para tipos de máquina G2, use
graphics-optimized - Para tipos de máquinas G4, use
graphics-optimized-g4 - Para tipos de máquina C2, use
compute-optimized - Para tipos de máquina C2D, use
compute-optimized-c2d - Para tipos de máquina C3, use
compute-optimized-c3 - Para tipos de máquina C3D, use
compute-optimized-c3d - Para tipos de máquina H3, use
compute-optimized-h3 - Para tipos de máquina H4D, use
compute-optimized-h4d - Para tipos de máquinas N1, use
general-purpose - Para tipos de máquina C4, use
general-purpose-c4 - Para tipos de máquina C4A, use
general-purpose-c4a - Para tipos de máquina C4D, use
general-purpose-c4d - Para tipos de máquina E2, use
general-purpose-e2 - Para tipos de máquinas N2, use
general-purpose-n2 - Para tipos de máquinas N2D, use
general-purpose-n2d - Para tipos de máquina N4, use
general-purpose-n4 - Para tipos de máquinas N4D, use
general-purpose-n4d - Para tipos de máquina N4A, use
general-purpose-n4a - Para tipos de máquina Tau T2D, use
general-purpose-t2d - Para tipos de máquina M1 ou M2, use
memory-optimized - Para tipos de máquina M3, use
memory-optimized-m3 - Para tipos de máquina M4, use
memory-optimized-m4 - Para tipos de máquina M4 com 6 TB de memória, use
memory-optimized-m4-6tb - Para tipos de máquina X4 com 6 TB de memória, use
memory-optimized-x4-6t - Para tipos de máquina X4 com 8 TB de memória, use
memory-optimized-x4-8t - Para tipos de máquina X4 com 12 TB de memória, use
memory-optimized-x4-12t - Para tipos de máquina X4 com 16 TB de memória, use
memory-optimized-x4-960-16t - Para tipos de máquina X4 com 24 TB de memória, use
memory-optimized-x4-1440-24t - Para tipos de máquina X4 com 32 TB de memória, use
memory-optimized-x4-1920-32t - Para tipos de máquina Z3, use
storage-optimized-z3
- Para tipos de máquina A2, use
REGION: a mesma região do seus compromissos de origem.PROJECT_ID: o ID do projeto em que você quer mesclar os compromissos.COMMITMENT_PLAN: o plano de compromisso ("12-month" ou "36-month"), que precisa ser o mesmo dos seus compromissos de origem.MEMORY: a soma das quantidades de memória, em MB ou GB, nos compromissos de origem. Por exemplo, 1.000 MB. Se você não especificar uma unidade, a unidade padrão será GB.SOURCE_COMMITMENT_URLS: uma lista separada por vírgulas de pelo menos dois URLs de compromisso de origem distintos. Não adicione espaços entre os URLs.
Por exemplo, considere dois compromissos de origem na região us-east1 com
recursos especificados como quatro vCPUs N2 e 2048 MB, e
três vCPUs N2 e 2048 MB, respectivamente. O plano de compromisso para cada
compromisso de origem é 12-month. O comando da CLI gcloud a seguir mescla os dois compromissos e cria um novo chamado merged-commitment. O compromisso mesclado especifica os recursos como sete vCPUs N2 e 4.096 MB, e o plano de compromisso é 12-month:
gcloud compute commitments create merged-commitment \
--plan=12-month \
--project=myproject \
--region=us-east1 \
--type=general-purpose-n2 \
--resources=vcpu=7,memory=4096MB \
--merge-source-commitments=projects/myproject/regions/us-east1/commitments/source-commitment-1,projects/myproject/regions/us-east1/commitments/source-commitment-2
REST
Para mesclar compromissos atuais em um único compromisso, use o
método regionCommitments.insert.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments
{
"name": COMMITMENT_NAME,
"plan": COMMITMENT_PLAN,
"type": COMMITMENT_TYPE,
"region": REGION,
"resources": [
{
"type": "vCPUs",
"amount": NUMBER_VCPUS
}
{
"type": "MEMORY",
"amount": MEMORY
}
],
"mergeSourceCommitments": [SOURCE_COMMITMENT_URL ...]
}
Substitua:
PROJECT_ID: o ID do projeto em que você quer mesclar os compromissos.REGION: a mesma região do seus compromissos de origem.COMMITMENT_TYPE: o mesmo tipo de compromisso que seus compromissos de origem, um dos seguintes:- Para tipos de máquina A2, use
ACCELERATOR_OPTIMIZED - Para tipos de máquina A3 Edge e A3 High, use
ACCELERATOR_OPTIMIZED_A3 - Para tipos de máquina A3 Mega, use
ACCELERATOR_OPTIMIZED_A3_MEGA - Para tipos de máquina G2, use
GRAPHICS_OPTIMIZED - Para tipos de máquinas G4, use
GRAPHICS_OPTIMIZED_G4 - Para tipos de máquina C2, use
COMPUTE_OPTIMIZED - Para tipos de máquina C2D, use
COMPUTE_OPTIMIZED_C2D - Para tipos de máquina C3, use
COMPUTE_OPTIMIZED_C3 - Para tipos de máquina C3D, use
COMPUTE_OPTIMIZED_C3D - Para tipos de máquina H3, use
COMPUTE_OPTIMIZED_H3 - Para tipos de máquina H4D, use
COMPUTE_OPTIMIZED_H4D - Para tipos de máquinas N1, use
GENERAL_PURPOSE - Para tipos de máquina C4, use
GENERAL_PURPOSE_C4 - Para tipos de máquina C4A, use
GENERAL_PURPOSE_C4A - Para tipos de máquina C4D, use
GENERAL_PURPOSE_C4D - Para tipos de máquina E2, use
GENERAL_PURPOSE_E2 - Para tipos de máquinas N2, use
GENERAL_PURPOSE_N2 - Para tipos de máquinas N2D, use
GENERAL_PURPOSE_N2D - Para tipos de máquina N4, use
GENERAL_PURPOSE_N4 - Para tipos de máquinas N4D, use
GENERAL_PURPOSE_N4D - Para tipos de máquina N4A, use
GENERAL_PURPOSE_N4A - Para tipos de máquina Tau T2D, use
GENERAL_PURPOSE_T2D - Para tipos de máquina M1 ou M2, use
MEMORY_OPTIMIZED - Para tipos de máquina M3, use
MEMORY_OPTIMIZED_M3 - Para tipos de máquina M4, use
MEMORY_OPTIMIZED_M4 - Para tipos de máquina M4 com 6 TB de memória, use
MEMORY_OPTIMIZED_M4_6TB - Para tipos de máquina X4 com 6 TB de memória, use
MEMORY_OPTIMIZED_X4_480_6T - Para tipos de máquina X4 com 8 TB de memória, use
MEMORY_OPTIMIZED_X4_480_8T - Para tipos de máquina X4 com 12 TB de memória, use
MEMORY_OPTIMIZED_X4_960_12T - Para tipos de máquina X4 com 16 TB de memória, use
MEMORY_OPTIMIZED_X4_960_16T - Para tipos de máquina X4 com 24 TB de memória, use
MEMORY_OPTIMIZED_X4_1440_24T - Para tipos de máquina X4 com 32 TB de memória, use
MEMORY_OPTIMIZED_X4_1920_32T - Para tipos de máquina Z3, use
STORAGE_OPTIMIZED_Z3
- Para tipos de máquina A2, use
COMMITMENT_PLAN: o plano de compromisso ('TWELVE_MONTH' ou 'THIRTY_SIX_MONTH'), que precisa ser o mesmo dos seus compromissos de origem.COMMITMENT_NAME: o nome do novo compromisso mesclado.NUMBER_VCPUS: o número total de vCPUs nos compromissos de origem.MEMORY: a soma das quantidades de memória, em MB, nos compromissos de origem. Por exemplo, 1.000 MB. Se você não especificar uma unidade, o padrão será MB.SOURCE_COMMITMENT_URL: o URL do compromisso de origem que você quer mesclar. Especifique uma lista separada por vírgulas de URLs de compromisso de origem distintos.
Por exemplo, considere dois compromissos de origem (source-commitment-1 e
source-commitment-2) na região us-east1 com os recursos
especificados como (quatro vCPUs N2 e 2048 MB) e (três vCPUs N2 e
2048 MB), respectivamente. O plano de compromisso para cada compromisso de origem é TWELVE_MONTH. A solicitação POST a seguir mescla os compromissos de origem e cria um novo compromisso chamado merged-commitment. O
compromisso mesclado especifica os recursos como sete vCPUs N2 e 4.096 MB,
e o plano de compromisso é TWELVE_MONTH.
POST https://compute.googleapis.com/compute/v1/projects/myproject/regions/us-east1/commitments
{
"name": "merged-commitment",
"plan": "TWELVE_MONTH",
"type": "GENERAL_PURPOSE_N2",
"region": "us-east1",
"resources": [
{
"type": "VCPU",
"amount": "7"
}
{
"type": "MEMORY",
"amount": "4096"
}
],
"mergeSourceCommitments": [
"projects/myproject/regions/us-east1/commitments/source-commitment-1",
"projects/myproject/regions/us-east1/commitments/source-commitment-2",
...
]
}
Dividir compromissos
É possível transferir recursos de um compromisso atual e dividi-lo em compromissos menores. A divisão permite que você monitore e gerencie partes de um grande compromisso como compromissos individuais menores. Por exemplo, é possível definir apenas uma parte de um compromisso para renovar automaticamente ao dividi-lo e ativar a renovação automática para apenas um dos compromissos filhos. Com a divisão, também é possível distribuir os descontos por uso contínuo em um nível mais granular usando a atribuição priorizada para os compromissos de divisão.
Como funciona a divisão
Ao dividir um compromisso atual (compromisso de origem), você transfere os recursos do compromisso de origem, cria um ou mais novos compromissos (compromissos de divisão) e redistribui os recursos transferidos entre os novos compromissos de divisão. A ativação dos compromissos de divisão e o redimensionamento do compromisso de origem ocorrem às 0h do Horário do Pacífico dos EUA e do Canadá (UTC-8 ou UTC-7, durante o horário de verão) do dia seguinte. O Compute Engine define essa data de ativação como a data de início para os compromissos divididos. Após a conclusão da operação de divisão, você terá os seguintes compromissos:
- O compromisso de origem redimensionado com os recursos que permanecem após a divisão.
- Os compromissos divididos com os recursos redistribuídos.
O compromisso de origem, embora redimensionado, mantém todos os outros atributos, incluindo as datas de início e término, e continua funcionando normalmente. Os compromissos divididos mantêm a mesma data de término e janela de qualificação para extensão de prazo do compromisso de origem.
Como os compromissos divididos só podem ser criados depois que o compromisso de origem já está ativo, eles podem ter uma duração personalizada em vez da duração predefinida de 1 ou 3 anos. No entanto, os compromissos divididos mantêm o plano de compromisso de 1 ou 3 anos do compromisso de origem.
É possível criar apenas um novo compromisso dividido por vez usando REST e a CLI gcloud. É possível criar vários novos compromissos de divisão em uma única operação usando o console Google Cloud .
Não é possível dividir um compromisso que tenha reservas anexadas. Para mais informações sobre compromissos com reservas anexadas, consulte Como combinar reservas com descontos por compromisso de uso.
Exemplo de um compromisso dividido
A tabela a seguir mostra as propriedades do compromisso quando você divide um compromisso
atual (source-commitment) em dois compromissos distintos
(um source-commitment redimensionado e um split-commitment) em 1o de março de 2022:
| Compromisso de origem (antes da divisão) |
Compromisso dividido | Compromisso de origem (após a divisão) |
|
|---|---|---|---|
| Nome | source-commitment | split-commitment | source-commitment |
| Tipo | N2 | N2 | N2 |
| Região | us-central1 | us-central1 | us-central1 |
| Recursos |
|
|
|
| Período do contrato | 3 anos | 3 anos | 3 anos |
| Data de início* | 1º de janeiro de 2020 | 2 de março de 2022 (dia após a divisão) |
1º de janeiro de 2020 |
| Data de término† | 1 de janeiro de 2023 | 1 de janeiro de 2023 | 1 de janeiro de 2023 |
| Período de qualificação para extensão do prazo aberto até | 1 de janeiro de 2021 | 1 de janeiro de 2021 | 1 de janeiro de 2021 |
*Todos os compromissos começam à 0h no horário do Pacífico dos EUA e do Canadá (UTC-8 ou UTC-7) na data de início especificada.
†Todos os compromissos expiram à 0h no horário do Pacífico dos EUA e do Canadá (UTC-8 ou UTC-7) na data de término especificada.
Implicações nos preços
A taxa de compromisso é a soma dos preços com desconto de todos os recursos confirmados. A divisão de um compromisso afeta os custos de recursos das seguintes maneiras:
- Compromisso de origem redimensionado: os preços com desconto dos recursos do seu compromisso de origem redimensionado permanecem os mesmos.
- Compromisso de divisão: os preços com desconto dos recursos do compromisso dividido podem mudar no dia em que o compromisso dividido se torna ativo. Esse novo preço com desconto para cada recurso permanece o mesmo até o final do prazo do novo compromisso dividido, mesmo que os preços sob demanda sejam alterados.
No entanto, se você mesclar ou dividir qualquer um desses compromissos novamente, os preços com desconto poderão mudar de novo.
Limitações
- Não é possível dividir compromissos de licença.
- Não é possível dividir compromissos que tenham reservas anexadas. Consequentemente, não é possível dividir compromissos que tenham GPUs, discos SSDs locais ou ambos, porque os compromissos com esses recursos sempre têm reservas anexadas.
- Não é possível anexar reservas (novas ou atuais) aos compromissos divididos.
- Não é possível dividir compromissos que expiraram ou foram cancelados.
- Por padrão, quando você divide seus compromissos, a configuração de renovação automática fica desativada nos compromissos divididos, mesmo que todos os compromissos de origem estejam definidos para renovação automática. Se você quiser renovar seus compromissos divididos de maneira automática, ative manualmente a configuração de renovação automática nesses compromissos. Isso pode ser feito no momento da criação ou após a criação.
- É possível criar apenas um novo compromisso dividido por vez usando REST ou a CLI gcloud. Como resultado, é possível dividir seu compromisso de origem em até dois compromissos em uma única operação ao usar essas interfaces. Para dividir o compromisso de origem em três ou mais compromissos em uma única operação, use o console doGoogle Cloud .
- No console Google Cloud , é possível especificar a memória apenas em incrementos de 0,25 GB. Para especificar um valor de memória personalizado para seu compromisso, use a CLI gcloud ou a REST.
Requisitos
Ao dividir um compromisso de origem e criar um ou mais compromissos de divisão, seus compromissos de origem e divisão precisam atender aos seguintes requisitos:
- Os compromissos divididos precisam ter o mesmo projeto, tipo de compromisso, região e plano de compromisso do compromisso de origem. No entanto, é necessário escolher novos nomes para os compromissos divididos.
Os tipos de recursos especificados para os compromissos de divisão precisam corresponder a alguns ou todos os tipos de recursos no compromisso de origem. Além disso, a quantidade combinada de recursos especificada para os compromissos de divisão precisa ser uma parte dos recursos no compromisso de origem. Você precisa reter uma parte dos recursos no compromisso de origem. Por exemplo, se o compromisso de origem for de 200 vCPUs e 300 GB de memória, os seguintes cenários de redimensionamento e redistribuição serão aplicáveis:
- É possível redistribuir uma parte das 200 vCPUs e uma parte da memória de 300 GB entre os compromissos de divisão.
- É possível redistribuir todas as 200 vCPUs, mas é preciso manter uma parte da memória no compromisso de origem.
- É possível redistribuir toda a memória de 300 GB, mas é preciso manter uma parte das vCPUs no compromisso de origem.
- Não é possível redistribuir todas as 200 vCPUs e toda a memória de 300 GB entre seus compromissos de divisão.
Os compromissos de origem e divisão precisam especificar apenas os seguintes recursos de hardware: vCPUs, memória ou uma combinação de ambos.
Além disso, para dividir um compromisso de origem usando a Google Cloud CLI, atualize a Google Cloud CLI para a versão 423.0.0 ou mais recente. Se você usar uma versão anterior, a operação de divisão vai falhar e o Compute Engine vai gerar um erro.
Criar compromissos divididos
Crie um novo compromisso de divisão por vez usando a CLI gcloud ou a API Compute Engine. Crie vários novos compromissos divididos por vez usando o console do Google Cloud . Antes de dividir um compromisso, analise as limitações de divisão.
Console
No console Google Cloud , selecione o projeto em que você quer dividir um compromisso. Em seguida, acesse a página Descontos por uso contínuo.
Para iniciar a operação de divisão de um compromisso, siga um destes procedimentos na guia Compromissos de hardware da página Lista de compromissos:
- Selecione o compromisso que você quer dividir na lista e clique em Dividir.
- Na coluna Nome, clique no nome do compromisso que você quer dividir. Na página Detalhes do compromisso de hardware aberta, clique em Dividir.
Na guia Redimensionar da página Dividir compromisso aberta, faça isto:
- Nos campos vCPUs e Memória, especifique o número de vCPUs e a memória que você quer reter no compromisso original. Os recursos restantes estão disponíveis para redistribuição no seu compromisso de divisão. O compromisso de origem não pode estar vazio depois de ser redimensionado.
- Clique em Próxima. A guia Redistribuir abre.
Na guia Redistribuir da página Compromisso de divisão, faça o seguinte:
- No campo Nome, especifique um nome para o compromisso de divisão.
Nos campos vCPUs e Memória, especifique o número de vCPUs e a memória para seu compromisso de divisão. Só é possível especificar a memória em incrementos de 0,25 GB. Para especificar um valor de memória personalizado para seu compromisso, use a CLI gcloud ou a REST.
Se você quiser criar um único compromisso dividido, especifique todos os recursos que quer redistribuir do compromisso de origem. Se você quiser criar vários compromissos divididos, especifique apenas a parte dos recursos redistribuídos que você quer para esse compromisso dividido.
Opcional: para ativar a renovação automática no seu compromisso de divisão, marque a caixa de seleção Ativar renovação automática.
Clique em Concluído.
Opcional: para criar outros compromissos divididos, clique em Adicionar um item e repita as etapas anteriores.
Clique em Próxima. A guia Revisar abre.
Na guia Revisar da página Compromisso de divisão, faça o seguinte:
- Revise e confirme os detalhes do compromisso redimensionado e dos
compromissos divididos.
- Para modificar a alocação de recursos do compromisso original, selecione a guia Redimensionar no lado esquerdo da janela e repita a etapa 3.
- Para modificar a redistribuição de recursos entre os compromissos divididos, selecione a guia Redistribuir no lado esquerdo da janela e repita a etapa 4.
- Leia os Termos e Condições.
- Para concluir a criação dos seus compromissos divididos e retornar à página Lista de compromissos, clique em Enviar.
- Revise e confirme os detalhes do compromisso redimensionado e dos
compromissos divididos.
gcloud
Para dividir um compromisso existente em dois, use o comando gcloud compute commitments create com o flag --split-source-commitment.
gcloud compute commitments create COMMITMENT_NAME \
--region=REGION \
--project=PROJECT_ID \
--plan=COMMITMENT_PLAN \
--type=COMMITMENT_TYPE \
--resources=vcpu=NUMBER_VCPUS,memory=MEMORY \
--split-source-commitment=SOURCE_COMMITMENT_URL
Substitua:
COMMITMENT_NAME: o nome do novo compromisso de divisão.COMMITMENT_TYPE: o mesmo tipo de compromisso que seu compromisso de origem, um dos seguintes:- Para tipos de máquina A2, use
accelerator-optimized - Para tipos de máquina A3 Edge e A3 High, use
accelerator-optimized-a3 - Para tipos de máquina A3 Mega, use
accelerator-optimized-a3-mega - Para tipos de máquina G2, use
graphics-optimized - Para tipos de máquinas G4, use
graphics-optimized-g4 - Para tipos de máquina C2, use
compute-optimized - Para tipos de máquina C2D, use
compute-optimized-c2d - Para tipos de máquina C3, use
compute-optimized-c3 - Para tipos de máquina C3D, use
compute-optimized-c3d - Para tipos de máquina H3, use
compute-optimized-h3 - Para tipos de máquina H4D, use
compute-optimized-h4d - Para tipos de máquinas N1, use
general-purpose - Para tipos de máquina C4, use
general-purpose-c4 - Para tipos de máquina C4A, use
general-purpose-c4a - Para tipos de máquina C4D, use
general-purpose-c4d - Para tipos de máquina E2, use
general-purpose-e2 - Para tipos de máquinas N2, use
general-purpose-n2 - Para tipos de máquinas N2D, use
general-purpose-n2d - Para tipos de máquina N4, use
general-purpose-n4 - Para tipos de máquinas N4D, use
general-purpose-n4d - Para tipos de máquina N4A, use
general-purpose-n4a - Para tipos de máquina Tau T2D, use
general-purpose-t2d - Para tipos de máquina M1 ou M2, use
memory-optimized - Para tipos de máquina M3, use
memory-optimized-m3 - Para tipos de máquina M4, use
memory-optimized-m4 - Para tipos de máquina M4 com 6 TB de memória, use
memory-optimized-m4-6tb - Para tipos de máquina X4 com 6 TB de memória, use
memory-optimized-x4-6t - Para tipos de máquina X4 com 8 TB de memória, use
memory-optimized-x4-8t - Para tipos de máquina X4 com 12 TB de memória, use
memory-optimized-x4-12t - Para tipos de máquina X4 com 16 TB de memória, use
memory-optimized-x4-960-16t - Para tipos de máquina X4 com 24 TB de memória, use
memory-optimized-x4-1440-24t - Para tipos de máquina X4 com 32 TB de memória, use
memory-optimized-x4-1920-32t - Para tipos de máquina Z3, use
storage-optimized-z3
- Para tipos de máquina A2, use
REGION: a mesma região do seu compromisso de origem.PROJECT_ID: o ID do projeto em que você quer dividir o compromisso de origem.COMMITMENT_PLAN: o plano de compromisso ("12 meses" ou "36 meses"), que precisa ser o mesmo do compromisso de origem.NUMBER_VCPUS: o número de vCPUs que você quer transferir do compromisso de origem para criar o novo compromisso de divisão. Esse número precisa ser um número inteiro menor que o número de vCPUs no compromisso de origem.MEMORY: a quantidade de memória, em MB ou GB, que você quer transferir do compromisso de origem para criar o novo compromisso de divisão. Esse valor precisa ser menor que a quantidade de memória no compromisso de origem. Por exemplo, 10.000 MB. Se você não especificar uma unidade, a unidade padrão será GB.SOURCE_COMMITMENT_URL: o URL do compromisso de origem de onde você quer distribuir os recursos.
Por exemplo, considere um compromisso de origem (source-commitment) na
região us-east1 com recursos especificados como três vCPUs N2 e
2.048 MB de memória. O plano de compromisso do compromisso de origem é
12-month. O comando da CLI gcloud a seguir divide
o compromisso em dois compromissos separados:
gcloud compute commitments create split-commitment \
--plan=12-month \
--type=general-purpose-n2 \
--region=us-east1 \
--project=myproject \
--resources vcpu=1,memory=1024MB \
--split-source-commitment=projects/myproject/regions/us-east1/commitments/source-commitment
Ao dividir source-commitment, o Compute Engine faz o seguinte:
- Usa recursos de
source-commitmente cria um novo compromissosplit-commitmentcom uma vCPU N2 e 1.024 MB de memória. - Redimensiona
source-commitmentpara os recursos restantes.
REST
Para dividir um compromisso existente em dois, use o
método regionCommitments.insert.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments
{
"name": COMMITMENT_NAME,
"plan": COMMITMENT_PLAN,
"type": COMMITMENT_TYPE,
"region": REGION,
"resources": [
{
"type": "vCPUs",
"amount": NUMBER_VCPUS
}
{
"type": "MEMORY",
"amount": MEMORY
}
],
"splitSourceCommitment": SOURCE_COMMITMENT_URL
}
Substitua:
PROJECT_ID: o ID do projeto em que você quer dividir o compromisso de origem.REGION: a mesma região do seu compromisso de origem.COMMITMENT_NAME: o nome do novo compromisso de divisão.COMMITMENT_TYPE: o mesmo tipo de compromisso que seu compromisso de origem, um dos seguintes:- Para tipos de máquina A2, use
ACCELERATOR_OPTIMIZED - Para tipos de máquina A3 Edge e A3 High, use
ACCELERATOR_OPTIMIZED_A3 - Para tipos de máquina A3 Mega, use
ACCELERATOR_OPTIMIZED_A3_MEGA - Para tipos de máquina G2, use
GRAPHICS_OPTIMIZED - Para tipos de máquinas G4, use
GRAPHICS_OPTIMIZED_G4 - Para tipos de máquina C2, use
COMPUTE_OPTIMIZED - Para tipos de máquina C2D, use
COMPUTE_OPTIMIZED_C2D - Para tipos de máquina C3, use
COMPUTE_OPTIMIZED_C3 - Para tipos de máquina C3D, use
COMPUTE_OPTIMIZED_C3D - Para tipos de máquina H3, use
COMPUTE_OPTIMIZED_H3 - Para tipos de máquina H4D, use
COMPUTE_OPTIMIZED_H4D - Para tipos de máquinas N1, use
GENERAL_PURPOSE - Para tipos de máquina C4, use
GENERAL_PURPOSE_C4 - Para tipos de máquina C4A, use
GENERAL_PURPOSE_C4A - Para tipos de máquina C4D, use
GENERAL_PURPOSE_C4D - Para tipos de máquina E2, use
GENERAL_PURPOSE_E2 - Para tipos de máquinas N2, use
GENERAL_PURPOSE_N2 - Para tipos de máquinas N2D, use
GENERAL_PURPOSE_N2D - Para tipos de máquina N4, use
GENERAL_PURPOSE_N4 - Para tipos de máquinas N4D, use
GENERAL_PURPOSE_N4D - Para tipos de máquina N4A, use
GENERAL_PURPOSE_N4A - Para tipos de máquina Tau T2D, use
GENERAL_PURPOSE_T2D - Para tipos de máquina M1 ou M2, use
MEMORY_OPTIMIZED - Para tipos de máquina M3, use
MEMORY_OPTIMIZED_M3 - Para tipos de máquina M4, use
MEMORY_OPTIMIZED_M4 - Para tipos de máquina M4 com 6 TB de memória, use
MEMORY_OPTIMIZED_M4_6TB - Para tipos de máquina X4 com 6 TB de memória, use
MEMORY_OPTIMIZED_X4_480_6T - Para tipos de máquina X4 com 8 TB de memória, use
MEMORY_OPTIMIZED_X4_480_8T - Para tipos de máquina X4 com 12 TB de memória, use
MEMORY_OPTIMIZED_X4_960_12T - Para tipos de máquina X4 com 16 TB de memória, use
MEMORY_OPTIMIZED_X4_960_16T - Para tipos de máquina X4 com 24 TB de memória, use
MEMORY_OPTIMIZED_X4_1440_24T - Para tipos de máquina X4 com 32 TB de memória, use
MEMORY_OPTIMIZED_X4_1920_32T - Para tipos de máquina Z3, use
STORAGE_OPTIMIZED_Z3
- Para tipos de máquina A2, use
COMMITMENT_PLAN: o plano de compromisso ("TWELVE_MONTH" ou "THIRTY_SIX_MONTH"), que precisa ser o mesmo do seu compromisso de origem.NUMBER_VCPUS: o número de vCPUs que você quer transferir do compromisso de origem para criar o novo compromisso de divisão. Esse número precisa ser um número inteiro menor que o número de vCPUs no compromisso de origem.MEMORY: a quantidade de memória, em MB, que você quer transferir do compromisso de origem para criar o novo compromisso de divisão. Esse valor precisa ser menor que a quantidade de memória no compromisso de origem. Por exemplo, 1.000 MB. Se você não especificar uma unidade, a unidade padrão será MB.SOURCE_COMMITMENT_URL: o URL do compromisso de origem de onde você quer transferir os recursos.
Por exemplo, considere um compromisso de origem (source-commitment) na
região us-east1 com recursos especificados como três vCPUs N2 e
2.048 MB de memória. O plano de compromisso do compromisso de origem é
TWELVE_MONTH. A solicitação POST a seguir divide o compromisso em dois compromissos separados:
POST https://compute.googleapis.com/compute/v1/projects/myproject/regions/us-east1/commitments
{
"name": "split-commitment",
"plan": "TWELVE_MONTH",
"type": "GENERAL_PURPOSE_N2",
"region": "us-east1",
"resources": [
{
"type": "VCPU",
"amount": "1"
}
{
"type": "MEMORY",
"amount": "1024"
}
],
"splitSourceCommitment": "projects/myproject/regions/us-east1/commitments/source-commitment"
}
Ao dividir source-commitment, o Compute Engine faz o seguinte:
- Usa recursos de
source-commitmente cria um novo compromissosplit-commitmentcom uma vCPU N2 e 1.024 MB de memória. - Redimensiona
source-commitmentpara os recursos restantes.
A seguir
- Saiba como renovar automaticamente os compromissos com base em recursos.
- Saiba como estender o prazo dos compromissos baseados em recursos.
- Saiba como fazer upgrade de compromissos baseados em recursos.
- Aprenda a analisar a eficácia dos seus CUDs.