设为首页 收藏本站
查看: 986|回复: 0

[经验分享] kafka安装和环境搭建

[复制链接]

尚未签到

发表于 2017-5-23 16:58:31 | 显示全部楼层 |阅读模式
kafka具体的介绍这里不再进行叙述,已经有很多的好的文章进行叙述了,这里只是记录下自己搭建kafka环境的相关过程。
操作系统:centos6.5 64位
三台服务器(虚拟机)192.168.100.90,192.168.100.91,192.168.100.92
三台服务器组成kafka集群,90和91服务器组成zookeeper集群
 
一、安装zookeeper集群
zookeeper在kafka中起到了关键的作用,记录consumer、broker的注册信息,consumer的消费偏移量等等。当然,zookeeper不一定非得集群,部署一台也可以,这里只为涉及到相关的知识进行进群部署。
zookeeper部署很简单,只需要解压并且配置zoo.cfg即可。
 
1、解压zookeeper-3.4.6.tar.gz,这里解压到/usr/local目录
 
2、进入安装目录中的conf文件夹,复制zoo_sample.cfg文件并改名为zoo.cfg

cd /usr/local/zookeeper-3.4.6/conf
cp zoo_sample.cfg zoo.cfg
 
3、编辑zoo.cfg

dataDir=/data/zookeeper #zookeeper数据目录
#有几个服务器集群就配置以下几个server,格式如:server.X=IP:port1:port2, X为一个数字,用于标志服务器,IP即为本服务器ip,port1用于集群中follower与leader进行通信端口,port2用于leader选举的端口
server.90=192.168.100.90:2888:3888
server.91=192.168.100.90:2888:3888
  4、在上面配置的dataDir目录下新建myid文件,内容为上面配置的本机对应的server后面的那个数字,即server.X中X的值,这里为90。这里主要用来标志zookeeper自己是集群中的那一台。

echo 90 > myid
  5、启动zookeeper

bin/zkServer.sh start   #启动zookeeper
bin/zkServer.sh status #查看zookeeper启动状态
 
  注:每台服务器的zoo.cfg可以完全一样,增加或减少服务器增减配置文件中server.X=IP:port1:port2配置即可,请注意不同服务器中myid值不同,为本服务器对应的server.X中X值
  二、安装kafka
  
  kafka的安装也很简单,解压完毕配置下即可
  1、下载 kafka_2.10-0.8.2.1.tgz,并解压,这里解压目录依然为/usr/local
  2、进入kafka安装目录的config文件夹,编辑里面的server.properties文件,下面列出几个比较关键的配置

broker.id=90  #即为kafka服务器起一个id,集群中这个值应保持不同,可以用ip最后一段
host.name=192.168.100.90  #绑定该服务器对应的ip,程序访问该broker时就填写该ip
zookeeper.connect=192.168.100.90:2181 #zookeeper地址
  #注:以上仅为关键的几个配置,其余配置如接收消息字节限制,指定消息的保存时间,是否自动创建topic等等,这里不再叙述
  3、启动

nohup bin/kafka-server-start.sh config/server.properties >kafka.log 2>&1 &
  或

bin/kafka-server-start.sh -daemon config/server.properties  &
  #注:启动时请使用nohup或者-daemon方式启动,不然你关闭了你的终端,kafka服务也随着停了。其余kafka服务器的配置参考上面配置,请注意broker.id的配置,每台服务器应不同
  4、常用命令
       1、bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 2 --topic test #创建topic,replication-factor为复制集数,partitions 为该topic的partition数目,topic为创建topic名字
       2、bin/kafka-topics.sh --list --zookeeper localhost:2181 #查看topic列表
       3、bin/kafka-topics.sh -topic test -delete -zookeeper 192.168.100.90:2181 #删除topic,这是最新版本的kafka删除方式,最新版本删除须在server.properties中配置 delete.topic.enable=true
       4、bin/kafka-run-class.sh kafka.admin.DeleteTopicCommand --topic test --zookeeper #老版本删除topic方式,具体版本的分界线忘记了
       5、bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test #在控制台启动一个生产者,启动后输入发送内容即可
       6、bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning #在控制台启动一个消费者,配合上面生产者使用,上面发送消息,这里控制台即打印出发送的消息,这里的消费不会影响你程序中对数据的消费,可以大胆使用
  #注:以上命令在任意一台kafka服务器执行即可,请保证命令里zookeeper与broker地址填写正确
  以上就是kafka的安装过程,如有说明不到位或者需要补充的地方请指出,谢谢
   参考以及文章推荐:http://blog.csdn.net/lizhitao/article/details/39499283
 
 

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-379864-1-1.html 上篇帖子: Kafka--学习-02-测试 下篇帖子: kafka接口协议
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表