11.1 Visão geral do Kubeflow

O Kubeflow é uma plataforma que suporta, do início ao fim, o ciclo de vida de implementação de Machine Learning. Os componentes principais do Kubeflow são:

  • Central Dashboard: É a interface web (WebUI) do Kubeflow, onde é possível interagir com todos os outros componentes. Isto é, como todos os componentes do Kubeflow são recursos do Kubernetes, com a WebUI é possível configurar e operar os recursos do Kubernetes do Kubeflow.

  • Kubeflow Notebooks: Com este componente, é possível criar Notebooks, como Jupyter, para o desenvolvimento iterativo dos modelos de Machine Learning e também usar as DSLs para manipular os outros componentes, como o Kubeflow Pipeline.

  • Kubeflow Pipeline: É o componente principal (ou core) do Kubeflow. Com ele, é possível criar os pipelines para treinar os modelos de Machine Learning e efetuar o deploy.

  • Katib: Este é o componente de AutoML do Kubeflow.

  • Training Operator: São recursos do Kubernetes criados para facilitar o treinamento de modelos, podendo ser usados em conjunto com o Kubeflow Pipeline.

  • Multi-Tenancy: O Kubeflow fornece suporte para isolamento de usuários e gestão de acesso.

  • External Add-Ons: O Kubeflow se integra com ferramentas externas como KServe, Kale, Feast e outras. Nas próximas seções, vamos falar principalmente do KServe, que é o servidor de inferências do Kubeflow.

Kubeflow

Vale destacar que existem algumas formas de se ter suporte ao Kubeflow. Alguns provedores de nuvem (Cloud providers) suportam instalações do Kubeflow, e existe uma versão Enterprise chamada Arrikto.

A arquitetura do Kubeflow é baseada no Kubernetes. Recomenda-se a leitura da documentação para aprofundamento.

Last updated