Giriş
Modern DevOps yaklaşımlarında GitOps, altyapı ve uygulama dağıtımlarını Git deposu üzerinden kontrol etme yöntemidir. ArgoCD ise Kubernetes üzerinde çalışan, GitOps felsefesine uygun güçlü bir Continuous Delivery (CD) aracıdır.
Bu makalede:
- ArgoCD’yi Kubernetes cluster üzerine kuracağız.
- Git deposundan manifest dosyalarını senkronize edeceğiz.
- İlk basit uygulamamızı GitOps mantığıyla yöneteceğiz.
Ön Gereksinimler
- Çalışır durumda bir Kubernetes cluster (Minikube, Kind veya bulut sağlayıcıları).
- kubectl kurulu ve cluster’a bağlı.
- GitHub veya GitLab üzerinde örnek bir repo.
- (Opsiyonel) Helm kurulumu.
Adım 1 – ArgoCD Kurulumu
kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
kubectl get pods -n argocd
Adım 2 – ArgoCD UI ve CLI Erişimi
kubectl port-forward svc/argocd-server -n argocd 8080:443
👉 https://localhost:8080
Varsayılan kullanıcı adı: admin
Parola:
kubectl get secret argocd-initial-admin-secret -n argocd -o jsonpath="{.data.password}" | base64 -d
CLI kurulumu:
brew install argocd # Mac
sudo apt-get install argocd-cli # Linux
Adım 3 – İlk Uygulamanın Senkronizasyonu
argocd login localhost:8080
argocd app create guestbook --repo https://github.com/argoproj/argocd-example-apps.git --path guestbook --dest-server https://kubernetes.default.svc --dest-namespace default
argocd app sync guestbook
Adım 4 – GitOps Döngüsü
- Push: Manifest değişikliklerini Git’e gönderin.
- ArgoCD: Repo’yu periyodik olarak tarar veya webhook ile tetiklenir.
- Cluster: Yeni sürümler otomatik senkronize edilir.
Sonuç
Bu makalede ArgoCD kurulumu, UI erişimi ve ilk uygulama senkronizasyonunu gerçekleştirdik.