- HCL 100%
| opentofu | ||
| talos | ||
| .gitignore | ||
| README.md | ||
homelab-infra
homelab instrastructure
Installs
- helm
- talconfig
- talosctl
- kubectl
- git
Configs
-
manually created a talos iso with non UEFI bios (basically vanilla vm) a. template can now be used to create new workers b. before starting VM must configure static ip in technitinum dns (if not done then need to delete the ip in the regular view) c. can reset the talos vm on boot by clicking down arrow as soon as VM starts
-
modify talconfig.yaml to add new nodes then run
talhelper genconfig
Apply on unconfigured node
talosctl apply-config --insecure -n 192.168.80.1 --file clusterconfig/talos-cluster-talos-cp-1.yaml
talosctl apply-config --insecure -n 192.168.80.10 --file clusterconfig/talos-cluster-talos-worker-1.yaml
... worker N ...
bootstrap on one control plane node only
talosctl bootstrap --nodes 182.168.80.1 --endpoints 192.168.80.1 --talosconfig=clusterconfig/talosconfig
kubeconfig setup
talosctl kubeconfig ./kubeconfig -n 192.168.80.1 -e 192.168.80.1 --talosconfig=clusterconfig/talosconfig
export KUBECONFIG=$PWD/kubeconfig
run kubectl get nodes validate it worked
kubectl setup argocd
kubectl create namespace argocd
kubectl apply -n argocd --server-side --force-conflicts -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
kubectl patch svc argocd-server -n argocd -p '{"spec": {"type": "NodePort"}}' // sets firewall to run on each node no balancing
kubectl get svc argocd-server -n argocd
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d; echo // get password