prometheus基于基于consul服务发现

Posted 知识摆渡人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了prometheus基于基于consul服务发现相关的知识,希望对你有一定的参考价值。

参考文档:​​https://edu.51cto.com/course/30254.html​


一、为什么需要服务发现

Prometheus Server 的数据抓取工作基于 Pull 模型,因而,它必须要事先知道各 target 的位置,然后才能从相应的 Exporter 或 Instrumentation 中抓取数据。

对于小型的系统环境,使用 static_configs 指定各 target 即可解决问题,但是对于较大的集群不适用,尤其不适用于使用容器和基于云的实例的动态集群,因为这些实例会经常出现变化、创建、或销毁的情况。Prometheus 为此专门设计了一组服务发现机制,以便于能够基于服务注册中心自动发现、检测、分类可被监控的各 target ,以及更新发生了变动的 target。

Prometheus 可以集成到多种不同的开源服务发现工具上,以便动态发现需要监控的目标。Prometheus 可以很好的集成到 Kubernetes 平台上,通过其 API Server 动态发现各类被监控的 Pod、Service、Endpoint、Ingress 及 Node 对象,还支持基于文件实现的动态发现。

二、prometheus目前支持的服务发现类型

prometheus目前支持的服务发现类型主要有如下几种:

1、基于文件的服务发现

2、基于consul的服务发现

3、基于k8s API的服务发现

4、基于eureka的服务发现

5、基于nacos的服务发现

6、基于DNS的服务发现

三、什么是基于consul的服务发现

我们大家都知道,Consul是一个服务配置、发现的中间件,常用来作为服务注册中心使用。

在基于文件的服务发现中提到,target的更新需要修改target.json,本质上没有解决运维操作的步骤。而基于Consul的服务发现,则是通过节点主动注册信息到Consul,prometheus通过和Consul集成,从Consul中以http协议获取target的信息。

具体实现案例详情参考文档

以上是关于prometheus基于基于consul服务发现的主要内容,如果未能解决你的问题,请参考以下文章

prometheus学习笔记

Prometheus 基于文件的服务发现

2. prometheus服务发现机制

prometheus部署

prometheus部署

#yyds干货盘点#Prometheus 之服务发现介绍