Getting started

Prepare your machines

What each machine needs before you run the installer.

TL;DR

Ubuntu Server 24.04, the same sudo user and password on every machine, SSH, and internet access. The installer does the rest.

What each machine needs

  • Ubuntu Server 24.04 LTS.

  • A user with sudo, not root, with the same name and password on every machine.

  • OpenSSH server, running.

  • Internet access.

  • Control plane: a physical machine with at least 16 CPU cores and 64 GB of memory. With a DGX Spark, use another machine as the control plane, so the Spark’s memory stays free for AI work.

  • GPU machines: an NVIDIA GPU from the Volta generation or newer, with driver 580 or newer. If the driver is missing or old, the installer offers to install it.

Tested on a DGX Spark and on an x86 workstation with RTX 3090 GPUs.

What the installer does for you

  • Uses the whole disk, even when Ubuntu’s installer left most of it unused.

  • Connects every machine to your private network (Tailscale).

  • Installs the tools it needs and sets up access between the machines.

  • Prepares each machine for Kubernetes.

  • On a DGX Spark, sets memory limits so that a program that runs out of memory is stopped, and the machine does not freeze.

Docker

Thinkube runs beside Docker and leaves Docker as it is. NVIDIA’s DGX Spark playbooks keep working. Both use the same GPU, so memory used by one is not available to the other.

Check a machine before you start

On the machine:

lsb_release -d          # Ubuntu 24.04.x LTS
sudo -v                 # asks for your password and returns
systemctl is-active ssh # active
nvidia-smi              # GPU machines: driver version 580 or newer

Next