Lección 8: Service — redes estables para los Pods
Hasta ahora aprendimos que Kubernetes mantiene vivas varias copias (Pods) de tu app y las recrea cuando fallan. Pero hay un problema silencioso: cada Pod tiene su propia dirección de red (IP), y esa dirección es efímera — cambia cada vez que un Pod muere, se recrea o se mueve a otro node. Si un comp
Un Service es como el número de teléfono de la recepción de una oficina. El personal cambia todo el tiempo, pero quien llama siempre marca el mismo número — y la llamada llega a quien esté disponible.
- Service
- Un objeto de Kubernetes que le da a un grupo de Pods un nombre y una dirección de red estables, y reparte las solicitudes entre ellos (load-balancing). La dirección se mantiene fija aunque los Pods cambien.
- ClusterIP
- El tipo de Service por defecto: una dirección virtual interna accesible solo desde dentro del clúster, de modo que los componentes internos pueden llegar a ella, pero el mundo exterior no.
- Selector y labels
- Un label es una etiqueta de clave-valor asociada a un Pod (por ejemplo app: web). El selector de un Service indica qué labels buscar, para que el Service sepa a qué Pods enviarle tráfico.
- IP efímera del Pod
- Cada Pod recibe su propia IP, pero esa IP no es estable: cambia cuando el Pod se recrea o se mueve a otro node. Por eso no debes depender de ella directamente.
- Balanceo de carga
- Repartir las solicitudes entrantes entre varios Pods idénticos, para que ninguna copia se sature y el servicio siga disponible.
- targetPort
- El puerto en el que la aplicación dentro del Pod realmente escucha. El Service recibe tráfico en su port y lo reenvía al targetPort del Pod.