El port forwarding en Kubernetes es una técnica que permite redirigir el tráfico desde tu máquina local a un servicio o pod dentro del clúster. Esto es útil cuando quieres acceder a una aplicación que está corriendo en un pod sin exponerla a través de un servicio externo como NodePort o LoadBalancer.
Cuando usas port forwarding, Kubernetes establece una conexión directa entre un puerto en tu máquina local y un puerto en un pod específico dentro del clúster. De esta manera, puedes interactuar con la aplicación dentro del pod como si estuviera corriendo en tu propio equipo.
kubectl port-forward <pod-name> <local-port>:<container-port>
Por ejemplo, si tienes un pod llamado my-pod
con un servidor web corriendo en el puerto 8080, puedes redirigir el puerto 8080 del pod al puerto 8080 de tu máquina local con:
kubectl port-forward my-pod 8080:8080
Luego puedes acceder al servidor web en tu navegador usando http://localhost:8080
, como si el servidor estuviera ejecutándose localmente.
kubectl
.También puedes hacer port forwarding a un servicio en lugar de un pod específico, con el comando:
kubectl port-forward service/<service-name> <local-port>:<service-port>
Esto te permite probar el servicio directamente desde tu máquina.
En resumen, el port forwarding es una herramienta poderosa y sencilla que facilita el acceso temporal a los servicios dentro del clúster de Kubernetes, especialmente durante las etapas de desarrollo y depuración.