theshire/kubernetes/bootstrap/readme.md

58 lines
1.2 KiB
Markdown
Raw Normal View History

2024-01-11 15:03:54 -06:00
# Bootstrap
## Prerequisites
```sh
brew install helmfile
helm plugin install https://github.com/databus23/helm-diff
```
## Talos
### Bootstrap talos cluster
```sh
omnictl cluster template sync -f ./omni-homelab-export.yaml --omniconfig ./omniconfig.yaml
```
## CNI & Container Proxy
2024-03-31 10:02:55 -05:00
### Install Cilium & Spegel
2024-03-31 10:02:55 -05:00
```sh
helmfile apply -f kubernetes/bootstrap/talos/apps/helmfile.yaml
2024-03-31 10:02:55 -05:00
```
## Flux Prep
2024-01-11 15:03:54 -06:00
### Install Flux
```sh
kubectl apply --server-side --kustomize ./kubernetes/bootstrap/flux
```
### Apply secrets, settings, and crds.
2024-01-11 15:03:54 -06:00
_These cannot be applied with `kubectl` in the regular fashion due to be encrypted with sops_
```sh
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
```
2024-05-07 19:46:07 -05:00
### Bootsrap Kube Prometheus Stack CRDs.
```sh
kubectl apply -k kubernetes/bootstrap/kps-crds/
```
## Reset ZFS Pool
2024-03-31 10:02:55 -05:00
```sh
2024-05-07 19:46:07 -05:00
# TBD
2024-03-31 10:02:55 -05:00
```
## Kick off Flux applying this repository
2024-01-11 15:03:54 -06:00
```sh
kubectl apply --server-side --kustomize ./kubernetes/flux/config
```