kafka-eagle

windows下部署kafka-eagle

	按照网上的文章以及官网文档,进行部署。发现服务启动报错,无法登陆。以下是我在部署过程中遇到的问题,以及解决方法。仅供参考。

环境准备

	kafka-eagle的使用需要安装jdk、zookeeper、kafka
	具体内容可参考: [link](https://blog.csdn.net/m0_37738114/article/details/80405068).

部署

下载

	github下载地址  [link](https://github.com/smartloli/kafka-eagle-bin/tree/v2.0.8)

github下载地址

配置

	1.解压到指定位置,进入文件夹,发现还是一个压缩包。继续解压。

在这里插入图片描述

继续解压

	2.配置环境变量
			KE_HOME:KE_HOME的文件路径为解压文件夹的bin目录的上一级。
			path: path添加 ;%KE_HOME%\bin

KE_HOME

	3.配置eagle的配置文件  system-config.properties
		这里只配置了一个cluster,所以其他的cluster2配置可以删除

		配置zookeeper的地址

		配置mysql的信息: 注释掉sqllite,放开mysql并配置用户名密码等。

启动

	已经全部配置完成。现在尝试启动服务。

在这里插入图片描述

	进入bin目录,打开dos窗口 执行ke.bat脚本

在这里插入图片描述
发现执行脚本报错.
查看启动脚本ke.bat,通过日志发现是在执行jdk的相关程序时路径带空格造成的
在这里插入图片描述
修改启动脚本。
在这里插入图片描述
重新启动脚本,发现war包解压完成后脚本继续报错,找不到类
在这里插入图片描述
下载源码,查找TomcatServerListen.java对应的jar包
在这里插入图片描述
结合启动脚本发现,在执行java命令时没有将org.smartloli.kafka.eagle.plugin.server.TomcatServerListen对应的包扫描到
在这里插入图片描述
修改扫描jar包的规则为

for %%i in (%KE_HOME%\kms\webapps\ke\WEB-INF\lib\dom*.jar,%KE_HOME%\kms\webapps\ke\WEB-INF\lib\log4j*.jar,%KE_HOME%\kms\webapps\ke\WEB-INF\lib\slf4j*.jar,%KE_HOME%\kms\webapps\ke\WEB-INF\lib\kafka-eagle*.jar)
(%KE_HOME%\kms\webapps\ke\WEB-INF\lib\dom*.jar,%KE_HOME%\kms\webapps\ke\WEB-INF\lib\log4j*.jar,%KE_HOME%\kms\webapps\ke\WEB-INF\lib\slf4j*.jar,%KE_HOME%\kms\webapps\ke\WEB-INF\lib\kafka-eagle*.jar,%KE_HOME%\kms\webapps\ke\WEB-INF\lib\efak-*.jar)

重新启动脚本:
脚本启动正常
在这里插入图片描述

这时脚本重新启动了一个tomcat的进程,打开tomcat进程,发现mysql连接报错

在这里插入图片描述

	定位得知mysql url地址配置有问题,修改url地址
efak.url=jdbc:mysql://127.0.0.1:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
efak.url=jdbc:mysql://127.0.0.1:3306/ke?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
关闭tomcat进程窗口,重启脚本.tomcat进程日志不在报错

在这里插入图片描述

登陆

http://localhost:8048/ke
默认账户  admin  123456

在这里插入图片描述

kafka验证

新启动2个kafka进程,查看dashboard的brokers统计数是否改变
在这里插入图片描述

主题验证

创建新的主题,进行验证
在这里插入图片描述

消费者组验证

在这里插入图片描述
至此:kafka-eagle已启动成功
以下附上文修改过的文件:
system-config.properties

######################################
# multi zookeeper & kafka cluster list
# Settings prefixed with 'kafka.eagle.' will be deprecated, use 'efak.' instead
######################################
efak.zk.cluster.alias=cluster1
cluster1.zk.list=localhost:2181
######################################
# zookeeper enable acl
######################################
cluster1.zk.acl.enable=false
cluster1.zk.acl.schema=digest
cluster1.zk.acl.username=test
cluster1.zk.acl.password=test123
######################################
# broker size online list
######################################
cluster1.efak.broker.size=20
######################################
# zk client thread limit
######################################
kafka.zk.limit.size=32
######################################
# EFAK webui port
######################################
efak.webui.port=8048
######################################
# kafka jmx acl and ssl authenticate
######################################
cluster1.efak.jmx.acl=false
cluster1.efak.jmx.user=keadmin
cluster1.efak.jmx.password=keadmin123
cluster1.efak.jmx.ssl=false
cluster1.efak.jmx.truststore.location=/data/ssl/certificates/kafka.truststore
cluster1.efak.jmx.truststore.password=ke123456
######################################
# kafka offset storage
######################################
cluster1.efak.offset.storage=kafka
######################################
# kafka jmx uri
######################################
cluster1.efak.jmx.uri=service:jmx:rmi:///jndi/rmi://%s/jmxrmi
######################################
# kafka metrics, 15 days by default
######################################
efak.metrics.charts=true
efak.metrics.retain=15
######################################
# kafka sql topic records max
######################################
efak.sql.topic.records.max=5000
efak.sql.topic.preview.records.max=10
######################################
# delete kafka topic token
######################################
efak.topic.token=keadmin
######################################
# kafka sasl authenticate
######################################
cluster1.efak.sasl.enable=false
cluster1.efak.sasl.protocol=SASL_PLAINTEXT
cluster1.efak.sasl.mechanism=SCRAM-SHA-256
cluster1.efak.sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required username="kafka" password="kafka-eagle";
cluster1.efak.sasl.client.id=
cluster1.efak.blacklist.topics=
cluster1.efak.sasl.cgroup.enable=false
cluster1.efak.sasl.cgroup.topics=
######################################
# kafka sqlite jdbc driver address
######################################
#efak.driver=org.sqlite.JDBC
#efak.url=jdbc:sqlite:/hadoop/kafka-eagle/db/ke.db
#efak.username=root
#efak.password=www.kafka-eagle.org
######################################
# kafka mysql jdbc driver address
######################################
efak.driver=com.mysql.cj.jdbc.Driver
efak.url=jdbc:mysql://127.0.0.1:3306/ke?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
efak.username=root
efak.password=123456

ke.bat

@echo off

rem ---------------------------------------------------------------------------
rem Start script for the KE Server
rem ---------------------------------------------------------------------------

echo KE Service check ...

setlocal

if exist "%JAVA_HOME%" goto okKafkaEagke
echo Error: The JAVA_HOME environment variable is not defined correctly.
echo Error: This environment variable is needed to run this program.
goto end

:okKafkaEagke
if exist "%KE_HOME%" goto okHome
echo Error: The KE_HOME environment variable is not defined correctly.
echo Error: This environment variable is needed to run this program.
goto end

:okHome

if exist %KE_HOME%\kms\webapps\ke (
    rem Delete ke dir menu.
    rd /s /q %KE_HOME%\kms\webapps\ke
)

if exist %KE_HOME%\kms\work (
    rem Delete tomcat work dir menu.
    rd /s /q %KE_HOME%\kms\work
)

md %KE_HOME%\kms\webapps\ke
cd %KE_HOME%\kms\webapps\ke
rem echo Current Path :: %cd%
jar -xvf %KE_HOME%\kms\webapps\ke.war

ping /n 2 127.1 >nul

cd %KE_HOME%
SET CLSNAME=org.smartloli.kafka.eagle.plugin.server.TomcatServerListen

setlocal enabledelayedexpansion
for %%i in (%KE_HOME%\kms\webapps\ke\WEB-INF\lib\dom*.jar,%KE_HOME%\kms\webapps\ke\WEB-INF\lib\log4j*.jar,%KE_HOME%\kms\webapps\ke\WEB-INF\lib\slf4j*.jar,%KE_HOME%\kms\webapps\ke\WEB-INF\lib\kafka-eagle*.jar,%KE_HOME%\kms\webapps\ke\WEB-INF\lib\efak-*.jar) do (
  set CLSPATH=!CLSPATH!;%%i
)
rem echo %CLSPATH%
java -classpath %CLSPATH% %CLSNAME% >> %KE_HOME%\logs\ke.out

echo Kafka Eagle system monitor port successful...

ping /n 3 127.1 >nul

if exist %KE_HOME%\kms\webapps\ke\WEB-INF\classes\*.properties (
  rd /s /q %KE_HOME%\kms\webapps\ke\WEB-INF\classes\*.properties
)
copy %KE_HOME%\conf\*.properties %KE_HOME%\kms\webapps\ke\WEB-INF\classes\

ping /n 3 127.1 >nul
set CATALINA_HOME=%KE_HOME%\kms
call  %KE_HOME%\kms\bin\startup.bat

:end

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值