Modularización de GKACHELE SaaS
This commit is contained in:
86
kubernetes/README.md
Normal file
86
kubernetes/README.md
Normal file
@@ -0,0 +1,86 @@
|
||||
# WordPress con Kubernetes
|
||||
|
||||
Ejemplo básico de WordPress desplegado en Kubernetes.
|
||||
|
||||
## 🚀 Requisitos
|
||||
|
||||
- Cluster de Kubernetes funcionando (minikube, kind, EKS, GKE, AKS, etc.)
|
||||
- `kubectl` instalado y configurado
|
||||
|
||||
## 📦 Instalación
|
||||
|
||||
### 1. Aplicar los manifiestos
|
||||
|
||||
```bash
|
||||
kubectl apply -f wordpress-deployment.yaml
|
||||
```
|
||||
|
||||
### 2. Verificar el estado
|
||||
|
||||
```bash
|
||||
# Ver los pods
|
||||
kubectl get pods
|
||||
|
||||
# Ver los servicios
|
||||
kubectl get services
|
||||
|
||||
# Ver los PVCs
|
||||
kubectl get pvc
|
||||
```
|
||||
|
||||
### 3. Acceder a WordPress
|
||||
|
||||
#### Con minikube:
|
||||
```bash
|
||||
minikube service wordpress-service
|
||||
```
|
||||
|
||||
#### Con LoadBalancer (cloud):
|
||||
```bash
|
||||
kubectl get service wordpress-service
|
||||
# Usa la IP externa del LoadBalancer
|
||||
```
|
||||
|
||||
#### Con port-forward (desarrollo):
|
||||
```bash
|
||||
kubectl port-forward service/wordpress-service 8080:80
|
||||
# Luego abre http://localhost:8080
|
||||
```
|
||||
|
||||
## 🛠️ Comandos Útiles
|
||||
|
||||
### Ver logs
|
||||
```bash
|
||||
kubectl logs -f deployment/wordpress-deployment
|
||||
kubectl logs -f deployment/mysql-deployment
|
||||
```
|
||||
|
||||
### Escalar WordPress
|
||||
```bash
|
||||
kubectl scale deployment wordpress-deployment --replicas=3
|
||||
```
|
||||
|
||||
### Eliminar todo
|
||||
```bash
|
||||
kubectl delete -f wordpress-deployment.yaml
|
||||
```
|
||||
|
||||
### Ver detalles de un pod
|
||||
```bash
|
||||
kubectl describe pod <nombre-del-pod>
|
||||
```
|
||||
|
||||
## 📝 Notas
|
||||
|
||||
- Los PersistentVolumeClaims requieren un StorageClass configurado en tu cluster
|
||||
- En producción, usa un gestor de secretos (AWS Secrets Manager, HashiCorp Vault, etc.)
|
||||
- Considera usar Ingress para manejar el tráfico HTTP/HTTPS
|
||||
- Para alta disponibilidad, configura múltiples réplicas y un LoadBalancer
|
||||
|
||||
## 🔒 Seguridad
|
||||
|
||||
⚠️ **IMPORTANTE**: Este ejemplo usa Secrets en texto plano. En producción:
|
||||
- Usa un gestor de secretos externo
|
||||
- Implementa RBAC apropiado
|
||||
- Configura NetworkPolicies
|
||||
- Usa certificados SSL/TLS con Ingress
|
||||
Reference in New Issue
Block a user