windows下部署kafka-eagle
环境准备部署
kafka验证主题验证消费者组验证
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)配置
1.解压到指定位置,进入文件夹,发现还是一个压缩包。继续解压。
2.配置环境变量 KE_HOME:KE_HOME的文件路径为解压文件夹的bin目录的上一级。 path: path添加 ;%KE_HOME%bin
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%kmswebappskeWEB-INFlibdom*.jar,%KE_HOME%kmswebappskeWEB-INFliblog4j*.jar,%KE_HOME%kmswebappskeWEB-INFlibslf4j*.jar,%KE_HOME%kmswebappskeWEB-INFlibkafka-eagle*.jar)
(%KE_HOME%kmswebappskeWEB-INFlibdom*.jar,%KE_HOME%kmswebappskeWEB-INFliblog4j*.jar,%KE_HOME%kmswebappskeWEB-INFlibslf4j*.jar,%KE_HOME%kmswebappskeWEB-INFlibkafka-eagle*.jar,%KE_HOME%kmswebappskeWEB-INFlibefak-*.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 123456kafka验证
新启动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%kmswebappske ( rem Delete ke dir menu. rd /s /q %KE_HOME%kmswebappske ) if exist %KE_HOME%kmswork ( rem Delete tomcat work dir menu. rd /s /q %KE_HOME%kmswork ) md %KE_HOME%kmswebappske cd %KE_HOME%kmswebappske rem echo Current Path :: %cd% jar -xvf %KE_HOME%kmswebappske.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%kmswebappskeWEB-INFlibdom*.jar,%KE_HOME%kmswebappskeWEB-INFliblog4j*.jar,%KE_HOME%kmswebappskeWEB-INFlibslf4j*.jar,%KE_HOME%kmswebappskeWEB-INFlibkafka-eagle*.jar,%KE_HOME%kmswebappskeWEB-INFlibefak-*.jar) do ( set CLSPATH=!CLSPATH!;%%i ) rem echo %CLSPATH% java -classpath %CLSPATH% %CLSNAME% >> %KE_HOME%logske.out echo Kafka Eagle system monitor port successful... ping /n 3 127.1 >nul if exist %KE_HOME%kmswebappskeWEB-INFclasses*.properties ( rd /s /q %KE_HOME%kmswebappskeWEB-INFclasses*.properties ) copy %KE_HOME%conf*.properties %KE_HOME%kmswebappskeWEB-INFclasses ping /n 3 127.1 >nul set CATALINA_HOME=%KE_HOME%kms call %KE_HOME%kmsbinstartup.bat :end
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)