Kubernetes
Namespaces
| Namespace |
Propósito |
default |
Landing page (deibuzz.es) |
ingress-nginx |
Controlador nginx ingress |
cert-manager |
Certificados automáticos Let's Encrypt |
external-dns |
Sincronización DNS con Cloudflare |
auth |
Authentik SSO |
mail |
Stalwart mail server |
media |
Jellyfin |
photos |
Immich |
wiki |
Wiki.js |
vault |
OpenBao |
torrent |
qBittorrent + Filebrowser |
docs |
Este sitio (MkDocs) |
kube-system |
Componentes del sistema k3s |
Componentes de infraestructura
| Componente |
Namespace |
Descripción |
| nginx ingress |
ingress-nginx |
Punto de entrada único HTTP/HTTPS |
| cert-manager |
cert-manager |
Certificados Let's Encrypt dns-01 |
| external-dns |
external-dns |
Sincroniza Ingress → Cloudflare DNS |
| ip-updater |
external-dns |
CronJob actualizador de IP pública |
| CoreDNS |
kube-system |
DNS interno del cluster |
| metrics-server |
kube-system |
kubectl top |
| local-path-provisioner |
kube-system |
PVs con hostPath |
Comandos útiles
# Estado de todos los pods
kubectl get pods -A
# Recursos del nodo
kubectl top node
# Logs de un servicio
kubectl logs -n <ns> deployment/<nombre> -f
# Reiniciar deployment
kubectl rollout restart deployment/<nombre> -n <ns>
# Aplicar manifiestos
kubectl apply -f $DEIBUZZ_HOME/<servicio>/manifests/
Manifiestos
$DEIBUZZ_HOME/
├── <servicio>/
│ └── manifests/
│ ├── namespace.yaml
│ ├── storage.yaml
│ ├── <servicio>.yaml
│ └── ingress.yaml
└── k3s/
└── manifests/
├── ingress-nginx/ # controlador + security headers
├── cert-manager/ # issuers + clusterissuers
├── external-dns/ # ip-updater + external-dns
└── root-domain/ # landing page + ingress raíz