This guide provides an introduction to launching Kubeflow Notebooks on Kubeflow.
Kubeflow offers a powerful and flexible environment for machine learning tasks. Among its many features is Kubeflow Notebooks, a cloud-native, scalable, and secure tool for developing, documenting, and running data science and machine learning code. Whether you're a data scientist, machine learning engineer, or an enthusiast looking to streamline your machine learning pipeline, this guide will walk you through the step-by-step process of launching Kubeflow Notebooks, ensuring you can fully harness the potential of this robust and scalable platform.
Table of Contents:
The purpose of this document is to serve as a comprehensive guide for users interested in launching Kubeflow Notebooks on the Kubeflow platform. This guide aims to detail the step-by-step process involved in initiating Kubeflow Notebooks, highlighting the tool's inherent advantages, such as its scalability, security, and suitability for developing, documenting, and executing data science and machine learning code.
This guide is intended to be a practical resource for a wide range of users - from data scientists and machine learning engineers who work with complex ML models, to enthusiasts and beginners in the field, aiming to simplify their machine learning pipeline. By following this guide, you will be able to effectively leverage the power and flexibility of Kubeflow Notebooks, thereby enhancing your machine learning workflows and productivity.
The first step in launching a notebook is to select the right Kubeflow profile. What’s a Kubeflow profile? First it’s important to understand what a Kubernetes namespace is and how it relates to a Kubeflow profile.
A Kubernetes namespace is a foundational building block that's used across all types of applications and services running on Kubernetes. Kubeflow's Profile namespace, on the other hand, is more specialized. It's a feature of Kubeflow that utilizes Kubernetes namespaces but adds more tools and configurations specific to the needs of machine learning workflows.
A Kubeflow profile owns a Kubernetes namespace of the same name along with a collection of Kubernetes resources. Users have view and modify access to their primary profiles. You can also share access to your profile with other users of the system.
A Kubeflow Profile also sets up additional components for a user. When a new profile is created, Kubeflow also automatically adds a service role in that namespace, which allows for certain permissions within that namespace. It also sets up necessary RoleBindings, ServiceAccounts, and PodDefaults. Each namespace can have its own set of permissions, resources, quotas, and Kubeflow components, which allows for different teams or projects to work independently within the same Kubernetes cluster without interfering with each other. All these serve to facilitate the running of machine learning workloads in a contained and controlled environment.
You select a namespace in the top header: