Plataforma GitOps para despliegue continuo en Kubernetes usando ArgoCD como controlador declarativo
k8s-devops-platform implementa una arquitectura moderna basada en GitOps, donde Kubernetes se gestiona de forma completamente declarativa y automatizada mediante ArgoCD.
En resumen: despliegues automáticos en Kubernetes sin intervención manual, usando Git como única fuente de verdad.
GitHub (Source of Truth) ↓ ArgoCD (Continuous Delivery Controller) ↓ Kubernetes Cluster ↓ Aplicaciones (NGINX)
Componentes principales:
- ✅ GitHub como fuente única de configuración
- ✅ ArgoCD para sincronización automática
- ✅ Kubernetes como plataforma de ejecución
- ✅ Manifiestos declarativos versionados
- ✅ Aplicación NGINX como ejemplo funcional
- Kubernetes cluster (local o cloud)
- kubectl
- ArgoCD instalado
- Git# 1. Clonar repositorio
git clone https://github.com/Liquenson/k8s-devops-platform.git
cd k8s-devops-platform
# 2. Crear namespace de ArgoCD (si no existe)
kubectl create namespace argocd
# 3. Acceder a ArgoCD (UI o CLI)
# Configurar conexión al repo
# 4. Sincronizar aplicación
# ArgoCD desplegará automáticamente nginx| Componente | Uso |
|---|---|
| Kubernetes | Orquestación de contenedores |
| ArgoCD | GitOps / Continuous Delivery |
| Docker | Contenedores |
| Herramienta | Uso |
|---|---|
| GitHub | Source of Truth |
| Git | Versionado |
| kubectl | Gestión del clúster |
k8s-devops-platform/
├── apps/
│ └── nginx/
│ ├── deployment.yaml # Deployment (2 réplicas)
│ └── service.yaml # Servicio NodePort
│
├── clusters/
│ └── local/ # Configuración de entorno
│
└── README.mdGit Push ↓ ArgoCD detecta cambios ↓ Sincronización automática ↓ Kubernetes aplica estado deseado
Resultado:
- ❌ Sin
kubectl apply - ✅ Despliegue automático
- ✅ Estado consistente
- ✅ Auditoría completa vía Git
- 2 réplicas en ejecución
- Servicio tipo NodePort
- Gestionado 100% por ArgoCD
✅ Control declarativo (sin cambios manuales) ✅ Histórico en Git (auditoría completa) ✅ Separación de responsabilidades ✅ Rollback automático vía Git
- Uso de RBAC en Kubernetes
- Integración con secrets manager
- Restricción de acceso a ArgoCD
- Uso de namespaces por entorno
# Implementar GitOps real
# Automatizar despliegues
# Eliminar configuración manual
# Controlar estado del cluster# Deploy automático con git push
# Entornos reproducibles
# Versionado de infraestructura
# Menos dependencia de operaciones# Arquitectura declarativa
# Alta trazabilidad
# Integración con CI/CD
# Escalabilidad en Kuberneteskubectl get pods
kubectl get svc- GitOps
- Continuous Delivery
- Infraestructura declarativa
- Kubernetes deployments
- Automatización de despliegues
- ✅ GitOps básico con ArgoCD
- ✅ Despliegue NGINX
- ✅ Estructura de repositorio
- 🚧 Auto-sync habilitado
- 🚧 Multi-entorno (dev/staging/prod)
- 🚧 Integración Helm/Kustomize
- 🔮 CI/CD completo (GitHub Actions)
- 🔮 Integración con monitoring
- 🔮 Ingress + dominio
- 🔮 Seguridad avanzada (RBAC + secrets)
Liquenson Ruben Alexis DevOps Engineer | Cloud Engineer | Linux System Administrator | AWS | Kubernetes
- 📧 liquenson.cloud@gmail.com
- 💼 LinkedIn: https://www.linkedin.com/in/liquenson-ruben-490961269/
- 🐙 GitHub: https://github.com/Liquenson
- 📍 Las Palmas de Gran Canaria, España
MIT License - Ver LICENSE
- aws-terraform-devops → Infraestructura AWS con Terraform
- linux-fleet-manager → Automatización Bash de servidores
⭐ ¿Te resulta útil? ¡Dale una estrella!
¿Preguntas? Abre un issue o contáctame por email.