O ack-kube-queue é o componente de fila de jobs do conjunto de IA cloud-native. Desenvolvido com base na fila de jobs Kube Queue e integrado ao scheduler e ao sistema de cotas, ele oferece gerenciamento de filas, agendamento por prioridade e cotas elásticas. Esses recursos aumentam a eficiência do gerenciamento e melhoram o desempenho de agendamento de workloads de AI/ML e em lote no Kubernetes.
Visão geral
Clusters Kubernetes frequentemente executam um grande volume de workloads do tipo job e pods, como workloads de AI/ML e processamento em lote. Esse volume sobrecarrega o scheduler, reduz o desempenho de agendamento e pode causar interferência entre jobs enviados por diferentes usuários. Baseado na fila de jobs Kube Queue e integrado ao scheduler e ao sistema de cotas, o ack-kube-queue gerencia esses workloads com os seguintes recursos:
Gerenciamento de filas: Permite que administradores de sistema gerenciem filas de jobs por meio de filas personalizadas, tornando o enfileiramento mais flexível. Para obter instruções, consulte Use ack-kube-queue to manage job queues.
Agendamento por prioridade: Remove jobs da fila conforme a prioridade no modo de agendamento estrito por prioridade e fornece agendamento justo com múltiplas filas para jobs sob diferentes cotas.
Filas bloqueantes: Oferece suporte ao modo de fila bloqueante, com configuração global via variáveis de ambiente e opção de ativação individual por fila.
Cotas elásticas: Integra-se ao sistema de cotas para otimizar automaticamente o gerenciamento de workloads e do ResourceQuota, garantindo a utilização total dos recursos do cluster.
Reenfileiramento: Recupera jobs cujos pods permanecem sem agendamento por muito tempo e os devolve à fila para novo agendamento. Isso evita que jobs ocupem cotas sem execução e melhora a utilização das cotas.
Notas de uso
Instale o componente ack-kube-queue apenas em clusters ACK Pro, ACK Serverless Pro cluster ou ACK Edge Pro cluster. A versão do Kubernetes do cluster deve ser 1,18 ou posterior.
Instale o ack-kube-queue durante a implantação do conjunto de IA cloud-native ou adicione-o posteriormente a um cluster onde o conjunto já esteja implantado. Após a instalação, utilize os recursos fornecidos pelo ack-kube-queue, como filas bloqueantes e agendamento estrito por prioridade. Para mais informações sobre como instalar e usar o ack-kube-queue, consulte Manage AI and ML workloads with ack-kube-queue.
Notas de versão
Janeiro de 2024
|
Versão |
Alterações |
Data da alteração |
Impacto da alteração |
|
v0.3.4 |
Correção do bloqueio head-of-line que ocorria ocasionalmente no modo de fila bloqueante ao excluir o primeiro job da fila. |
4 de janeiro de 2024 |
Nenhum |
Dezembro de 2023
|
Versão |
Alterações |
Data da alteração |
Impacto da alteração |
|
v0.3.3 |
A definição global de filas bloqueantes por variáveis de ambiente agora atualiza o modo de fila bloqueante para todas as filas. |
26 de dezembro de 2023 |
Nenhum |
Setembro de 2023
|
Versão |
Alterações |
Data da alteração |
Impacto da alteração |
|
v0.3.1 |
Correção de erros de fila que ocorriam ocasionalmente durante a exclusão de QueueUnit. |
13 de setembro de 2023 |
Nenhum |
|
v0.3.0 |
Recuperação de informações de sequência de jobs das filas. |
13 de setembro de 2023 |
Nenhum |
Agosto de 2023
Versão | Alterações | Data da alteração | Impacto da alteração |
v0.2.1 | Correção de um problema em que o | 31 de agosto de 2023 | Nenhum |
v0.2.0 |
| 29 de agosto de 2023 | Nenhum |
Julho de 2023
|
Versão |
Alterações |
Data da alteração |
Impacto da alteração |
|
v0.1.13 |
Correção de um problema em que o componente podia parar de funcionar devido à ausência do campo |
26 de julho de 2023 |
Nenhum |
|
v0.1.12 |
Opção por fila adicionada para ativar ou desativar o recurso de fila bloqueante. Desative o recurso de reenfileiramento definindo o parâmetro de timeout na extensão como |
20 de julho de 2023 |
Nenhum |
Junho de 2023
|
Versão |
Alterações |
Data da alteração |
Impacto da alteração |
|
v0.1.11 |
Sincronização do status do QueueUnit ao atualizar jobs. |
30 de junho de 2023 |
Nenhum |
|
v0.1.10 |
Suporte a nós baseados em ARM para componentes como kube-queue-controller, tf-operator-extension e pytorch-operator-extension. |
14 de junho de 2023 |
Nenhum |
Maio de 2023
|
Versão |
Alterações |
Data da alteração |
Impacto da alteração |
|
v0.1.9 |
Inclusão do reenfileiramento para jobs pendentes há muito tempo e do agendamento justo com múltiplas filas. Se os pods de um job permanecerem sem agendamento por um longo período devido a restrições de agendamento ciente de topologia, restrições de afinidade ou fragmentação de recursos, o ack-kube-queue recupera o job e o devolve à fila para novo agendamento. Isso evita que o job ocupe cotas sem execução e melhora a utilização das cotas. |
16 de maio de 2023 |
Nenhum |
Abril de 2023
|
Versão |
Alterações |
Data da alteração |
Impacto da alteração |
|
v0.1.8 |
Suporte adicionado para o modo de fila bloqueante e remoção da fila por prioridade estrita. Para mais informações, consulte Enable blocking queues e Enable strict priority scheduling. |
25 de abril de 2023 |
Nenhum |
Março de 2023
|
Versão |
Alterações |
Data da alteração |
Impacto da alteração |
|
v0.1.6 |
Correção de um problema em que o State de um TFJob não era exibido. |
15 de março de 2023 |
Nenhum |
Fevereiro de 2023
|
Versão |
Alterações |
Data da alteração |
Impacto da alteração |
|
v0.1.5 |
Correção de um problema em que o ack-kube-queue ocasionalmente falhava ao excluir jobs. |
28 de fevereiro de 2023 |
Nenhum |
|
v0.1.4 |
Correção de um problema em que as informações Used de um QueueUnit eram ocasionalmente perdidas após a remoção do QueueUnit da fila. |
14 de fevereiro de 2023 |
Nenhum |
Janeiro de 2023
|
Versão |
Alterações |
Data da alteração |
Impacto da alteração |
|
v0.1.3 |
Correção de um problema em que o ack-kube-queue ocasionalmente perdia QueueUnits. |
12 de janeiro de 2023 |
Nenhum |
|
v0.1.2 |
Correção de um problema em que o ack-kube-queue ocasionalmente não conseguia remover jobs da fila por um longo período. |
12 de janeiro de 2023 |
Nenhum |
|
v0.1.1 |
Suporte adicionado para a versão com múltiplas filas. Jobs sob diferentes cotas são enviados para filas separadas para evitar congestionamento. |
10 de janeiro de 2023 |
Nenhum |
Outubro de 2022
|
Versão |
Alterações |
Data da alteração |
Impacto da alteração |
|
v0.1.0 |
Componente adicionado. Esta é a versão inicial. |
15 de outubro de 2022 |
Versão inicial. |