zoukankan      html  css  js  c++  java
  • Prometheus jvm_exporter监控zookeeper

    Zookeeper

    Prometheus 监控zookeeper使用jvm_exporter来采集数据,jvm_exporter是一个可以配置抓取和暴露JMX目标的mBeans的收集器。

    下载javaagent

    cd /usr/local/zookeeper/prometheus
    wget https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.3.1/jmx_prometheus_javaagent-0.3.1.jar

    编写zookeeper.yml文件

    rules:
      # replicated Zookeeper
      - pattern: "org.apache.ZooKeeperService<name0=ReplicatedServer_id(\d+)><>(\w+)"
        name: "zookeeper_$2"
      - pattern: "org.apache.ZooKeeperService<name0=ReplicatedServer_id(\d+), name1=replica.(\d+)><>(\w+)"
        name: "zookeeper_$3"
        labels:
          replicaId: "$2"
      - pattern: "org.apache.ZooKeeperService<name0=ReplicatedServer_id(\d+), name1=replica.(\d+), name2=(\w+)><>(\w+)"
        name: "zookeeper_$4"
        labels:
          replicaId: "$2"
          memberType: "$3"
      - pattern: "org.apache.ZooKeeperService<name0=ReplicatedServer_id(\d+), name1=replica.(\d+), name2=(\w+), name3=(\w+)><>(\w+)"
        name: "zookeeper_$4_$5"
        labels:
          replicaId: "$2"
          memberType: "$3"
      # standalone Zookeeper
      - pattern: "org.apache.ZooKeeperService<name0=StandaloneServer_port(\d+)><>(\w+)"
        name: "zookeeper_$2"
      - pattern: "org.apache.ZooKeeperService<name0=StandaloneServer_port(\d+), name1=InMemoryDataTree><>(\w+)"
        name: "zookeeper_$2"

    修改bin/zkServer.sh文件

    if [ "x$SERVER_JVMFLAGS"  != "x" ]
    then
        JVMFLAGS="$SERVER_JVMFLAGS $JVMFLAGS"
    fi
    
    ## 新增javaagent
    JMX_DIR="/usr/local/zookeeper/prometheus"
    JVMFLAGS="$JVMFLAGS -javaagent:$JMX_DIR/jmx_prometheus_javaagent-0.3.1.jar=9505:$JMX_DIR/zookeeper.yml"
    
    if [ "x$2" != "x" ]
    then
        ZOOCFG="$ZOOCFGDIR/$2"
    fi

    验证

    curl localhost:9505/metrics

    加入Prometheus

    编辑prometheus.yml文件,添加内容

    - job_name: 'zookeeper'
        static_configs:
        - targets: ['172.16.10.62:9505']

    重启prometheus,然后在Prometheus页面中的Targets中就能看到新加入的zookeeper

  • 相关阅读:
    完美数据迁移-MongoDB Stream的应用
    补习系列(3)-springboot中的几种scope
    补习系列(2)-springboot mime类型处理
    hdfs directory item limit
    git-format-patch
    SPARK-18560
    hdfs OutOfMemoryError
    hdfs 路径不支持‘:’
    java.io.UTFDataFormatException: encoded string too long:
    scala-maven-plugin excludes
  • 原文地址:https://www.cnblogs.com/bigberg/p/10118555.html
Copyright © 2011-2022 走看看