zoukankan      html  css  js  c++  java
  • 使用kafka-eagle监控Kafka

    # 监控kafka集群,开启监控趋势图使用
    # 有一个问题,需要在kafka-server-start.sh文件中配置端口,有如下三种办法
    # 第一种:复制并修改kafka目录,比如kafka-1,kafka-2,kafka-3,然后再每个目录下修改kafka-server-start.sh文件
    # 第二种:在启动脚本start.sh中添加指定端口
    # 第三种:多复制几个kafka-server-start.sh文件,然后进行修改,最后在start.sh中修改一下
    
    # 以下三种方法任选其一即可
    
    # 第一种方式办法,相应行修改成如下形式,注意端口号不同
    # 使用的是不同目录下的不同kafka-server-start.sh文件
    # start.sh文件也需要做相应的修改
    # kafka-1/bin/kafka-server-start.sh
    if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
       # export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
        export KAFKA_HEAP_OPTS="-server -Xms2G -Xmx2G -XX:PermSize=128m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=5 -XX:InitiatingHeapOccupancyPercent=70"
        export JMX_PORT="9997"
    fi
    # kafka-2/bin/kafka-server-start.sh
    if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
       # export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
        export KAFKA_HEAP_OPTS="-server -Xms2G -Xmx2G -XX:PermSize=128m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=5 -XX:InitiatingHeapOccupancyPercent=70"
        export JMX_PORT="9998"
    fi
    # kafka-3/bin/kafka-server-start.sh
    if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
       # export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
        export KAFKA_HEAP_OPTS="-server -Xms2G -Xmx2G -XX:PermSize=128m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=5 -XX:InitiatingHeapOccupancyPercent=70"
        export JMX_PORT="9999"
    fi
    
    # start.sh
    	#!/bin/bash
    	bash kafka-1/bin/kafka-server-start.sh -daemon config/server-1.properties
    	bash kafka-2/bin/kafka-server-start.sh -daemon config/server-2.properties
    	bash kafka-3/bin/kafka-server-start.sh -daemon config/server-3.properties
    
    # 第二种方法
    # 使用的用一个目录下的同一个文件,只是在每个命令前指定端口号
    vim start.sh
    	#!/bin/bash
    
    	JMX_PORT=9997 bash bin/kafka-server-start.sh -daemon config/server-1.properties
    	JMX_PORT=9998 bash bin/kafka-server-start.sh -daemon config/server-2.properties
    	JMX_PORT=9999 bash bin/kafka-server-start.sh -daemon config/server-3.properties
    
    # 第三种方法
    # 使用的是同一个目录下的不同kafka-server-start文件
    # start.sh文件也需要做相应的修改
    cp kafka-server-start.sh kafka-server-start-1.sh
    cp kafka-server-start.sh kafka-server-start-2.sh
    cp kafka-server-start.sh kafka-server-start-3.sh
    
    vim kafka-server-start-1.sh
    	if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
    	   # export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
    	    export KAFKA_HEAP_OPTS="-server -Xms2G -Xmx2G -XX:PermSize=128m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=5 -XX:InitiatingHeapOccupancyPercent=70"
    	    export JMX_PORT="9997"
    	fi
    vim kafka-server-start-2.sh
    	if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
    	   # export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
    	    export KAFKA_HEAP_OPTS="-server -Xms2G -Xmx2G -XX:PermSize=128m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=5 -XX:InitiatingHeapOccupancyPercent=70"
    	    export JMX_PORT="9998"
    	fi
    vim kafka-server-start-3.sh
    	if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
    	   # export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
    	    export KAFKA_HEAP_OPTS="-server -Xms2G -Xmx2G -XX:PermSize=128m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=5 -XX:InitiatingHeapOccupancyPercent=70"
    	    export JMX_PORT="9999"
    	fi
    
    vim start.sh 
    	#!/bin/bash
    
    	bash bin/kafka-server-start-1.sh -daemon config/server-1.properties
    	bash bin/kafka-server-start-2.sh -daemon config/server-2.properties
    	bash bin/kafka-server-start-3.sh -daemon config/server-3.properties
    
    vim stop.sh
    	#!/bin/bash
    
    	bash bin/kafka-server-stop.sh
    
    
    cd /usr/local/src
    wget https://github.com/smartloli/kafka-eagle-bin/archive/v1.3.9.tar.gz
    
    # 多次解压缩后得到kafka-eagle-web-1.3.9目录,然后把该目录复制到/usr/local目录下
    
    cd /usr/local/kafka-eagle-web-1.3.9/conf
    vim system-config.properties
    	kafka.eagle.zk.cluster.alias=cluster1
    	cluster1.zk.list=localhost:2181,localhost:2182,localhost:2183
    	kafka.eagle.metrics.charts=true # 开启监控趋势图,需要开启Kafka系统的JMX端口,设置该端口在$KAFKA_HOME/bin/kafka-server-start.sh脚本中
    	kafka.eagle.sql.fix.error=true # 开启错误日志信息
    	# 其余保持默认,数据库使用sqlite,注意路径需要事先创建好或修改成当前目录
    	# 数据库也可以更换成MySQL
    	kafka.eagle.url=jdbc:sqlite:/usr/local/kafka-eagle-web-1.3.9/db/ke.db
    
    # 注意
    # kafka.eagle.zk.cluster.alias的值需要跟下面的这个cluster1.zk.list小数点第一个保持一致,比如都是cluster1,否则获取不到数据
    
    # 添加环境变量
    vim /etc/profile.d/kafka_eagle.sh
    	#!/bin/bash
    
    	export KE_HOME=/usr/local/kafka-eagle-web-1.3.9
    	export PATH=$PATH:$KE_HOME/bin
    source /etc/profile.d/kafka_eagle.sh
    
    
    # 命令相关
    bash bin/ke.sh start|stop|status|stats|restart
    
    # 启动
    bash bin/ke.sh start
    	*******************************************************************
    	* Kafka Eagle system monitor port successful... 
    	*******************************************************************
    	[2019-09-20 12:10:32] INFO: Status Code[0]
    	[2019-09-20 12:10:32] INFO: [Job done!]
    	Welcome to
    	    __ __    ___     ____    __ __    ___            ______    ___    ______    __     ______
    	   / //_/   /   |   / __/   / //_/   /   |          / ____/   /   |  / ____/   / /    / ____/
    	  / ,<     / /| |  / /_    / ,<     / /| |         / __/     / /| | / / __    / /    / __/   
    	 / /| |   / ___ | / __/   / /| |   / ___ |        / /___    / ___ |/ /_/ /   / /___ / /___   
    	/_/ |_|  /_/  |_|/_/     /_/ |_|  /_/  |_|       /_____/   /_/  |_|\____/   /_____//_____/   
    	                                                                                             
    
    	Version 1.3.9
    	*******************************************************************
    	* Kafka Eagle Service has started success.
    	* Welcome, Now you can visit 'http://127.0.0.1:8048/ke'
    	* Account:admin ,Password:123456
    	*******************************************************************
    	* <Usage> ke.sh [start|status|stop|restart|stats] </Usage>
    	* <Usage> https://www.kafka-eagle.org/ </Usage>
    	*******************************************************************
    
    # 浏览器访问,防火墙放行该端口,后期改用Nginx代理
    地址:192.168.0.187:8048/ke
    账号:admin,密码:123456
    
    
    # 在kafka eagle平台使用KSQL查询数据
    
    # 左侧导航
    
    # 1.先在Topic-List中查看到Topic Name和Partition Indexes的值
    # ID	Topic Name	Partition Indexes	Partition Numbers	Created	Modify	Operate
    # 1	canal_manager	[0]	1	2019-09-20 17:27:15	2019-09-20 17:27:15	
    
    # 2. 在Topic-KSQL中输入查询语句
    # select * from "canal_manager" where "partition" in (0) limit 1
    # 下方会显示查询所用时间和查询后的结果
    
    # 在如下目录的文件中可以查看具体的异常信息,一般都会提示具体的错误
    # tail -n 30 kafka-eagle-web-1.3.9/logs/ke_console.out
    
    # 配置文件详细说明
    ######################################
    # 配置多个Kafka集群所对应的Zookeeper
    ######################################
    kafka.eagle.zk.cluster.alias=cluster1,cluster2
    cluster1.zk.list=dn1:2181,dn2:2181,dn3:2181
    cluster2.zk.list=tdn1:2181,tdn2:2181,tdn3:2181
    
    ######################################
    # 设置Zookeeper线程数
    ######################################
    kafka.zk.limit.size=25
    
    ######################################
    # 设置Kafka Eagle浏览器访问端口
    ######################################
    kafka.eagle.webui.port=8048
    
    ######################################
    # 如果你的offsets存储在Kafka中,这里就配置
    # 属性值为kafka,如果是在Zookeeper中,可以
    # 注释该属性。一般情况下,Offsets的也和你消
    # 费者API有关系,如果你使用的Kafka版本为0.10.x
    # 以后的版本,但是,你的消费API使用的是0.8.2.x
    # 时的API,此时消费者依然是在Zookeeper中
    ######################################
    cluster1.kafka.eagle.offset.storage=kafka
    ######################################
    # 如果你的集群一个是新版本(0.10.x以上),
    # 一个是老版本(0.8或0.9),可以这样设置,
    # 如果都是新版本,那么可以将值都设置成kafka
    ######################################
    cluster2.kafka.eagle.offset.storage=zookeeper
    
    ######################################
    # 是否启动监控图表,默认是不启动的
    ######################################
    kafka.eagle.metrics.charts=false
    
    ######################################
    # 在使用Kafka SQL查询主题时,如果遇到错误,
    # 可以尝试开启这个属性,默认情况下,不开启
    ######################################
    kafka.eagle.sql.fix.error=false
    
    ######################################
    # 邮件服务器设置,用来告警
    ######################################
    kafka.eagle.mail.enable=false
    kafka.eagle.mail.sa=
    kafka.eagle.mail.username=
    kafka.eagle.mail.password=
    kafka.eagle.mail.server.host=
    kafka.eagle.mail.server.port=
    
    ######################################
    # 设置告警用户,多个用户以英文逗号分隔
    ######################################
    kafka.eagle.alert.users=smartloli.org@gmail.com
    
    
    ######################################
    # 超级管理员删除主题的Token
    ######################################
    kafka.eagle.topic.token=keadmin
    
    ######################################
    # 如果启动Kafka SASL协议,开启该属性
    ######################################
    kafka.eagle.sasl.enable=false
    kafka.eagle.sasl.protocol=SASL_PLAINTEXT
    kafka.eagle.sasl.mechanism=PLAIN
    
    ######################################
    # Kafka Eagle默认存储在Sqlite中,如果要使用
    # MySQL可以替换驱动、用户名、密码、连接地址
    ######################################
    #kafka.eagle.driver=com.mysql.jdbc.Driver
    #kafka.eagle.url=jdbc:mysql://127.0.0.1:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
    #kafka.eagle.username=root
    #kafka.eagle.password=123456
    
    kafka.eagle.driver=org.sqlite.JDBC
    kafka.eagle.url=jdbc:sqlite:/Users/dengjie/workspace/kafka-egale/db/ke.db
    kafka.eagle.username=root
    kafka.eagle.password=root
    
  • 相关阅读:
    Zookeeper
    RPC
    RabbitMQ学习总结
    ActiveMQ学习总结
    mybatis自动映射和手动映射
    oracle instantclient_12_2安装
    EFK(Elasticsearch+Filebeat+Kibana)收集容器日志
    prometheus-operator监控Kubernetes
    编译安装 keepalived-2.0.16.tar.gz
    Kubernetes pod平滑迁移
  • 原文地址:https://www.cnblogs.com/sanduzxcvbnm/p/11573891.html
Copyright © 2011-2022 走看看