https://github.com/corvus-ch/damp-lab-1081
GitOps repository for the damp-lab-1081 k8s cluster running on Hypriot/Raspberry Pi 4/CloverPi
https://github.com/corvus-ch/damp-lab-1081
Last synced: 3 months ago
JSON representation
GitOps repository for the damp-lab-1081 k8s cluster running on Hypriot/Raspberry Pi 4/CloverPi
- Host: GitHub
- URL: https://github.com/corvus-ch/damp-lab-1081
- Owner: corvus-ch
- License: unlicense
- Created: 2020-12-13T15:27:23.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2020-12-29T07:41:23.000Z (over 4 years ago)
- Last Synced: 2025-01-11T16:49:59.340Z (5 months ago)
- Language: Jsonnet
- Size: 364 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# damp-lab-1081
GitOps repository for the damp-lab-1081 k8s cluster running on Hypriot/Raspberry Pi 4/CloverPi## Bootstrapping the cluster
1. Apply the private key for Sealed Secrets
gpg --decrypt sealed-secrets-key.asc | kubectl create -f -
2. Install Sealed Secrets
kubectl apply -f kube-system/sealed-secrets.yaml
3. Install ArgoCD
kubectl create ns argocd
kubectl apply -n argocd -f argocd/argocd.yaml4. Login to ArgoCD and change password
kubectl -n argocd port-forward svc/argocd-server 8443:443
argocd login --username admin --password $(kubectl get pods -n argocd -l app.kubernetes.io/name=argocd-server -o name | cut -d'/' -f 2) localhost:8443
argocd account update-password --current-password $(kubectl get pods -n argocd -l app.kubernetes.io/name=argocd-server -o name | cut -d'/' -f 2)5. Trigger ArgoCD application syncs
kubectl create -f _apps/apps.yaml
argocd app sync apps
argocd app sync argocd
argocd app sync -l app.kubernetes.io/instance=apps## Operations and maintenance
### Update Sealed Secrets
export VERSION=v0.…
curl -sLo kube-system/sealed-secrets.yaml "https://github.com/bitnami-labs/sealed-secrets/releases/download/${VERSION}/controller.yaml"### Update ArgoCD
curl -sLo argocd/argocd.yaml https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
sed -i'' 's|argoproj/argocd:v1.7.9|alinbalutoiu/argocd:v1.7.10|g' argocd/argocd.yamlARM compatibilty of ArgoCD is not yet a given: https://github.com/argoproj/argo-cd/issues/4211.
### Update cert-manager
export VERSION=v1.…
curl -sLo cert-manager/cert-manager.yaml https://github.com/jetstack/cert-manager/releases/download/${VERSION}/cert-manager.yaml### Update Nginx ingress
export VERSION=v0.42.0
curl -sLo ingress-nginx/deploy.yaml "https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-${VERSION}/deploy/static/provider/cloud/deploy.yaml"### Update Longhorn
export VERSION=v1.1.0
curl -sLo longhorn-system/deploy.yaml "https://raw.githubusercontent.com/longhorn/longhorn/${VERSION}/deploy/longhorn.yaml"Review `git diff` and ensure no custom configuration got lost.