O Auto Scaling permite que o E-HPC adicione ou remova dinamicamente nós de computação conforme a demanda de jobs em tempo real, sem intervenção manual. Quando há jobs na fila, o cluster faz scale-out para atender à demanda. Quando os nós ficam ociosos, ele faz scale-in para reduzir custos. Se um nó falhar, o sistema o interrompe e inicia uma substituição.
Benefícios
Adiciona nós de computação conforme as cargas de trabalho em tempo real para melhorar a disponibilidade do cluster.
Reduz a quantidade de nós de computação para economizar custos sem comprometer a disponibilidade do cluster.
Interrompe nós com falha e cria nós de substituição para aumentar a tolerância a falhas.
Limitações
O Auto Scaling exige que todos os nós do cluster executem Linux.
Clusters personalizados não oferecem suporte ao Auto Scaling. Todos os outros tipos de cluster são compatíveis.
O Auto Scaling baseado em memória é compatível apenas com clusters que utilizam o agendador Slurm.
Configure o Auto Scaling
Antes de começar
Certifique-se de que:
Os serviços de agendamento e de conta de domínio estejam funcionando corretamente.
O nó de gerenciamento esteja no estado de execução após a ativação do Auto Scaling.
Antes de desligar ou reiniciar o nó de gerenciamento, aguarde até que todos os nós ociosos sejam liberados e nenhum job esteja em execução nos nós de computação. Desative o Auto Scaling primeiro, desligue ou reinicie o nó de gerenciamento e reative o Auto Scaling após a reinicialização.
Especifique a contagem necessária de vCPUs ao enviar jobs para acionar o Auto Scaling corretamente. O tamanho de memória especificado em um job não pode exceder as especificações de memória do tipo de instância ECS de destino.
Etapa 1: Abrir as configurações de Auto Scaling do cluster
Faça logon no console do E-HPC.
Na parte esquerda da barra de navegação superior, selecione uma região.
No painel de navegação à esquerda, clique em Cluster.
Na página Cluster List, localize o cluster desejado e clique em Auto Scale.
Etapa 2: Defina as configurações globais de dimensionamento
Na caixa de diálogo Cluster Auto Scaling, configure a seção Cluster Global Configuration.
Essas configurações se aplicam a todas as filas do cluster. As definições no nível da fila substituem as configurações globais quando houver divergência.
|
Parâmetro |
Descrição |
|
Auto Grow / Auto Shrink |
Ative o scale-out e o scale-in automáticos para todas as filas do cluster. |
|
Scale-out Waiting Time |
Tempo de espera do sistema após o envio de um job antes de iniciar o scale-out. Padrão: 2 minutos. |
|
Scale-in Waiting Time |
Tempo que um nó deve permanecer ocioso antes que o sistema o libere. Padrão: 4 minutos. |
|
Maximum number of cluster nodes |
Limite máximo para o número total de nós que o cluster pode criar. |
|
Maximum number of cluster nodes |
Limite máximo para o número total de núcleos que o cluster pode criar. |
Etapa 3: Ajustar o dimensionamento por fila
As configurações no nível da fila permitem refinar o comportamento de dimensionamento individualmente e substituir as definições globais.
Para configurar uma fila:
Clique em no cluster desejado.
No painel de navegação à esquerda, clique em Nodes and Queues > Queue.
Localize a fila desejada e clique em Edit na coluna Actions.
Na página Edit Queue, defina os parâmetros de cada seção.
Configurações básicas
| Parâmetro | Descrição |
|---|---|
| Automatic queue scaling | Desativado por padrão. Ative esta opção e selecione Auto Grow, Auto Shrink ou ambos, conforme necessário. As configurações da fila substituem as definições globais. |
| Queue Compute Nodes |
Defina as contagens mínima e máxima de nós para esta fila:
|
Configuração dos nós da fila
Se você ativar o Automatic queue scaling ou definir a contagem inicial de nós acima de 0, configure os seguintes parâmetros para que o sistema saiba como criar os nós de computação.
| Parâmetro | Descrição |
|---|---|
| Inter-node interconnection |
Forma como os nós de computação se comunicam entre si:
|
| Use Preset Node Pool | Selecione um pool de nós reservados para utilizar durante o scale-out. O sistema escolhe endereços IP e nomes de host a partir de nós reservados não atribuídos no pool, proporcionando um scale-out mais rápido com recursos pré-alocados. Consulte Usar pools de nós reservados em clusters. |
| vSwitch | O vSwitch para os nós de computação. O sistema atribui endereços IP a partir do bloco CIDR do vSwitch. |
| Instance type Group | Clique em Add an instance specification para selecionar os tipos de instância. Com o Automatic queue scaling desativado, apenas um tipo de instância é permitido. Quando ativado, é possível adicionar vários tipos de instância como opções de fallback. |
Adicionar múltiplos vSwitches e tipos de instância funciona como mecanismo de fallback para falta de estoque. Ao criar um nó, o sistema tenta cada tipo de instância na ordem especificada, começando pela zona do primeiro vSwitch. A especificação real da instância pode variar dependendo do estoque disponível.
Configurações de Auto Scaling
|
Parâmetro |
Descrição |
|
Scaling Policy |
Estratégia para selecionar onde criar os nós. Atualmente, apenas a Supply Priority Strategy é compatível: os nós são criados nas zonas especificadas pelos seus vSwitches, seguindo a ordem de configuração. |
|
Maximum number of single expansion nodes |
Quantidade máxima de nós adicionados ou removidos em um único ciclo de scale-out ou scale-in. Padrão: 0 (sem limite). Defina um valor para controlar custos de pico. |
|
Hostname Prefix |
Prefixo de nome de host para os nós de computação nesta fila. Utilize para distinguir nós entre diferentes filas. |
|
Hostname Suffix |
Sufixo de nome de host para os nós de computação nesta fila. |
|
Host RAM role |
Função do Resource Access Management (RAM) que concede aos nós de computação acesso aos serviços da Alibaba Cloud. A função padrão AliyunECSInstanceForEHPCRole cobre os requisitos padrão do E-HPC. |
Etapa 4: Salve a configuração
Revise suas definições e clique em Save.
Política de dimensionamento
Quando múltiplos tipos de instância são configurados em uma fila, o cluster faz scale-out com base nos tipos disponíveis e nos requisitos do job. Por exemplo, se uma fila exige pelo menos 16 núcleos por nó e possui tipos de instância de 8, 16 e 32 núcleos configurados:
O sistema tenta primeiramente criar instâncias do Elastic Compute Service (ECS) com 16 núcleos.
Caso as instâncias de 16 núcleos estejam indisponíveis devido ao estoque, ele recorre às instâncias de 32 núcleos.
Monitorar seu cluster
Após configurar o Auto Scaling, monitore a integridade e o uso de recursos do seu cluster para verificar se os limiares de dimensionamento estão funcionando conforme o esperado. Consulte Visualize as informações de monitoramento.
Perguntas frequentes
A instância foi liberada, mas não consigo excluir o nó no console
Ao usar instâncias spot para Auto Scaling, uma instância pode ser recuperada enquanto ainda possui tarefas de computação inacabadas. Nessa situação, o agendador não consegue excluir a instância adequadamente, e o nó parece travado no status BusyNodes no console.
Aguarde a execução do ciclo de limpeza do Auto Scaling. Nós nesse estado são removidos automaticamente após um período definido. Assim que o agendador atualizar o status, o nó sairá de BusyNodes e poderá ser excluído normalmente.