+25

Kubeflow

  • By Kubeflow Charmers
juju deploy kubeflow
Show information
You will need Juju 2.9 to be able to run this command. Learn how to upgrade to Juju 2.9.
Channel Version Base
latest/stable 267
All
latest/candidate 267
All
latest/beta 267
All
latest/edge 268
All

Platform:

Relevant links


Discuss this bundle

Share your thoughts on this charm with the community on discourse.

Join the discussion

While many Reactive Framework charms work on machines today, it’s recommended to create new charms with the Operator Framework. Learn more about the history of charms.

Kubeflow Operators

Introduction

Charmed Kubeflow is the full set Kubernetes operators to deliver the 30+ applications and services that make up the latest version of Kubeflow, for easy operations anywhere, from workstations to on-prem, to public cloud and edge.

A charm is a software package that includes an operator together with metadata that supports the integration of many operators in a coherent aggregated system. The individual charms that make up Charmed Kubeflow can be found under charms/.

This technology leverages the Juju Operator Lifecycle Manager to provide day-0 to day-2 operations of Kubeflow.

Visit charmed-kubeflow.io for more.

Install

There are two possible paths, depending on your choice of Kubernetes:

  1. For any Kubernetes, follow the installation instructions.
  2. On MicroK8s, you simply have to enable the Kubeflow add-on.

Documentation

Read the official documentation.

Usage details

Argo UI

You can view pipelines from the Pipeline Dashboard available on the central dashboard, or by going to /argo/.

Pipelines

Pipelines are available either by the main dashboard, or from within notebooks via the fairing library.

Note that until https://github.com/kubeflow/pipelines/issues/1654 is resolved, you will have to attach volumes to any locations that output artifacts are written to, see the attach_output_volume function in pipline-samples/sequential.py for an example.

TensorFlow Jobs

To submit a TensorFlow job to the dashboard, you can run this kubectl command:

kubectl create -n <NAMESPACE> -f path/to/job/definition.yaml

Where <NAMESPACE> matches the name of the Juju model that you're using, and path/to/job/definition.yaml should point to a TFJob definition similar to the mnist.yaml example found here.

TensorFlow Serving

See Charmed TF-serving

Uninstall

Follow the official uninstall documentation.

Tests

For information on how to run the tests in this repo, see the tests README.