es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo mapea Kubernetes los puertos de los Pods con múltiples contenedores?

Estoy tratando de aprender Kubernetes. Una cosa que no entiendo es el siguiente escenario:

Dado que tengo una vaina con 2 contenedores. Un contenedor ejecuta una aplicación que escucha en el puerto 80, el otro contenedor es un sidecar que realiza algunas solicitudes a un recurso web pero no escucha en ningún puerto.

Ahora, cuando inicio un servicio con TargetPort = 80, ¿cómo sabe Kubernetes qué contenedor dentro de la vaina expone este puerto? ¿Inspecciona todos los contenedores para verificar los puertos expuestos? ¿O simplemente hace una asignación para el puerto 80 en todos los contenedores dentro de la vaina?

Además, ¿es posible cambiar el puerto expuesto por los contenedores en Kubernetes, de modo que el puerto expuesto por el contenedor ( = containerPort) se asocie a un puerto diferente dentro del contenedor?
Me refiero a algo similar al argumento -p en Docker.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Al iniciar un servicio con TargetPort = 80 en un pod con varios contenedores, Kubernetes determina qué contenedor expone el puerto 80 al inspeccionar el campo containerPort de la configuración del contenedor. Si varios contenedores tienen el mismo containerPort definido, Kubernetes mapeará ese puerto a todos esos contenedores.

    Para cambiar el puerto expuesto de un contenedor en Kubernetes, puede cambiar el campo containerPort en la configuración del contenedor. Sin embargo, esto no mapea el puerto expuesto del contenedor a un puerto diferente dentro del mismo contenedor. Si necesita mapear el puerto expuesto del contenedor a un puerto diferente en el sistema host, como lo haría con el argumento -p en Docker, puede utilizar un servicio NodePort en Kubernetes. Esto crea una dirección estable para el servicio, lo que permite acceder a él desde fuera del clúster en un puerto específico.

Comments are closed.