Todos os produtos
Search
Central de documentação

Elastic Compute Service:CreateCapacityReservation

Última atualização: Oct 09, 2026

Cria uma reserva de capacidade especificando o tipo de instância, o número total de instâncias, o modo de vigência e a zona.

Descrição da operação

Descrição da operação

Você pode usar o serviço de reserva de capacidade para especificar configurações de propriedades, como a zona e o tipo de instância. O sistema reserva recursos que correspondem às configurações de propriedades especificadas em um pool privado. Para obter mais informações, consulte Visão geral das reservas de capacidade imediatas.

  • Atualmente, o serviço suporta apenas o modo de vigência imediata. Após comprar uma reserva de capacidade imediata, o tipo de instância está sujeito à cobrança padrão pós-paga, independentemente de as instâncias pós-pagas serem realmente criadas, até que você a libere manualmente ou o sistema a libere automaticamente após o vencimento.
    • Você pode definir as configurações de capacidade do pool privado ao criar uma instância invocando CreateInstance ou RunInstances, ou modificar as opções de capacidade do pool privado de uma instância invocando ModifyInstanceAttachmentAttributes. Depois que uma instância corresponder com sucesso à capacidade do pool privado, você será cobrado por recursos como o tipo de instância, discos em nuvem e largura de banda pública com base nas configurações da sua instância.

    • Se nenhuma instância pós-paga for realmente criada, você será cobrado apenas pelo tipo de instância.

  • As faturas de instâncias correspondentes e a capacidade não utilizada das reservas de capacidade imediatas podem ser compensadas por planos de economia ou instâncias reservadas regionais por hora, mas não podem ser compensadas por instâncias reservadas zonais. Recomendamos que você compre primeiro instâncias reservadas ou planos de economia. O uso de reservas de capacidade imediatas sob a cobertura de instâncias reservadas ou planos de economia permite que você obtenha recursos garantidos gratuitamente.

Nota

Você pode invocar a API apenas para criar reservas de capacidade imediatas. Você pode criar reservas de capacidade imediatas ou reservas de capacidade agendadas no console do ECS. Para obter mais informações, consulte Garantia de recursos.

Experimente agora

Experimente esta API no OpenAPI Explorer, sem necessidade de assinatura manual. Chamadas bem-sucedidas geram automaticamente código SDK correspondente aos seus parâmetros. Faça o download com segurança de credenciais integrada para uso local.

Testar

Autorização RAM

A tabela abaixo descreve a autorização necessária para chamar esta API. Você pode defini-la em uma política do Resource Access Management (RAM). As colunas da tabela estão detalhadas abaixo:

  • Ação: As ações que podem ser usadas no elemento Action das instruções de política de permissão do RAM para conceder permissões para executar a operação.

  • API: A API que você pode chamar para executar a ação.

  • Nível de acesso: O nível de acesso predefinido concedido para cada API. Valores válidos: create, list, get, update e delete.

  • Tipo de recurso: O tipo de recurso que suporta autorização para executar a ação. Indica se a ação suporta permissão em nível de recurso. O recurso especificado deve ser compatível com a ação. Caso contrário, a política será ineficaz.

    • Para APIs com permissões em nível de recurso, os tipos de recursos obrigatórios são marcados com um asterisco (*). Especifique o Nome de Recurso Alibaba Cloud (ARN) correspondente no elemento Resource da política.

    • Para APIs sem permissões em nível de recurso, é exibido como Todos os Recursos. Use um asterisco (*) no elemento Resource da política.

  • Chave de condição: As chaves de condição definidas pelo serviço. A chave permite controle granular, aplicando-se somente a ações ou a ações associadas a recursos específicos. Além das chaves de condição específicas do serviço, o Alibaba Cloud fornece um conjunto de chaves de condição comuns aplicáveis a todos os serviços compatíveis com RAM.

  • Ação dependente: As ações dependentes necessárias para executar a ação. Para concluir a ação, o usuário RAM ou a função RAM deve ter permissões para executar todas as ações dependentes.

Ação

Nível de acesso

Tipo de recurso

Chave de condição

Ação dependente

ecs:CreateCapacityReservation

create

*CapacityReservation.

