
Product
by
Josh Mineroff
Spot and reserved nodes in the same Kubernetes cluster, joining and draining automatically as your capacity changes.
Teams that outgrow SSH-and-scripts on GPU compute usually face a bad trade.
Option one: run Kubernetes yourself. Now you're burning engineer time on kubeadm, certificates, CNI configuration, and etcd care and feeding. None of it trains a model.
Option two: managed Kubernetes. Someone else runs the control plane, which is genuinely great. But the pricing model comes bundled with it, and it's theirs, not yours.
We built Mithril Compute Clusters so you don't have to pick. A managed control plane, on nodes that flow in from your spot bids and reservations, at prices you set.
Managed control plane, your nodes
A Mithril Compute Cluster is a long-lived Kubernetes control plane that we run. API server, scheduler, etcd, all our problem. It comes preloaded with Cilium CNI and the NVIDIA GPU Operator, so GPU workloads are schedulable out of the box.
The nodes are yours, and here's the part that matters: they're just your regular Mithril instances. Place a spot bid or create a reservation, select your cluster in the order form, and the instances join the cluster automatically when they boot. No join commands, no kubeadm, no node bootstrapping.
The lifecycle is automatic too. When a spot instance gets preempted, we drain it with a five-minute grace period so your pods reschedule cleanly. When your bid wins again, we uncordon the node and Kubernetes resumes scheduling on it. When a bid terminates, the node is removed from the cluster. Your cluster scales with your bids, and you never touch it.
That combination is the point. A reserved backbone with spot burst on top, or all spot until your reservation starts, or the other way around next quarter. One cluster, and the mix is yours to change.
Five minutes, four steps
The whole loop is: create a cluster in the console, attach a node, run ml k8s update-kubeconfig on your laptop, and kubectl apply your first pod. Here it is end to end, from nothing to nvidia-smi output:
https://www.loom.com/embed/77b4166752a44a6eb3b1a9becde46334
Go deeper
Mithril Compute Clusters: setup, node lifecycle, and FAQ
Running
ml launchtasks on your cluster: setinfra: kubernetesin your task YAML and the CLI schedules onto your cluster, including reserved instancesWhere your training data should actually live: your pods will want volumes, and there's a right way to think about storage on Mithril
Questions, or want help planning a migration from a self-managed cluster? support@mithril.ai.