The sample that serves as a template for doing MLOps with open source projects like Kubeflow and MLFlow and tools on K8s platform
Перейти к файлу
Tom Care 3663941714
Fix kubeflow-scraper to also query runs finished in the last 30min (#95)
2020-10-13 17:57:05 -07:00
.azdo compiling pipeline in PR (#81) 2020-08-06 18:21:03 -07:00
.github AML Register Model Component for upstream (#78) 2020-07-24 11:53:46 -07:00
code Fix kubeflow-scraper to also query runs finished in the last 30min (#95) 2020-10-13 17:57:05 -07:00
docs fix link (#92) 2020-10-06 14:21:58 -07:00
notifications/teams Notifications to Teams (#87) 2020-10-01 12:07:16 -07:00
setup Add nodepool instructions (#75) 2020-08-24 19:45:52 -07:00
terraform terraform template (#89) 2020-10-02 15:26:07 -07:00
terraform-bedrock terraform template (#89) 2020-10-02 15:26:07 -07:00
.env.example Sudivate/local experience (#80) 2020-08-07 16:12:41 -07:00
.gitignore Sudivate/local experience (#80) 2020-08-07 16:12:41 -07:00
README.md Enable GPU for Kubeflow Pipelines on Azure Kubernetes Service (AKS) (#83) 2020-08-13 14:16:56 -07:00

README.md

KubeMLOps

Overview

The repository contains a sample created from the Kubeflow End-to-End Pipeline Example on Azure. It builds a Kubeflow pipeline(KFP) with both GitHub actions and Azure DevOps that trains a Tensorflow model recognizing tacos and burritos images. The model is registered in MLFlow. Kubeflow is running on Azure Kubernetes Service(AKS). The structure of this sample should make it easier to “bring your own code” and adopt the template for a real-life machine learning(ML) project.

The architecture of the sample is shown in the following diagram: KubeMLOps Architecture Diagram

  • The KFP contains the following steps:
    • Data preprocessing
    • Training
    • Registering
    • Deploying
  • The model is registered and deployed in AML WS (working on MLFlow model registration also)
  • The Continuous Integration(CI) pipeline is implemented with GitHub Actions, it is being triggered on PR, master merge, ChatOps comments (e.g./build-images, /build-pipeline) and it has the following steps:
    • Linting
    • Builds Docker images – KFP components/steps
    • Publishes the KFP as an artifact
    • Uploads the pipeline to Kubeflow
    • Runs the KFP

For this sample, DataOps for ML and Observability are currently out of scope.

Prerequisites

Before you get started, make sure you have the following prerequisites:

  • An Azure Kubernetes Service cluster
  • Ensure the latest version of Azure CLI is installed.
  • Clone or fork the repository

Setup

This documentation helps you get started with the sample from infrastructure setup to deployment of the model.

Code for the following can be found in the code directory, but currently there is no documentation:

  • Running Kubeflow component in parallel
  • Running Jupyter Server within Kubeflow
  • Running MLFlow Project from Kubeflow
  • Model deployment with KF Serving