From 08f9409ce2ba38155dadc7defba68e2bb474aa41 Mon Sep 17 00:00:00 2001 From: xguefer Date: Fri, 8 Aug 2025 13:09:54 +0200 Subject: [PATCH] Actualizar comprobaciones.md --- comprobaciones.md | 80 +++++++++++++++++++++++++++++++++++------------ 1 file changed, 60 insertions(+), 20 deletions(-) diff --git a/comprobaciones.md b/comprobaciones.md index 236a7f5..7b97d1b 100644 --- a/comprobaciones.md +++ b/comprobaciones.md @@ -1,8 +1,6 @@ # **Comprobaciones y diagnóstico habitual** - - -### Estado de nodos, pods y despliegues +## 1. Estado de nodos, pods y despliegues ```bash kubectl get nodes -o wide # Estado y detalles de los nodos @@ -23,14 +21,15 @@ kubectl describe pod -n kubectl logs -n kubectl logs -f -n # Logs en streaming (útil en troubleshooting) ``` -### Estado de los control-plane y componentes críticos + +## 2. Estado del control-plane y componentes críticos ```bash kubectl get pods -n kube-system -o wide # Componentes internos: etcd, coredns, apiserver, controller, etc. kubectl logs -n kube-system # Logs de cualquier pod de kube-system ``` -### Servicios, IPs y estado MetalLB +## 3. Servicios, IPs y estado MetalLB ```bash kubectl get svc -A # Todos los servicios, revisa columna EXTERNAL-IP @@ -38,7 +37,7 @@ kubectl get svc -n traefik # Servicio LoadBalancer de Traefik kubectl describe svc -n # Ver detalles de servicio, endpoints, ports, etc. ``` -### Certificados, secrets y recursos cert-manager +## 4. Certificados, secrets y recursos cert-manager ```bash kubectl get secrets -n traefik # Verifica el Secret TLS (ej: wildcard-cert) @@ -51,7 +50,7 @@ kubectl get clusterissuer,issuer -A # Ver emisores de cert-manager (sta kubectl describe clusterissuer # Detalles y eventos del issuer global ``` -### Ingress, dominios y rutas +## 5. Ingress, dominios y rutas ```bash kubectl get ingress -A @@ -60,7 +59,7 @@ kubectl describe ingress -n *Revisa que los hosts, paths y el campo `secretName` están correctos.* -### Comprobar acceso SSL/TLS desde fuera +## 6. Comprobar acceso SSL/TLS desde fuera ```bash openssl s_client -connect :443 -servername app1.miempresa.com @@ -70,21 +69,62 @@ openssl s_client -connect :443 -servername app1.miempresa.com --- -## g) **Comprobaciones útiles entre pasos** +## 7. Comandos útiles para trabajar con NAD (NetworkAttachmentDefinition) -* Tras instalar Traefik y MetalLB: - Comprueba que el servicio Traefik tiene una IP del pool y responde en el puerto 80/443. +### a) Ver todos los NAD existentes -* Tras instalar cert-manager y crear issuers: - Haz `kubectl get pods -n cert-manager` y revisa los logs si algún pod falla. +```bash +kubectl get network-attachment-definitions --all-namespaces +# o, más corto +kubectl get nad -A +``` -* Tras crear un Secret TLS: - Haz `kubectl describe secret -n ` y asegúrate de que el tipo es `kubernetes.io/tls`. +### b) Ver el YAML de un NAD concreto -* Tras crear Ingress: - Comprueba con `kubectl get ingress -A` y revisa que los hosts y secrets estén bien referenciados. +```bash +kubectl get network-attachment-definition -o yaml +# o +kubectl -n get nad -o yaml +``` -* Si accedes por navegador y hay error SSL: - Usa `openssl s_client` para ver qué certificado se está presentando realmente. +### c) Borrar un NAD ---- \ No newline at end of file +```bash +kubectl delete network-attachment-definition +# o +kubectl -n delete nad +``` + +### d) Editar un NAD en caliente + +```bash +kubectl edit network-attachment-definition +# o +kubectl -n edit nad +``` + +--- + +## 8. Comprobaciones útiles entre pasos + +* **Tras instalar Traefik y MetalLB:** + + * Comprueba que el servicio Traefik tiene una IP del pool y responde en el puerto 80/443. + +* **Tras instalar cert-manager y crear issuers:** + + * Haz `kubectl get pods -n cert-manager` y revisa los logs si algún pod falla. + +* **Tras crear un Secret TLS:** + + * Haz `kubectl describe secret -n ` y asegúrate de que el tipo es `kubernetes.io/tls`. + +* **Tras crear Ingress:** + + * Comprueba con `kubectl get ingress -A` y revisa que los hosts y secrets estén bien referenciados. + +* **Si accedes por navegador y hay error SSL:** + + * Usa `openssl s_client` para ver qué certificado se está presentando realmente. + +---