Zabbix实战-简易教程--中间件kafka监控

作者:@skyflask
转载本文请注明出处:https://www.cnblogs.com/skyflask/p/11738864.html


目录

一、环境准备
1、安装kafka
2、安装zabbix-java-gataway
三、配置kafka远程管理口
四、导入模板
五、配置主机
六、查看最新数据
七、脚本URL

一、环境准备

1、安装kafka

Step 1: 下载代码

你可以登录Apache kafka 官方下载。
http://kafka.apache.org/downloads.html
备注:2.11-1.1.0版本才与JDK1.7兼容,否则更高版本需要JDK1.8

Step 2: 启动服务

运行kafka需要使用Zookeeper,所以你需要先启动Zookeeper,如果你没有Zookeeper,你可以使用kafka自带打包和配置好的Zookeeper(PS:在kafka包里)。

1
2
3
4
5
//这是前台启动,启动以后,当前就无法进行其他操作(不推荐)
./zookeeper-server-start.sh ../config/zookeeper.properties
 
//后台启动(推荐)
./zookeeper-server-start.sh ../config/zookeeper.properties 1>/dev/null 2>&1 &

  

启动kafka

1
2
3
4
5
config/server1.properties:
    broker.id=0
    listeners=PLAINTEXT://192.168.10.100:9092
    log.dirs=kafka-logs
    zookeeper.connect=localhost:2181

 

1
2
//后台启动kafka
./kafka-server-start.sh ../config/server.properties 1>/dev/null 2>&1 &

  

写成服务启动方式,启动脚本:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#!/bin/sh
#
# kafka-manager This shell script takes care of starting and stopping
#               the kafka
#
# chkconfig: - 64 36
# description:  kafka
# processname: kafka-manager
# config: /opt/kafka_2.10-0.8.2.1/conf/application.conf
### BEGIN INIT INFO
# Provides: kafka
# Required-Start: $local_fs $remote_fs $network $named $syslog $time
# Required-Stop: $local_fs $remote_fs $network $named $syslog $time
# Short-Description: start and stop kafka-manager
# Description: kafka
### END INIT INFO
 
# Source function library.
. /etc/rc.d/init.d/functions
 
# Source networking configuration.
. /etc/sysconfig/network
 
 
 
dirkafka="/usr/local/kafka/"
pidckeck(){
pid=`ps ax | grep kafkaServer |  grep -v grep | grep java| awk '{print $1}'`
}
start(){
    pidckeck
    if [ -z "$pid" ]; then
        echo "Starting kafka"
        sh $dirkafka/bin/kafka-server-start.sh $dirkafka/config/server.properties > /dev/null 2>&1 &
        sleep 3
        pidckeck
    if [ -z "$pid" ]; then
    echo "Fail Start kafka"
    echo "Read logs for detail"
    else
    echo "kafka has started"
    fi
 else
    echo "kafka is already running"
    echo "PID $pid"
 fi
}
 
stop(){
pidckeck
if [ -z "$pid" ]; then
    echo "kafka isn't running"
else
    sh $dirkafka/bin/kafka-server-stop.sh
    sleep 3
    pidckeck
    if [ -z "$pid" ]; then
    echo "kafka-manager has stopped"
    else
    echo "[WARNING] kafka-manager hasn't stoped"
    fi
fi
}
 
restart(){
    stop
    start
}
 
status(){
pidckeck
if [ -z "$pid" ]; then
   echo "kafka isn't running"
   else
   echo "kafka is already running"
   echo "PID $pid"
   fi
 
}
 
case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  status)
    status
    ;;
  restart)
    restart
    ;;
  *)
    echo $"Usage: $0 {start|stop|status|restart}"
    exit 2
esac
 
exit $?

  

 

 

 

 

 

2、安装zabbix-java-gataway

step1 安装yum源

1
2
rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm
rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

  

step2 安装zabbix-java-gataway

1
yum install -y zabbix-java-gataway

  

step3 配置zabbix-java-gataway

cat /etc/zabbix/zabbix_java_gateway.conf |grep -v "#"|grep -v ^$

1
2
3
4
LISTEN_PORT=10052
PID_FILE="/var/run/zabbix/zabbix_java.pid"
START_POLLERS=10
TIMEOUT=30

  

step4 启动zabbix-java-gateway

1
/etc/init.d/zabbix-java-gateway start

  

三、配置kafka远程管理口

From

1
2
3
4
# JMX settings
if [ -z "$KAFKA_JMX_OPTS" ]; then
KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -   Dcom.sun.management.jmxremote.ssl=false "
fi

  

TO

1
2
3
4
# JMX settings
if [ -z "$KAFKA_JMX_OPTS" ]; then
KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=21060-    Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false "
fi

  

重启kafka服务

 

 

配置kafka脚本文件

1
2
cp jmx_discovery /etc/zabbix/externalscripts
cp JMXDiscovery-0.0.1.jar /etc/zabbix/externalscripts

  

四、导入模板

https://github.com/loveqx/zabbix-doc/tree/master/zabbix-scripts/zabbix-template-kafka

 

五、配置主机

 

 

稍等片刻,查看监控结果

 

 

六、查看最新数据

 

 

 

七、脚本URL

https://github.com/loveqx/zabbix-doc/tree/master/zabbix-scripts/zabbix-template-kafka

posted @   skyflask  阅读(2302)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
点击右上角即可分享
微信分享提示