Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AkôFlow - Suporte a Múltiplos Runtimes #11

Closed
10 tasks
ovvesley opened this issue Feb 2, 2025 · 0 comments · Fixed by #12
Closed
10 tasks

AkôFlow - Suporte a Múltiplos Runtimes #11

ovvesley opened this issue Feb 2, 2025 · 0 comments · Fixed by #12
Assignees

Comments

@ovvesley
Copy link
Collaborator

ovvesley commented Feb 2, 2025

Atualmente, o AkôFlow está diretamente atrelado ao Kubernetes, o que limita sua execução a clusters compatíveis com essa tecnologia. Essa abordagem impede sua utilização em ambientes como o SDumont, onde a execução de tarefas requer um mecanismo diferente.

O objetivo desta issue é tornar o AkôFlow mais flexível, permitindo a execução de múltiplas runtimes, tornando-o independente de um único ambiente de execução.

Solução Proposta

Criar uma camada de abstração no AkôFlow para suportar diferentes Runtimes, permitindo que ele se conecte a diversos mecanismos de execução. Cada Runtime será responsável por realizar a conexão com o ambiente de execução e gerenciar as submissões e coletas de dados.

Os Runtimes planejados incluem:

  • Runtime Kubernetes (já existente);
  • Runtime Docker;
  • Runtime Singularity;
  • Runtime Singularity para o SDumont.

Casos de Uso

  • O AkôFlow deve ser capaz de rodar em máquinas externas, não estando restrito ao cluster Kubernetes;
  • Permitir a execução de jobs em diferentes infraestruturas, como SDumont, que exige conexão via VPN e submissão via nó de login;
  • Garantir que a submissão e a coleta de dados de proveniência sejam feitas corretamente, independentemente do Runtime utilizado.

Tarefas

  • Criar estrutura base para suportar múltiplos Runtimes;
  • Implementar interface genérica para Runtimes no AkôFlow;
  • Adicionar suporte para Runtime Docker;
  • Adicionar suporte para Runtime Singularity;
  • Implementar suporte específico para SDumont, garantindo conexão via VPN e execução nos nós de trabalho;
  • Criar testes para validação da submissão e coleta de dados em cada Runtime.

Critérios de Aceitação

  • O AkôFlow deve funcionar com qualquer Runtime configurado sem depender exclusivamente do Kubernetes;
  • O usuário deve ser capaz de selecionar a Runtime desejada através de uma configuração simples;
  • A execução no SDumont deve ser validada, garantindo conexão segura e submissão correta dos jobs;
  • Os dados de proveniência devem ser coletados corretamente independentemente do Runtime utilizado.

Image

@ovvesley ovvesley self-assigned this Feb 2, 2025
@ovvesley ovvesley pinned this issue Feb 3, 2025
@ovvesley ovvesley linked a pull request Feb 3, 2025 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant