Criação de um grupo de AS
Função
Um grupo de AS consiste em um conjunto de instâncias que se aplicam ao mesmo cenário. É a base para habilitar ou desabilitar as políticas de AS e realizar ações de dimensionamento. Um grupo de AS especifica parâmetros, tais como o número máximo de instâncias, número de instâncias esperado, número mínimo de instâncias, VPC, subrede e balanceamento de carga.
- Cada usuário pode criar um máximo de 10 grupos de AS por padrão.
- Se o ELB estiver configurado, o AS vincula ou desvincula automaticamente um balanceador de carga para ou de uma instância quando a instância é adicionada ou removida do grupo de AS.
- Se um grupo de AS usar a verificação de integridade do ELB, as portas de escuta nos balanceadores de carga deverão ser habilitadas para as instâncias no grupo de AS. Habilite as portas de escuta nos grupos de segurança.
URI
POST /autoscaling-api/v1/{project_id}/scaling_group
Parâmetro |
Obrigatório |
Tipo |
Descrição |
---|---|---|---|
project_id |
Sim |
String |
Especifica o ID do projeto. |
Mensagem de solicitação
- Parâmetros de solicitação
Tabela 2 Parâmetros de solicitação Parâmetro
Obrigatório
Tipo
Descrição
scaling_group_name
Sim
String
Especifica o nome do grupo de AS. O nome contém apenas letras, dígitos, sublinhados (_) e hifens (-) e não pode exceder 64 caracteres.
scaling_configuration_id
Sim
String
Especifica o ID de configuração de AS, que pode ser obtido usando a API para consulta de configurações de AS. Para mais detalhes, consulte Consulta das configurações do AS.
desire_instance_number
Não
Integer
Especifica o número esperado de instâncias. O valor padrão é o número mínimo de instâncias.
O valor varia desde o número mínimo de instâncias até o número máximo de instâncias.
min_instance_number
Não
Integer
Especifica o número mínimo de instâncias. O valor padrão é 0.
max_instance_number
Não
Integer
Especifica o número mínimo de instâncias. O valor padrão é 0.
cool_down_time
Não
Integer
Especifica o período de resfriamento (em segundos). O valor varia de 0 a 86400 e é de 300 por padrão.
Após uma ação de dimensionamento ser acionada, o sistema inicia o período de resfriamento. Durante o período de resfriamento, as ações de dimensionamento acionadas por alarmes serão negadas. Ações programadas, periódicas e manuais de dimensionamento não são afetadas.
lb_listener_id
Não
String
Especifica o ID de um ouvinte do balanceador de carga clássico. É possível vincular até seis ouvintes do balanceador de carga. Os IDs dos ouvintes separados com vírgulas (,).
Este parâmetro é alternativo para lbaas_listeners.
lbaas_listeners
Não
Array of lbaas_listeners objects
Especifica informações sobre um balanceador de carga avançado. Você pode vincular até seis balanceadores de carga. Este parâmetro está na estrutura de dados da lista. Para mais detalhes, consulte Tabela 3.
Este parâmetro é alternativo para lb_listener_id.
available_zones
Não
Array of strings
Especifica as informações de AZ. As instâncias adicionadas em uma ação de dimensionamento serão criadas em uma AZ especificada. Se você não especificar uma AZ, o sistema especificará uma automaticamente.
networks
Sim
Array of networks objects
Especifica as informações da rede. Você pode selecionar até cinco sub-redes. A primeira sub-rede que você selecionar é usada pelas NICs primárias dos ECSs por padrão. Para obter informações sobre a estrutura de dados, consulte Tabela 4.
security_groups
Não
Array of security_groups objects
Especifica o grupo de segurança. Um máximo de um grupo de segurança pode ser selecionado. Para obter informações sobre a estrutura de dados, consulte Tabela 7.
Se o grupo de segurança for especificado tanto na configuração do AS como no grupo de AS, instâncias de ECS dimensionadas serão adicionadas ao grupo de segurança especificado na configuração do AS. Se o grupo de segurança não for especificado em nenhuma delas, instâncias de ECS dimensionadas serão adicionadas ao grupo de segurança padrão. Para sua conveniência, é aconselhável especificar o grupo de segurança na configuração do AS.
vpc_id
Sim
String
Especifica o ID da VPC, que pode ser obtido usando a API para consulta de VPCs. Para mais detalhes, consulte "Consulta de VPCs" em Referência de API da Virtual Private Network.
health_periodic_audit_method
Não
String
Especifica o método de verificação de integridade para instâncias no grupo de AS. Os métodos de verificação de integridade incluem ELB_AUDIT e NOVA_AUDIT. Quando o balanceamento de carga é configurado para um grupo de AS, o valor padrão é ELB_AUDIT. Caso contrário, o valor padrão é NOVA_AUDIT.
- ELB_AUDIT: indica a verificação de integridade do ELB, que entra em vigor em um grupo de AS com um ouvinte.
- NOVA_AUDIT: indica a verificação de integridade da instância do ECS, que é o método de verificação de integridade fornecido com o AS.
health_periodic_audit_time
Não
Integer
Especifica o período da verificação de integridade da instância. O valor pode ser 1, 5, 15, 60 ou 180 na unidade de minutos. Se esse parâmetro não for especificado, o valor padrão será 5.
Se o valor for definido como 0, a verificação de integridade é executada a cada 10 segundos.
health_periodic_audit_grace_period
Não
Integer
Especifica o período de carência, por exemplo, a verificação de integridade. A unidade é a segunda e o valor varia de 0 a 86400. O valor padrão é 600.
O período de carência da verificação de integridade começa depois que uma instância é adicionada a um grupo de AS e é habilitada. O grupo de AS começará a verificar o status da instância somente após o término do período de carência.
Esse parâmetro é válido somente quando o método de verificação de integridade da instância do grupo de AS é ELB_AUDIT.
instance_terminate_policy
Não
String
Especifica a política de remoção de instância.
- OLD_CONFIG_OLD_INSTANCE (padrão): as instâncias criadas anteriormente, baseadas nas configurações de AS criadas anteriormente, são removidas primeiro.
- OLD_CONFIG_NEW_INSTANCE: as instâncias criadas posteriormente, baseadas nas configurações de AS criadas anteriormente, são removidas primeiro.
- OLD_INSTANCE: as instâncias criadas anteriormente são removidas primeiro.
- NEW_INSTANCE: as instâncias criadas posteriormente são removidas primeiro.
notifications
Não
Array of strings
Especifica o modo de notificação.
EMAIL refere-se a notificação por e-mail.
Este modo de notificação foi cancelado. É aconselhável configurar a função de notificação para o grupo de AS. Para mais detalhes, consulte Notificações.
delete_publicip
Não
Boolean
Especifica se o EIP vinculado ao ECS deve ser excluído ao excluir o ECS. O valor pode ser true ou false. O valor padrão é false.- true: exclui o EIP vinculado ao ECS ao excluir o ECS. Se o EIP for cobrado anualmente/mensalmente, ele não será excluído quando o ECS for excluído.
- false: apenas desvincula o EIP vinculado ao ECS ao excluir o ECS.
delete_volume
Não
Boolean
Especifica se devem ser excluídos os discos de dados anexados a um ECS ao excluir o ECS. O valor pode ser true ou false. O valor padrão é false.- true: exclui os discos de dados anexados ao ECS ao excluir o ECS. Se os discos de dados forem cobrados anualmente/mensalmente, eles não serão excluídos quando o ECS for excluído.
- false: somente desanexa os discos de dados anexados ao ECS ao excluir o ECS.
enterprise_project_id
Não
String
Especifica o ID do projeto empresarial, que é usado para especificar o projeto empresarial ao qual o grupo de AS pertence.
- Se o valor for 0 ou deixado em branco, o grupo de AS pertence ao projeto empresarial padrão.
- Se o valor for um UUID, o grupo de AS pertence ao projeto empresarial correspondente ao UUID..
Se um projeto empresarial é configurado para um grupo de AS, os ECSs criados neste grupo de AS também pertencem a este projeto empresarial. Caso contrário, será utilizado o projeto empresarial padrão.
multi_az_priority_policy
Não
String
Especifica a política de prioridade usada para selecionar AZs de destino ao ajustar o número de instâncias em um grupo de AS.
- EQUILIBRIUM_DISTRIBUTE (padrão): ao ajustar o número de instâncias, certifique-se de que as instâncias em cada AZ na lista available_zones sejam distribuídas uniformemente. Se as instâncias não puderem ser adicionadas à AZ de destino, selecione outra AZ com base na política PICK_FIRST.
- PICK_FIRST: ao ajustar o número de instâncias, as AZs de destino são determinadas na ordem na lista available_zones.
description
Não
String
Especifica a descrição do grupo de AS. O valor pode conter de 1 a 256 caracteres.
iam_agency_name
Não
String
Especifica o nome da agência, em 1 a 64 caracteres.
- iam_agency_name não é transferido se for definido como nulo.
- iam_agency_name é transferido se for deixado em branco ou tiver um valor.
Tabela 3 Descrição do campo lbaas_listeners Parâmetro
Obrigatório
Tipo
Descrição
pool_id
Sim
String
Especifica o ID do grupo de ECS de back-end.
protocol_port
Sim
Integer
Especifica o ID do protocolo de back-end, que é a porta na qual um ECS de back-end escuta o tráfego. O ID da porta varia de 1 a 65535.
weight
Sim
Integer
Especifica o peso, que determina a parte das solicitações que um ECS de back-end processa ao ser comparado a outros ECSs de back-end adicionados ao mesmo ouvinte. O valor deste parâmetro varia de 0 a 100.
Tabela 4 Descrição do campo networks Parâmetro
Obrigatório
Tipo
Descrição
id
Sim
String
Especifica o ID da sub-rede.
ipv6_enable
Não
Boolean
Especifica se deve ser compatível com endereços IPv6.
true: indica que a NIC suporta endereços IPv6.
false: indica que a NIC não suporta endereços IPv6. O valor padrão é false.
ipv6_bandwidth
Não
ipv6_bandwidth object
Especifica a largura de banda compartilhada de um endereço IPv6. Esse parâmetro é deixado em branco por padrão, indicando que nenhuma largura de banda IPv6 compartilhada está vinculada.
allowed_address_pairs
Não
Array of allowed_address_pairs objects
Especifica se deve permitir que o sistema verifique os endereços de origem e de destino.
Tabela 5 Descrição do campo ipv6_bandwidth Parâmetro
Obrigatório
Tipo
Descrição
id
Sim
String
Especifica o ID da largura de banda compartilhada de um endereço IPv6.
Tabela 6 Descrição do campo allowed_address_pairs Parâmetro
Obrigatório
Tipo
Descrição
ip_address
Não
String
Especifica se deve permitir que o sistema verifique os endereços de origem e de destino.
Essa função está ativada por padrão. Este parâmetro não pode ser deixado vazio.
- Para desativar esta função, defina o valor para 1.1.1.1/0.
- Para ativar esta função, defina um valor diferente de 1.1.1.1/0.
- Exemplo de solicitação
O exemplo a seguir mostra como criar um grupo de AS:
- O grupo de AS é chamado de GroupNameTest.
- O ID de configuração do AS é 47683a91-93ee-462a-a7d7-484c006f4440.
- O ID da VPC é a8327883-6b07-4497-9c61-68d03ee193a e o ID da rede é 3cd35bca-5a10-416f-8994-f79169559870.
- O número máximo de instâncias é 10, o número esperado de instâncias é 0 e o número mínimo de instâncias é 0.
- O método de verificação de integridade é ECS health check.
- Um projeto empresarial específico é definido.
- Ao ajustar o número de instâncias, selecione a AZ de destino com base na política PICK FIRST.
O exemplo de solicitação é o seguinte:
{ "scaling_group_name": "GroupNameTest", "scaling_configuration_id": "47683a91-93ee-462a-a7d7-484c006f4440", "desire_instance_number": 0, "min_instance_number": 0, "max_instance_number": 10, "health_periodic_audit_method": "NOVA_AUDIT", "vpc_id": "a8327883-6b07-4497-9c61-68d03ee193a", "available_zones": ["XXXa","XXXb"], "networks": [ { "id": "3cd35bca-5a10-416f-8994-f79169559870" } ], "enterprise_project_id": "c92b1a5d-6f20-43f2-b1b7-7ce35e58e413", "multi_az_priority_policy": "PICK_FIRST", "iam_agency_name":"test" }
Mensagem de resposta
- Parâmetros de resposta
Tabela 8 Parâmetro de resposta Parâmetro
Tipo
Descrição
scaling_group_id
String
Especifica o ID do grupo de AS.
- Exemplo de resposta
{ "scaling_group_id": "a8327883-6b07-4497-9c61-68d03ee193a1" }
Valores retornados
- Normal
- Anormal
Valores retornados
Descrição
400 Bad Request
O servidor falhou ao processar a solicitação.
401 Unauthorized
Você deve digitar o nome de usuário e a senha para acessar a página solicitada.
403 Forbidden
Você está proibido de acessar a página solicitada.
404 Not Found
O servidor não conseguiu encontrar a página solicitada.
405 Method Not Allowed
Você não tem permissão para usar o método especificado na solicitação.
406 Not Acceptable
A resposta gerada pelo servidor não poderia ser aceita pelo cliente.
407 Proxy Authentication Required
Você deve usar o servidor proxy para autenticação para que a solicitação possa ser processada.
408 Request Timeout
A solicitação expirou o tempo limite.
409 Conflict
A solicitação não pôde ser processada devido a um conflito.
500 Internal Server Error
Falhou ao concluir a solicitação porque ocorre um erro de serviço interno.
501 Not Implemented
Falhou ao concluir a solicitação porque o servidor não suporta a função solicitada.
502 Bad Gateway
Falhou ao concluir a solicitação porque a solicitação é inválida.
503 Service Unavailable
Falhou ao concluir a solicitação porque o sistema não está disponível.
504 Gateway Timeout
Ocorreu um erro de tempo limite de gateway.
Códigos de erro
Consulte Códigos de erro.