远程kafka通信实例,各种bug解决----虚拟机+本地电脑

   日期:2024-12-28    作者:ks2mu 移动:http://3jjewl.riyuangf.com/mobile/quote/78217.html

为了实现远程kafka通信,我可谓是呕心沥血。期间各种bug各种调,太煎熬了 (T.T)

介绍:

我用一台虚拟机作为远程消息的发送方,用本地电脑主机作为消息的接收方

虚拟机:安装java,kafka,zookeeper

主机:eclipse,注意我没有说在主机上也要安装kafka的

 

1、虚拟机部署

  1)下载kafka_2.11-2.2.0 我用的最新的(当前)

  2)解压到 /usr/local/ ,注意切换都root,不然后面编辑不了文件

  3)配置文件 kafka/config/server.properties 只用修改下面三个

 

    稍微解释下:上面的ip都是一个,都是虚拟机ip,修改后可以在本机接收消息也可以在远程(本地电脑或者其他电脑接收)

          不知道虚拟机ip?  在命令行下 敲 ifconfig就可以找到了

    

 

 2、本地eclipse

    1)新建maven工程

     pom.xml    注意里面的kafka版本最好和远程对应(其他版本有可能发生错误,收不到消息)

 

 建立  MainTopology.java

建立  PrintBolt.java

  3、运行

     切换到kafka安装目录

    1)启动zookeeper

      bin/zookeeper-server-start.sh -daemon config/zookeeper.properties

    2)启动kafka服务

      bin/kafka-server-start.sh -daemon config/server.properties 

    3)创建生产者

      bin/kafka-console-producer.sh --broker-list 192.168.83.133:9092 --topic test561

    4)创建消费者

      bin/kafka-console-consumer.sh --bootstrap-server 192.168.83.133:9092 --topic test561 --from-beginning

    5)启动本地eclipse项目

    6)在3)中的窗口发送字符串

 

 

    7)4)中可以收到消息,同时本地也可以收到消息

  4、问题罗列

    1)再次使用发现启动不了------杀进程

    2)收不到消息是不是防火墙的原因

     3)自己安装的zookeeper和kafka自带的不能混用

      我自己安装了一个然后还设置了自启动,然后每次运行kafka自带的zookeeper时总是启动不了消费者。。。。。。

      之后我把它删了只用kafka自带的就可以了。

    4)jdk版本不适合

      java版本我原先用的openjdk1.7,后来重新下载了一个jdk1.8安装的,

      然后下载时要登录,就找了一个(谢谢共享) 

    5)还有。。。到以后再总结吧

 

 

 

 

参考:

https://blog.csdn.net/luozhonghua2014/article/details/80369469?utm_source=blogxgwz5

https://blog.csdn.net/wxgxgp/article/details/85701844

 

防火墙:

https://blog.csdn.net/feeltouch/article/details/21830541

https://kiddwyl.iteye.com/blog/67708


特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关最新动态
推荐最新动态
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号