🔗 Services
Los pods nacen y mueren, y con cada recreación la IP cambia. El Service crea una dirección fija frente a los pods, para que otras aplicaciones (o usted) siempre puedan acceder a ellos.
| Tipo | Quién accede | Cuándo usar |
|---|---|---|
ClusterIP | Solo dentro del clúster | Comunicación entre aplicaciones |
NodePort | Desde fuera, por la IP del node + puerto | Pruebas y accesos simples |
LoadBalancer | Desde fuera, por una IP propia | Producción, sin Ingress |
Los Services se crean con kubectl. El Panel Nuvion se usa para liberar el acceso de red externo (paso 5).
🚀 Antes de comenzar
- Tener el acceso al clúster configurado (vea Acceso al Clúster).
🚀 1. Crear una aplicación de prueba
kubectl create deployment web --image=nginx --replicas=2
kubectl get pods
Espere a que los dos pods estén Running.
🚀 2. Crear un Service interno (ClusterIP)
kubectl expose deployment web --name=web-svc --port=80 --target-port=80
kubectl get svc web-svc
Anote el CLUSTER-IP mostrado.
🚀 3. Probar el acceso dentro del clúster
kubectl run teste-curl --rm -it --image=curlimages/curl --restart=Never -- curl http://web-svc
Si aparece la página Welcome to nginx!, el Service está funcionando.
🚀 4. Crear un Service externo (NodePort)
kubectl expose deployment web --name=web-nodeport --type=NodePort --port=80
kubectl get svc web-nodeport
En la columna PORT(S) aparece algo como 80:31245/TCP. El número después de los dos
puntos (31245) es el puerto externo. Anote el suyo.
🚀 5. Liberar el puerto en la red
Para acceder desde fuera, el puerto debe estar liberado y el node debe tener una IP accesible.
- 🖥️ Panel Nuvion
- ⌨️ kubectl (CLI)
- Acceda a Computar > Grupos de seguridad y abra el grupo usado por los nodos del clúster.
- Agregue una regla de entrada, protocolo TCP, en el puerto anotado en el paso 4.
- Acceda a Computar > IPs flotantes y asocie una IP a uno de los workers, si aún no tiene.

Para descubrir la IP interna de los nodes:
kubectl get nodes -o wide
La liberación del puerto y la IP flotante se realizan en el Panel Nuvion (vea la pestaña de al lado).
🚀 6. Acceder a la aplicación
En el navegador, abra http://IP-DEL-NODE:PUERTO (ejemplo: http://203.0.113.10:31245).
✅ Cómo saber si funcionó
La página Welcome to nginx! se abre en el navegador.
❗ Problemas comunes
| Síntoma | Causa | Solución |
|---|---|---|
| La página no abre (timeout) | Puerto no liberado o node sin IP accesible | Revise el paso 5 |
ENDPOINTS vacío en kubectl get endpoints web-svc | El Service no encontró pods | Verifique que los pods estén Running |
EXTERNAL-IP aparece como none | Normal para NodePort | Use la IP del node |
🧹 Limpieza
kubectl delete svc web-svc web-nodeport
kubectl delete deployment web
➡️ Próximo paso: Ingress
🧠 ¿Dudas?
¡Hable con nuestro equipo de soporte técnico de SaveinCloud!