acs:ecs:{#regionId}:{#accountId}:capacityreservation/*

Nenhuma Nenhuma

Parâmetros da solicitação

Parâmetro

Tipo

Obrigatório

Descrição

Exemplo

RegionId

string

Sim

O ID da região da reserva de capacidade. Você pode chamar a operação DescribeRegions para consultar a lista de regiões mais recente.

cn-hangzhou

ResourceGroupId

string

Não

O ID do grupo de recursos corporativos ao qual a reserva de capacidade pertence.

rg-bp67acfmxazb4p****

Tag

array<object>

Não

A lista de tags vinculadas à reserva de capacidade.

object

Não

A tag.

Key

string

Não

A chave da tag da reserva de capacidade. Valores válidos de N: 1 a 20. Se este parâmetro for especificado, não poderá ser uma string vazia. A chave da tag pode ter até 128 caracteres e não pode começar com aliyun ou acs:, nem conter http:// ou https://.

TestKey

Value

string

Não

O valor da tag da reserva de capacidade. Valores válidos de N: 1 a 20. Se este parâmetro for especificado, poderá ser uma string vazia. O valor da tag pode ter até 128 caracteres e não pode começar com acs:, nem conter http:// ou https://.

TestValue

ClientToken

string

Não

O token do cliente usado para garantir a idempotência da solicitação. Você pode usar o cliente para gerar o valor, mas deve garantir que ele seja exclusivo entre diferentes solicitações. O valor do ClientToken pode conter apenas caracteres ASCII e não pode exceder 64 caracteres. Para obter mais informações, consulte Como garantir a idempotência.

0c593ea1-3bea-11e9-b96b-88e9fe637760

PrivatePoolOptions.Name

string

Não

O nome da reserva de capacidade. O nome deve ter de 2 a 128 caracteres. Deve começar com uma letra ou um caractere chinês e não pode começar com http:// ou https://. Pode conter dígitos, dois-pontos (:), sublinhados (_) e hifens (-).

crpTestName

Description

string

Não

A descrição da reserva de capacidade. A descrição deve ter de 2 a 256 caracteres e não pode começar com http:// ou https://.

Valor padrão: vazio.

This is description.

PrivatePoolOptions.MatchCriteria

string

Não

O tipo de pool privado gerado após a reserva de capacidade entrar em vigor. Valores válidos:

  • Open: modo aberto. Ao iniciar uma instância, o sistema corresponde automaticamente à capacidade de um pool privado aberto. Se nenhuma capacidade de pool privado elegível estiver disponível, a instância usará os recursos do pool público.

  • Target: modo dedicado. A instância usa a capacidade do pool privado especificado. Se a capacidade do pool privado não estiver disponível, a instância falhará ao iniciar.

Valor padrão: Open.

Open

InstanceAmount

integer

Sim

O número total de instâncias a serem reservadas para um único tipo de instância.

2

InstanceType

string

Sim

O tipo de instância. Atualmente, você pode configurar as definições de reserva de capacidade para apenas um tipo de instância. Você pode invocar a operação DescribeInstanceTypes para consultar os tipos de instância fornecidos pelo Elastic Compute Service (ECS).

ecs.g6.xlarge

StartTime

string

Não

O modo de vigência da reserva de capacidade. Atualmente, a chamada da API suporta apenas a configuração deste parâmetro para entrar em vigor imediatamente. Especifique a hora no padrão ISO 8601 no formato yyyy-MM-ddTHH:mm:ssZ. A hora deve estar em UTC.

Nota

Se este parâmetro não for especificado, a reserva de capacidade entrará em vigor imediatamente.

2021-10-30T05:32:00Z

EndTime

string

Não

O horário de vencimento da reserva de capacidade. Especifique a hora no padrão ISO 8601 no formato yyyy-MM-ddTHH:mm:ssZ. A hora deve estar em UTC. Para obter mais informações, consulte ISO 8601.

2021-10-30T06:32:00Z

EndTimeType

string

Não

O modo de vencimento da reserva de capacidade. Valores válidos:

  • Limited: libera a reserva em um horário especificado. Você também deve especificar o parâmetro EndTime.

  • Unlimited: liberação manual. Nenhum limite de tempo é imposto.

Unlimited

Platform

string

Não

O tipo de sistema operacional da imagem usada pela instância. Este parâmetro corresponde ao parâmetro Platform das instâncias reservadas regionais. Se o tipo de sistema operacional da reserva de capacidade corresponder ao das instâncias reservadas regionais, você poderá usar as instâncias reservadas regionais para compensar as faturas da capacidade não utilizada da reserva de capacidade. Valores válidos:

  • Windows: sistemas operacionais Windows Server.

  • Linux: sistemas operacionais Linux e do tipo Unix.

Valor padrão: Linux.

Nota

Este parâmetro não está disponível.

Linux

InstanceChargeType

string

Não

O método de cobrança da instância. Atualmente, apenas o PostPaid (pós-pago) é suportado. Valor padrão: PostPaid.

PostPaid

ZoneId

array

Sim

O ID da zona da região à qual a reserva de capacidade pertence. Atualmente, você pode criar uma reserva de capacidade em apenas uma zona.

cn-hangzhou-h

string

Não

O ID da zona da região à qual a reserva de capacidade pertence.

cn-hangzhou-h

Elementos de resposta

Elemento

Tipo

Descrição

Exemplo

object

PrivatePoolOptionsId

string

O ID da reserva de capacidade.

crp-bp67acfmxazb4****

RequestId

string

O ID da solicitação.

473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E

Exemplos

Resposta de sucesso

JSON formato

{
  "PrivatePoolOptionsId": "crp-bp67acfmxazb4****",
  "RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E"
}

Códigos de erro

Código de status HTTP

Código de erro

Mensagem de erro

Descrição

400 InvalidParameter.RegionId The specified RegionId is invalid. O RegionId especificado não existe.
400 NoStock The stock in the availability zone is insufficient. A zona especificada não possui estoque suficiente.
400 MissingParameter The input parameter StartTime is missing.
400 OperationDenied The specified instanceType or zone is not available or not authorized. O snapshot especificado não permite a criação de volumes de dados.
400 MissingParameter.RegionId The specified RegionId should not be null. O parâmetro RegionId não pode estar vazio.
400 InvalidStartTime.NotSupported The specified StartTime should be within 180 calendar days from the current date, and you must specify a precision to hour. O parâmetro StartTime especificado não está dentro do intervalo de valores válidos.
400 InvalidStartTime.MalFormed The specified StartTime is out of the permitted range.
400 Invalid.PrivatePoolOptionsName.MalFormed The specified PrivatePoolOptions.Name is not valid. O PrivatePoolOptions.Name especificado é inválido.
400 Invalid.ZoneId The specified ZoneId is not valid. A zona não corresponde ao pool privado.
400 Invalid.InstanceType The specified InstanceType is not valid. O tipo de instância não corresponde ao pool privado.
400 DedicatedHostNotSupported DedicatedHost is not supported for PrivatePool. Os pools privados não oferecem suporte a hosts dedicados.
400 SpotNotSupported Spot is not supported for PrivatePool. Os pools privados não oferecem suporte a instâncias spot.
400 ClassicNetworkNotSupported Classic network is not supported for PrivatePool. Os pools privados não oferecem suporte a instâncias do tipo de rede clássica.
400 Invalid.InstanceId Instance does not exist. A instância não corresponde a um pool privado.
400 Invalid.PrivatePoolOptions.MatchCriteria Target mode does not support this operation. O parâmetro PrivatePoolOptions.MatchCriteria especificado não corresponde ao pool privado.
400 MissingParameter.PrivatePoolOptions.Id The specified PrivatePoolOptions.Id should not be null. O parâmetro PrivatePoolOptions.Id não pode estar vazio.
400 Invalid.PrivatePoolOptions.Id The PrivatePool does not exist. O pool privado não existe.
400 Invalid.InstanceChargeType The InstanceChargeType does not match the PrivatePool. O parâmetro InstanceChargeType especificado é inválido.
400 Invalid.PrivatePoolOptions.status The PrivatePool has been used up. O status do pool privado especificado é inválido.
400 InvalidPlatform.ValueNotSupported The Platform does not match the PrivatePool. O parâmetro Platform especificado não corresponde ao pool privado.
400 InvalidAliUid The PrivatePool does not belong to the user of the Instance. O pool privado não pertence ao usuário que está criando a instância.
400 MissingParameter.PackageType The specified parameter "PackageType" can not be empty. O parâmetro PackageType não pode estar vazio.
400 MissingParameter.PrivatePoolOptions.Ids The specified parameter "PrivatePoolOptions.Ids" can not be empty. O parâmetro especificado PrivatePoolOptions.ids não pode estar vazio.
400 MissingParameter.InstanceCpuCoreCount The specified parameter "InstanceCpuCoreCount" can not be empty. O parâmetro especificado InstanceCpuCocount não pode estar vazio.
400 MissingParameter.InstanceAmount The specified parameter "InstanceAmount" can not be empty. O parâmetro especificado InstanceAmount não pode estar vazio.
400 MissingParameter.InstanceCpuCoreCountOrInstanceAmount The specified parameter "InstanceCpuCoreCount" and "InstanceAmount" must not be empty at the same time. Os parâmetros InstanceCpuCoreCount e InstanceAmount não podem estar ambos vazios.
400 Invalid.TooManyPrivatePoolOptions.Ids Too many PrivatePoolOptions.Ids in this request. O número de PrivatePoolOptions.Ids excede o limite superior.
400 Invalid.TooManyZoneIds Too many ZoneIds in the request. O número de ZoneIds excede o limite superior.
400 Invalid.TooManyInstanceTypes Too many InstanceTypes in the request. O número de InstanceTypes excede o limite superior.
400 Invalid.TooManyUnpaidPrivatePool Too many PrivatePools create but still unpaid. Vários pools privados não foram pagos.
400 Invalid.InstanceCpuCoreCountOrInstanceAmount Both InstanceCpuCoreCount and InstanceAmount are provided. Os parâmetros InstanceCpuCoreCount e InstanceAmount não precisam ser especificados ao mesmo tempo.
400 Invalid.PrivatePoolOptions.Ids The specified parameter "PrivatePoolOptions.Ids" exist invalid element Id. O ID do pool privado especificado não existe.
400 Invalid.PackageType The specified parameter "PackageType" is invalid. O parâmetro PackageType especificado é inválido.
400 Invalid.PrivatePool.Purchase The PrivatePool has already paid. O pool privado já foi pago.
400 Invalid.AssuranceTimes.NotSupported The value of AssuranceTimes is not supported. O valor do parâmetro AssuranceTimes não é suportado.
400 RepeatStartPrivatePool PrivatePool has already been started. O pool privado já foi iniciado.
400 Invalid.TimeSlot The param time slot is invalid. O parâmetro TimeSlot é inválido.
400 Invalid.EndTime The specified parameter "EndTime" is not valid. O parâmetro EndTime especificado é inválido.
400 StartTime.NotNeed The specified parameter "StartTime" should leave empty. Remova o campo StartTime da lista de parâmetros da solicitação.
400 AccountForbidden.ProductCreationLimited The commodity must be officially operated by Aliyun and in pay-as-you-go billing method. Os clientes de migração de nuvem corporativa podem comprar apenas instâncias ECS pay-as-you-go e não podem comprar produtos de terceiros, como imagens fornecidas pelo Alibaba Cloud Marketplace. Verifique os parâmetros e tente novamente com parâmetros válidos.
400 RegionUnauthorized There is no authority to create private pool in the specified region. O usuário não está autorizado a criar instâncias na região especificada.
400 PriceNotFound The price of your queried resource is not available now, please try other resources. O preço não foi encontrado. Modifique os valores dos parâmetros correspondentes e tente novamente.
500 InternalError The request processing has failed due to some unknown error, exception or failure. Ocorreu um erro interno. Tente novamente.
403 Zone.NotOpen The specified zone is not granted to you to buy resources yet.
403 InvalidResourceType.NotSupported %s O tipo de recurso não é suportado.
403 OperationDenied.NoStock The resource is out of stock in the specified zone. Please try other types, or choose other regions and zones. A categoria de disco especificada não existe na zona ou no cluster especificado, ou a zona especificada não corresponde ao cluster.
403 InvalidInstanceType.NotSupported The specified InstanceType is invalid.
403 Invalid.ZoneIds At least one of the specified ZoneIds are invalid. Pelo menos um dos ZoneIds especificados é inválido.
403 Zone.NotOnSale The specified zone is not available for purchase. A zona especificada está esgotada. Altere o tipo de instância ou crie a instância em uma região diferente.
404 InvalidZoneId.NotFound The specified zoneId does not exist. O ID da zona especificado não existe.
404 InvalidResourceGroup.NotFound The ResourceGroup provided does not exist in our records. O grupo de recursos não foi encontrado nos registros.

Consulte Códigos de Erro para uma lista completa.

Notas de versão

Consulte Notas de Versão para uma lista completa.