Tengo un pod de varios contenedores en mi implementación de kubernetes:
Para cada uno de esos contenedores, también hay un contenedor con el exportador Prometheus.
La pregunta es ¿cómo puedo exponer esos puertos a Prometheus si la sección de anotaciones admite solo un puerto por pod?
annotations: prometheus.io/scrape: 'true' prometheus.io/port: 'xxxx'pero necesito algo como esto:
annotations: prometheus.io/scrape: 'true' prometheus.io/port_1: 'xxxx' prometheus.io/port_2: 'yyyy' prometheus.io/port_3: 'zzzz'¿Tal vez haya algún otro método para extraer todas las métricas de mis pods de varios contenedores? Gracias de antemano por cualquier tipo de ayuda.
Aquí hay un trabajo de ejemplo para Prometheus. Póngalo en su propia configuración.
A continuación, agregue:
annotations: prometheus.io/scrape: 'true'a los metadatos de su pod.
Y en cada contenedor, que proporciona /metrics a prom, cree un puerto apropiado, denominado metrics .
Eso es todo. Prometheus rasparía solo esos puertos, y no habría ninguna situación, como cuando su instancia de redis recibiría solicitudes http en su puerto 6379.
Las anotaciones que propones deberían funcionar. Cree un scrape_config por anotación de puerto, manteniendo solo los destinos que coincidan con el nombre de puerto de anotación correspondiente.