„BestMan” m-a sfatuit sa ma uit si la ArgoCD. Rachete, magie, gitops, kubernetzi…
Sa incepem cu o traducere:
Argo CD este un instrument declarativ CICD pentru aplicatiile Kubernetes. Acesta utilizeaza stilul GitOps pentru a crea si gestiona clustere Kubernetes. Atunci cand se fac modificari in configuratia aplicatiei din Git, Argo CD o compara cu configuratia aplicatiei care ruleaza si notifica utilizatorii pentru a sincroniza starea dorita cu cea actuala.
Argo CD a fost dezvoltat in cadrul proiectului Argo al Cloud Native Computing Foundation (CNCF), un proiect destinat in special gestionarii ciclului de viata al aplicatiilor Kubernetes. Acest proiect include, de asemenea, Argo Workflow, Argo Rollouts si Argo Events. Fiecare dintre acestea rezolva un set specific de probleme in procesul de dezvoltare agila si contribuie la livrarea scalabila si securizata a aplicatiilor Kubernetes.
Cumva in github pui yaml-urile, asta verifica ce e acolo si face treaba. Asta e magie, ca pana acum stateam cu 20j de fisiere yaml pe nodu de control si le pierdeam, le suprascriam, nu mai stiam care fisier e ce imi trebuie… nah, gandire de sysadmin.
Am deja cont de github, o sa fac un repo nou si o sa il folosesc pentru a instala „Uptime Kuma” cu ArgoCD.
Instalarea ArgoCD e simpla, am facut un namespace nou si am folosit manifestul lor.kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
Dupa 2-3 minute am vazut si podurile:

Mai devreme am pus MetalLB si as vrea sa il folosesc sa ajung la ArgoCD. Se poate folosi si nodeport dar e mai elegant asa, fara sa accesezi porturi ciudate. Dezavantajul pe care il vad eu pe termen lung o sa trebuiasca sa extinzi pool-ul de ip-uri folosit de metallb. Deci, revenim:kubectl patch svc argocd-server -n argocd -p '{"spec": {"type": "LoadBalancer"}}'
Teoretic acum ar trebui sa am ArgoCD publicat pe unu din ip-urile alea din loadbalancer, pe porturile 443 si 80.

O sa avem nevoie de parola (userul e admin). Avem o parola random creata la instalare…kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d
Accesam 192.168.111.220:80, user si parola avem. Iaca!

Avem ArgoCD functional, teoretic putem incepe sa il folosim.
Next post, instalare „Uptime Kuma” cu ArgoCD.