Docker出口商Prometheus
我有一个应用程序与不同的端点(rest服务)运行在一个docker容器kubernetes豆荚。
这些端点是可达到的:
localhost:8080/myapp/status/health
或
localhost:8080/myapp/status/version
我想添加一些这些端点(如健康和版本)普罗米修斯指标。 我需要写一个出口商还是哪个出口商被推荐在这个Senario中使用?
这听起来像是在寻找关键词和一个地方,开始configuration在Kubernetes集群中运行的Prometheus可以从指标端点刮取数据。
我build议将两个pathmyapp/status/version
和myapp/status/health
的job_name添加到您的prometheusconfiguration映射scrape_config部分,并根据kube-dns分配将目标称为应用程序名称。 实际的域名很可能是附加到名称空间的app_name: <app_name>.<k8s_namespace>.svc.cluster.local>
Localhost通常只在您的直接系统上parsing(例如,笔记本电脑或Pod本身),它是绑定到127.0.0.1,这通常不是通过kube-dns在networking中路由,因为所有的Pod和节点在技术上都具有该接口,并且无法区分它们。
您可以通过进入K8s窗格并在组合上发出nslookup来validationFQDN是否已解决。 FQDN不会在群集之外parsing,因为它意味着在群集内可路由 – 除非您以其他方式构build它。
HTH和configuration好运。
我认为这里最好的方法是从应用程序本身中删除,而不是从Kubernetes本身的指标。
您需要使用Prometheus客户端库来testing您的应用程序 ,以导出关于您感兴趣的那些端点的度量标准,并configurationPrometheus来删除应用程序。