Setup a MultiKueue environment
This tutorial explains how you can configure a management cluster and one worker cluster to run JobSets and batch/Jobs in a MultiKueue environment.
Check the concepts section for a MultiKueue overview.
Let’s assume that your manager cluster is named manager-cluster
and your worker cluster is named worker1-cluster
.
To follow this tutorial, ensure that the credentials for all these clusters are present in the kubeconfig in your local machine.
Check the kubectl documentation to learn more about how to Configure Access to Multiple Clusters.
In the Worker Cluster
Note
Make sure your current kubectl configuration points to the worker cluster.
Run:
When MultiKueue dispatches a workload from the manager cluster to a worker cluster, it expects that the job’s namespace and LocalQueue also exist in the worker cluster. In other words, you should ensure that the worker cluster configuration mirrors the one of the manager cluster in terms of namespaces and LocalQueues.
To create the sample queue setup in the default
namespace, you can apply the following manifest:
MultiKueue Specific Kubeconfig
In order to delegate the jobs in a worker cluster, the manager cluster needs to be able to create, delete, and watch workloads and their parent Jobs.
While kubectl
is set up to use the worker cluster, download:
And run:
To create a Kubeconfig that can be used in the manager cluster to delegate Jobs in the current worker.
Kubeflow Installation
Install Kubeflow Training-operator in the Worker cluster (see Kubeflow Training-operator Installation for more details). Please use version v1.7.0 or a newer version for MultiKueue.
In the Manager Cluster
Note
Make sure your current kubectl configuration points to the manager cluster.
Run:
CRDs installation
For installation of CRDs compatible with MultiKueue please refer to the dedicated pages here.
Create worker’s Kubeconfig secret
For the next example, having the worker1
cluster Kubeconfig stored in a file called worker1.kubeconfig
, you can create the worker1-secret
secret by running the following command:
Check the worker section for details on Kubeconfig generation.
Create a sample setup
Apply the following to create a sample setup in which the Jobs submitted in the ClusterQueue cluster-queue
are delegated to a worker worker1
Upon successful configuration the created ClusterQueue, AdmissionCheck and MultiKueueCluster will become active.
Run:
And expect an output like:
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.