Introduction to Kubeflow: Fundamentals Training and Certification Recap – Nov 11, 2021

Last week we hosted the first FREE course in the “ Introduction to Kubeflow” training and certification series. This initial course focused on Kubeflow Fundamentals. In this blog post we’ll recap some highlights from the class, plus give a summary of the Q&A. Ok, let’s dig in.

Congratulations to Lasya Sistia!

The first person to earn the “Fundamentals” certificate was Lasya Sistia, Information Science Student at Nitte Meenakshi Institute of Technology. Well done!

What topics were covered in the course?

This initial course aimed to get data scientists and DevOps engineers with little or no experience familiar with the fundamentals of how Kubeflow works.

  • Kubeflow architecture
  • Overview of machine learning workflows
  • Kubeflow components
  • Tools and add-ons (Kale, Rok, Istio, etc)
  • Distributions
  • Installing Kubeflow on AWS
  • Community overview

What did I miss?

Here’s a short teaser from the 90 minute training. In this video we demonstrate there things in regards to Katib (which is the component that provides AutoML, hyperparameter tuning and other features for Kubeflow):

  • How to view an experiment
  • How to set up experiments
  • How to identify the best run

Missed the Nov 11th training?

If you were unable to join us last week, but would still like to attend a future training, the next “Kubeflow Fundamentals” training is happening on Dec 16, 2021. You can register directly on Zoom here.

Additional FREE upcoming trainings

The next course in the series, “Jupyter Notebook Fundamentals” is live. You can register directly on Zoom here.

We’ll be covering the following topics in this course:

  • Jupyter Web Application
  • Notebook Documents
  • Notebook Servers
  • Setting up Notebooks in Kubeflow
  • Creating Custom Jupyter Images
  • Submitting Kubernetes Resources
  • Troubleshooting

Announcing Arrikto Academy

I should also point out that the “Kubeflow Fundamentals” courses are a feeder for the more advanced offerings of “Arrikto Academy”, Arrikto’s new skills-based Kubeflow education initiative. If you’d like to explore additional training options aimed at intermediate to advanced users of Kubeflow, check out Arrikto Academy! (You can also read the announcement blog here.)
In fact, we’ve recently released our first two courses – Kale 101 and Katib 101 – both of which focus on the necessary Day 1 Fundamentals that all data scientists need to be successful with the Kubeflow ecosystem. The courses are capped off with self-graded labs to ensure skills are being developed and retained.

Q&A from the training

Below is a summary of some of the questions that popped into the Q&A box during the course. [Edited for readability and brevity.]

Does MiniKF run on Kubernetes or Minikube?

MiniKF (the simplest way to get started with Kubeflow) is a single click all-in-one package which is prepackaged with Minikube and Kubeflow. It also includes Kale (a tool to convert general purpose Jupyter Notebooks to Kubeflow Pipelines workflows) and Rok (a data management software for data versioning and reproducibility).

I often get confused as to the difference between Kubeflow Pipelines and AutoML experiments. What’s the difference?

It is very reasonable to get confused! This is because Kubeflow traditionally called two different things with the term “Experiment”. In the Kubeflow Pipelines context, an Experiment is just a logical group of Pipeline Runs. In the Katib context, an Experiment was referring to all the Trials that a Hyperparameter Tuning job would run. There are currently discussions in the Kubeflow community to rename one of the two, so that they don’t collide.

What’s the difference between using TFServing vs KFServing?

(TensorFlow) TFServing and (Kubeflow) KFServing both have the ability to deploy models on Kubeflow. They give users an easier way to serve their models, which is nothing more than making the model available to other users or services, typically in the form of an API or web service. 

KFServing is an abstraction on top of inferencing rather than a replacement. It aims to simplify things by making inferencing clients agnostic to what the inference server is doing behind the scenes, for example TFServing, Triton or Seldon. KFServing accomplishes this by coordinating with inference server vendors on dataplane specifications, which in turn allows extra components including transformations and explainers to become more pluggable.

A few additional notes:

  • TFServing can run on Kubeflow or standalone.
  • KFServing supports multiple frameworks including PyTorch, TensorFlow, MXNet, etc.

In edge use cases, could MiniKF be used in production for it’s serving component (KServe) capabilities?

MiniKF should not be considered as a production distribution. Although it is easy to install and has just about all the features you need to run in production, it runs on a single node Minikube which could be resource constrained and doesn’t provide high availability. It is lacking some core features like multi-user capabilities, RBAC support etc., which you might find critical in a production environment. Also, it currently doesn’t support Azure – which may or may not be important for your use case. I would recommend checking out EKF for production: https://www.arrikto.com/enterprise-kubeflow/

Does Enterprise Kubeflow provide authentication and authorization connections to Active Directory or LDAP?

Yes you can integrate with various OIDC providers including LDAP and AD. Integrations with some verified OIDC providers like GitLab, Google, Okta and PingID is documented here.

Great course! What is the next one in the series?

You can sign up for the next course in this series, “Jupyter Notebook Fundamentals” directly on Zoom here.

Free Technical Workshop

Turbocharge your team’s Kubeflow and MLOps skills with a free workshop.