Kafka和Kafka-eagle安装踩坑

最近项目开发中需要用到Kafka,并需要用Kafka-eagle作为monitior,安装过程中遇到一些问题,特此记录。

1.Kafka安装

a. 安装JDK,参考博文如下:

文章1:很简洁
但执行source /etc/profile这条命令后发现,只在当前的终端里Java的环境变量设置是有效的;一旦换个路径,在新打开的终端里输入java检验Java的环境变量设置都会发现还未生效。需要重启虚拟机才能在所有终端里使得配置的Java的环境变量设置生效。这一点详细内容可以参考链接。
文章2:详细一点,可以作为补充参考。

b. 安装Kafka,参考博文如下:

文章1:主要参考此文
(1) 其中修改kafka-server的配置文件时可以参考链接中标题为三的内容,对于各个配置项的描述和作用介绍的很详细。

(2) 注意Kafka启动顺序,先启动ZooKeeper,再启动Kafka服务。

(3) 参考博文中第3点创建topic时如果创建命令执行两遍会报错,提示test该topic已存在,可以参考链接修改server.properties中的delete.topic.enable=true(默认为false),然后把创建topic命令中的create改为delete、删除replication和partitions属性设置之后执行该命令即可。

(4) 修改配置文件时有时修改后提示该文件是只读文件,无法修改,此时需要:q!退出(不能:wq退出)后切换为root用户,可参考此链接

2.Kafka eagle安装

a. 安装Kafka eagle,参考博文如下:

文章1:主要参考此文
(1) 前面的安装都挺顺利的,在配置的文件里把连接的数据库db文件路径修改正确后(不要连接自己安装的MySQL),Kafka eagle也能正常起起来,如下图所示:


但是Web界面打开却是这样的错误提示信息: HTTP Status 500 - Servlet.init() for servlet SpringMvc threw exception。
在寻找解决方案时在这篇博客的评论里,发现有人和我是一样的问题,进而到链接里在用户#lbx6z的回答里最终找到了该问题的解决方案。
(a) 我使用的Kafka eagle版本最开始是1.2.2,然后使用tree命令找到pom.xml(先起一次Kafka eagle(哪怕失败)后才会出现该文件,不起则没有),路径为

kafka-eagle-bin-1.2.2/kafka-eagle-web-1.2.2/kms/webapps/ke/META-INF/maven/org.smartloli.kafka.eagle/kafka-eagle-web/pom.xml

打开后发现我的jackson-mapper和jackson-core的版本是1点几,比解决方案中的2.4.5版本还要低。别人的方案是从2.9.6降到2.4.5,我这还升当时就感觉不太行,后来改成2.4.5版本后发Web-UI界面还是HTTP Status 500。
(b)所以我就把Kafa eagle版本换成解决方案中的1.3.8,进行相应的环境变量和配置文修改后一次就有界面了,也没从2.9.6降到2.4.5,很神奇的就打开了((ˉ▽ˉ;)...)。


(2) 最开始关闭HTTP Status 500的界面后,再用./ke.sh start去起Kafka eagle时会发现提示error,端口已占用,所以需要在终端里先使用 ps uax |grep tomcat 命令进行查找再kill掉tomact进程,可参考链接

(3) 额外补充,Windows和Linux设置好共享文件目录后,linux进入该目录命令如下:

cd /mnt/hgfs/shareFile/

3.Kafka集群安装

文章1:主要参考此文

你可能感兴趣的:(Kafka和Kafka-eagle安装踩坑)