1.2 KiB
1.2 KiB
Bootstrap
Prerequisites
brew install helmfile
helm plugin install https://github.com/databus23/helm-diff
Talos
Bootstrap talos cluster
omnictl cluster template sync -f ./omni-homelab-export.yaml --omniconfig ./omniconfig.yaml
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
Bootsrap Kube Prometheus Stack CRDs.
kubectl apply -k kubernetes/bootstrap/kps-crds/
Reset ZFS Pool
# TBD
Kick off Flux applying this repository
kubectl apply --server-side --kustomize ./kubernetes/flux/config