Table of Contents
Phase 4: Kubernetes & ArgoCD
Duration: 30-45 minutes
Purpose: Configure Kubernetes access and ArgoCD
Dependencies: Phase 3 complete, DNS working
Overview
This phase configures kubectl access to the GKE cluster and sets up ArgoCD for GitOps deployments. It includes ArgoCD Image Updater configuration and bootstrapping of the core applications.
📋 Setup Steps
- Kubectl Setup
- Configure kubectl for GKE cluster
- Verify cluster connectivity
-
Test basic cluster operations
- Access ArgoCD web interface
- Configure GitLab OAuth authentication
-
Set up RBAC permissions
- Configure Image Updater for Artifact Registry
- Set up authentication credentials
-
Test image update functionality
- Deploy ArgoCD root applications
- Bootstrap core system components
- Verify application sync status
🎯 Success Criteria
After completing this phase, you should have:
- Kubectl Access - Can execute
kubectl
commands against the cluster - ArgoCD Web UI - Accessible at
https://argocd.florenciacomuzzi.com
- GitLab OAuth - Can login to ArgoCD with GitLab credentials
- Image Updater - Configured for automatic image updates
- Core Apps Deployed - All base applications synced and healthy
⏭️ Next Phase
Once ArgoCD is configured and core applications are deployed, proceed to Phase 5: CI/CD Integration
🔧 Key Commands
# Configure kubectl
gcloud container clusters get-credentials blueberry-dev-cluster --region us-east1
# Test cluster connectivity
kubectl cluster-info
kubectl get nodes
kubectl get namespaces
# Check ArgoCD status
kubectl get pods -n argocd
kubectl get applications -n argocd
# Setup Image Updater
./scripts/setup-argocd-image-updater.sh
# Bootstrap applications
kubectl apply -f argocd-apps/root/blueberry-root-dev.yaml
📊 ArgoCD Applications
Application | Purpose | Status | Sync Wave |
---|---|---|---|
argocd-appproject |
Security boundaries | Must be healthy | 0 |
argocd-repos |
Repository credentials | Must be healthy | -10 |
external-secrets |
Secret management | Must be healthy | -10 |
argocd-image-updater |
Automated updates | Must be healthy | -5 |
blueberry |
Main application | Deploy later | 10 |
⏰ Timing Considerations
- Kubectl Configuration: 2-3 minutes
- ArgoCD Access: 5-10 minutes (depends on DNS/SSL)
- Image Updater Setup: 5-10 minutes
- App Synchronization: 5-15 minutes per application
🚨 Common Issues
- Cluster Access: Verify GCP credentials and project
- ArgoCD Loading: Check DNS and SSL certificate status
- Sync Failures: Review application logs and prerequisites
- Image Updater: Ensure Artifact Registry permissions are correct
📚 Documentation
Document ID: setup/04-kubernetes/README