theshire/kubernetes/bootstrap
2024-11-23 08:03:55 +00:00
..
flux Update Flux group to v2.4.0 2024-09-30 18:02:32 +00:00
talos Update image ghcr.io/siderolabs/kubelet to v1.31.3 2024-11-23 08:03:55 +00:00
helmfile.yaml Update image prometheus-operator-crds to v16 2024-11-08 18:21:08 +00:00
readme.md moving to the shire 2024-09-04 13:35:14 -05:00

Bootstrap

Prerequisites

brew install helmfile
helm plugin install https://github.com/databus23/helm-diff

Talos

Bootstrap talos cluster

talosctl apply-config --nodes=10.1.1.61 --file=./kubernetes/bootstrap/talos/clusterconfig/homelab-shadowfax.yaml --insecure
talosctl bootstrap --nodes=10.1.1.61

CNI & Container Proxy

Install Cilium & Spegel

helmfile apply -f kubernetes/bootstrap/talos/apps/helmfile.yaml

Flux Prep

Install Flux

kubectl apply --server-side --kustomize ./kubernetes/bootstrap/flux

Apply secrets, settings, and crds.

These cannot be applied with kubectl in the regular fashion due to be encrypted with sops

sops --decrypt kubernetes/bootstrap/flux/age-key.sops.yaml | kubectl apply -f -
sops --decrypt kubernetes/bootstrap/flux/git-deploy-key.sops.yaml | kubectl apply -f -
sops --decrypt kubernetes/flux/vars/cluster-secrets.sops.yaml | kubectl apply -f -
kubectl apply -f kubernetes/flux/vars/cluster-settings.yaml

Wipe Rook Ceph

kubectl apply -f kubernetes/tools/wiperook.yaml

Kick off Flux applying this repository

kubectl apply --server-side --kustomize ./kubernetes/flux/config