• Prometheus服务发现


    概述

    Prometheus Server的数据抓取工作于Pull模型,因而,它必需要事先知道各Target的位置,然后才能从相应的 Exporter 或 Instrumentation 中抓取数据
    对于小型的系统环境来说,通过static_configs指定各Target便能解决问题,这也是最简单的配置方法;
    • 每个Targets用一个网络端点(ip:port)进行标识;
    对于中大型的系统环境或具有较强动态性的云计算环境来说,静态配置显然难以适用;
     因此,Prometheus为此专门设计了一组服务发现机制,以便于能够基于服务注册中心(服务总线)自动发现、检测、分类可被监控的各Target,以及更新发生了变动的Target;
     

    Prometheus可集成的服务发现机制

    不同场景中,服务注册中心的指代也会有所不同
    公有或私有IaaS云自身保存有平台上的所有资源信息,其API Server便可作为Prometheus的服务发现媒介;
    • azure、ec2、digitalocean、gce、hetzner、
    Prometheus也可以集成到多种不同的开源服务发现工具上,以动态发现需要监控的目标;
    • Consul、Eureka Zookeeper Serverset或Airbnb Nerve等
    Prometheus也可以很好地集成到Kubernetes平台上,通过其API Server动态发现各类被监控的Pod(容器集)、Service、Endpoint、Ingress和Node对象;
    • 它也支持基于dockerswarm和marathon两款编排工具进行服务发现;
    Prometheus还支持基于DNS或文件的动态发现机制;

    服务发现的实现

     静态文件

    基于文件的服务发现

    基于Consul的服务发现

    基于DNS的服务发现

     

     
     
     
     

    作者:闫世成

    出处:http://cnblogs.com/yanshicheng

    联系:yans121@sina.com

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题或建议,请多多赐教,非常感谢。
  • 相关阅读:
    Hibernate 学习-3
    Hibernate反向工程使用心得
    MyEclipse中自动整合Spring3+Hibernate/JPA
    jsp页面不显示问题
    jstl获取当前系统时间的方法
    js实现12小时时钟
    从servlet跳到jsp页面,并用jstl 进行判断和显示方法
    jsp调用js文件时出现乱码
    常见异常总结
    js实现表单验证
  • 原文地址:https://www.cnblogs.com/yanshicheng/p/15501028.html
Copyright © 2020-2023  润新知