【发布时间】:2021-11-12 01:40:47
【问题描述】:
我有一个 Spring Boot 应用程序在启用 Consul Connect 的 Nomad 集群中运行。
network {
mode = "bridge"
}
service {
name = "api"
port = "9966"
connect {
sidecar_service {}
}
}
没有定义端口映射,API 只能在 consul 服务网格内通过代理访问。现在我让 prometheus 在同一个集群中运行。 prometheus 如何发现单个 API 实例并从中提取指标。我使用了以下配置。但是如果没有主机级别的映射端口,它就无法访问单个 API 实例。
- job_name: 'actuator'
metrics_path: /api/actuator/prometheus
consul_sd_configs:
- server: '{{ env "NOMAD_IP_prometheus_ui" }}:8500'
services: ['api']
如何解决这个问题?从在没有主机端口映射的服务网格中运行的 Spring Boot 应用程序中抓取指标的一般做法是什么?
【问题讨论】:
标签: spring-boot prometheus consul service-discovery