Getting Started
This guide walks through the initial setup process for the cluster. Each step builds on the previous one.
1. Prepare all nodes
Prepare nodes for use with the cluster.
2. Initialize configuration and secrets
If you're starting from scratch, you'll need to make sure that the following configuration files are in place.
Then, you'll need to generate Talos secrets:
homelab talosctl gen secrets --output-file ./config/secrets-talos.yaml
Skip ahead if you already have secrets.
If secrets exist but aren't local, pull them:
homelab pull-secrets
Generate client configuration:
homelab generate-client-config
homelab talosctl -n [control-plane-node] kubeconfig
3. Apply system configuration
Node names depend on your local configurations and are extracted from configuration file names. A configuration file ./config/node-abc-def-1.yaml identifies a node abc-def-1.
Replace node-1 node-2 below with a space-separated list of your node names.
Apply system configuration for every node in the cluster.
for n in node-1 node-2; do
homelab apply-system-config --insecure "${n}";
done;
4. Start the cluster
This command will hang until a CNI is deployed. You can run this in a separate terminal and proceed to the next step while it completes.
To bootstrap the control plane:
homelab talosctl -n [control-plane-node] bootstrap
5. Bootstrap the cluster
Complete the full cluster bootstrap. This deploys all network policies, a CNI, a gitops provider and a secrets store.
homelab bootstrap