Create the cluster
- Amazon Web Services (AWS)
- On-premises
Create an Amazon Elastic Kubernetes Service (Amazon EKS) cluster with the AWS Management Console,
eksctl, or the AWS Command Line Interface (AWS CLI). See Create an Amazon EKS cluster. Use the settings in this table, and leave the rest at their defaults.Add worker and GPU nodes
Add two sets of nodes to the cluster:- Worker nodes – Run the platform services. Provision the virtual CPUs (vCPUs) and memory from Size your deployment. Enabling the Valkey caches takes at least three worker nodes.
- GPU nodes – Run model servers, fine-tuning, and explainability workloads. Use an instance type or server that meets the GPU requirements, with the GPU count from Size your deployment. Each GPU node needs enough GPUs and memory for the largest model it hosts, because a model can’t span nodes.
- Amazon Web Services (AWS)
- On-premises
Create two managed node groups, one for worker nodes and one for GPU nodes. See Create a managed node group for your cluster. Use the settings in this table, and leave the rest at their defaults.
Check the cluster
Run these checks after the nodes are ready. Each one tells you a value to record.- Amazon Web Services (AWS)
- On-premises
1
Connect to the cluster
Add the cluster to your Then confirm every node shows
kubectl configuration:Ready:2
Check Metrics Server
To check that Metrics Server is running, run:If the command prints CPU and memory for each node, Metrics Server is running. If it returns an error, add the Metrics Server add-on to the cluster. It takes about a minute to start reporting.
3
Check the NVIDIA device plugin
The NVIDIA device plugin makes each node’s GPUs available to Kubernetes. To check whether it’s running, run:If the command prints nothing, the plugin isn’t running. Install it before you install SeekrFlow, which doesn’t install it for you:For other installation options, see the NVIDIA device plugin documentation.The Bottlerocket NVIDIA AMIs include the plugin. The Amazon Linux 2023 NVIDIA AMIs don’t.
4
Find the GPU node label
Kubernetes needs a label to identify which nodes are GPU nodes. Any key-value pair works as long as it matches what is on your nodes. To see the labels on your nodes, run:The Amazon Linux 2023 NVIDIA AMIs add
nvidia.com/gpu.present: "true". If all your GPU nodes share one instance type, you can also use node.kubernetes.io/instance-type, such as node.kubernetes.io/instance-type: g5.xlarge.5
Check for a JobSet controller
Multi-node fine-tuning needs the JobSet controller. SeekrFlow can install it during configuration, but a cluster must not run two. To check whether one is installed, run:If the command returns
NotFound, JobSet isn’t installed. Record true for jobset.enabled only if you need multi-node fine-tuning. Otherwise, record false. If the command returns the resource, JobSet is already installed. Record false.Create the namespaces
SeekrFlow installs into theseekrflow namespace and runs training and ingestion jobs in the argo-workflows namespace. Create both before you continue. Later steps add network policies, secrets, and cloud identity settings to them.
kubectl returns an AlreadyExists error. You can continue.