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.
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
Testar
Autorização RAM
|
Ação |
Nível de acesso |
Tipo de recurso |
Chave de condição |
Ação dependente |
|
ecs:CreateCapacityReservation |
create |
*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 |
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 |
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 |
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 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:
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 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 |
2021-10-30T06:32:00Z |
| EndTimeType |
string |
Não |
O modo de vencimento da reserva de capacidade. Valores válidos:
|
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:
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.