Book Image

Machine Learning on Kubernetes

By : Faisal Masood, Ross Brigoli
Book Image

Machine Learning on Kubernetes

By: Faisal Masood, Ross Brigoli

Overview of this book

MLOps is an emerging field that aims to bring repeatability, automation, and standardization of the software engineering domain to data science and machine learning engineering. By implementing MLOps with Kubernetes, data scientists, IT professionals, and data engineers can collaborate and build machine learning solutions that deliver business value for their organization. You'll begin by understanding the different components of a machine learning project. Then, you'll design and build a practical end-to-end machine learning project using open source software. As you progress, you'll understand the basics of MLOps and the value it can bring to machine learning projects. You will also gain experience in building, configuring, and using an open source, containerized machine learning platform. In later chapters, you will prepare data, build and deploy machine learning models, and automate workflow tasks using the same platform. Finally, the exercises in this book will help you get hands-on experience in Kubernetes and open source tools, such as JupyterHub, MLflow, and Airflow. By the end of this book, you'll have learned how to effectively build, train, and deploy a machine learning model using the machine learning platform you built.
Table of Contents (16 chapters)
1
Part 1: The Challenges of Adopting ML and Understanding MLOps (What and Why)
5
Part 2: The Building Blocks of an MLOps Platform and How to Build One on Kubernetes
10
Part 3: How to Use the MLOps Platform and Build a Full End-to-End Project Using the New Platform

Automating ML model deployments in Airflow

You have seen in the preceding sections how to manually package an ML model into a running HTTP service on Kubernetes. You have also seen how to create and run basic pipelines in Airflow. In this section, you will put this new knowledge together by creating an Airflow DAG to automate the model deployment process. You will create a simple Airflow pipeline for packaging and deploying an ML model from the MLflow model registry to Kubernetes.

Creating the pipeline by using the pipeline editor

Similar to the previous section, you will use Elyra's pipeline editor to create the model build and deployment DAG:

  1. If you do not have a running Elyra environment, start a notebook environment by navigating to JupyterHub, clicking Start My Server, and selecting a notebook image to run, as shown in Figure 7.45. Let's use Base Elyra Notebook Image because this time, we do not require any special libraries.
  2. In your Elyra browser...