一. 关于kafka

  Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。 对于像Hadoop的一样的日志数据和离线分析系统,但又要求实时处理的限制,这是一个可行的解决方案。Kafka的目的是通过Hadoop的并行加载机制来统一线上和离线的消息处理,也是为了通过集群机来提供实时的消费。

  关于Kafka的更多介绍请参考:http://www.infoq.com/cn/articles/apache-kafka/

二.准备工作

  1. 配置各主机IP。将各主机IP配置为静态IP(保证各主机可以正常通信,为避免过多的网络传输,建议在同一网段)

  2. 修改机器主机名。Kafka集群中的所有主机都需要修改。

  3. 配置各主机映射。修改hosts文件,加入各主机IP和主机名的映射。

  4. 开放相应端口。后面文档中配置的端口都需要开放(或者关闭防火墙),root权限。

  5. 保证Zookeeper集群服务能够正常运行。其实只要Zookeeper集群部署成功,上面的准备工作基本都能做好了。关于Zookeeper的部署请参考:http://www.cnblogs.com/wxisme/p/5178211.html

三.安装Kafka

  1. 下载kafka安装包,访问Kafka官网下载对应版本即可。这里使用的版本为2.9.2-0.8.1.1。

    2.  使用下面的命令解压安装包

tar -zxvf kafka_2.9.2-0.8.1.1.tgz

  3. 修改配置文件,简单配置只需要修改/config/server.properties文件即可。

vim config/server.properties

  需要修改的内容:

  broker.id(标示当前server在集群中的id,从0开始);port;host.name(当前的server host name);zookeeper.connect(连接的zookeeper集群);log.dirs(log的存储目录,需要提前创建)。

  示例:

  4. 把配置好的kafka上传到其他节点上

scp -r kafka node2:/usr/

  注意,上传之后不要忘了修改broker.id和host.nam等每个节点独有的配置。

四.启动并测试Kafka

  1.首先启动Zookeeper,之后使用一下命令启动Kafka,启动成功之后会有信息提示。

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

  2.对Kafka进行测试。分别创建topic,producer,consumer,最好是在不同的节点上创建。在producer的控制台上输入信息,观察consumer控制台是否能够接收到。

  创建topic:

./bin/kafka-topics.sh -zookeeper node1:2181,node2:2181,node3:2181 -topic test -replication-factor 2 -partitions 3 -create

  查看topic:

./bin/kafka-topics.sh -zookeeper node1:2181,node2:2181,node3:2181 -list

  创建producer:

./bin/kafka-console-producer.sh -broker-list node1:9092,node2:9092,node3:9092 -topic test

  创建consumer:

./bin/kafka-console-consumer.sh -zookeeper node1:2181,node2:2181,node3:2181 - from-begining -topic test

  测试:

  在producer的控制台输入信息,查看consumer的控制台能否接收到。

producer:

consumer

  经过以上的配置和测试,Kafka已经初步部署好了,接下来可以根据具体的需求配置和操作Kafka。关于Kafka的更多操作和更具体的使用方法请参考官网文档。https://cwiki.apache.org/confluence/display/KAFKA/Index

Kafka集群部署的更多相关文章

  1. kafka 集群部署 多机多broker模式

    kafka 集群部署 多机多broker模式 环境IP : 172.16.1.35   zookeeper   kafka 172.16.1.36   zookeeper   kafka 172.16 ...

  2. Zookeeper+Kafka集群部署(转)

    Zookeeper+Kafka集群部署 主机规划: 10.200.3.85  Kafka+ZooKeeper 10.200.3.86  Kafka+ZooKeeper 10.200.3.87  Kaf ...

  3. 3、Kafka集群部署

    Kafka集群部署 1)解压安装包 [ip101]$ tar -zxvf kafka_2.11-0.11.0.0.tgz -C /opt/app/ 2)修改解压后的文件名称 [ip101]$ mv k ...

  4. Zookeeper+Kafka集群部署

    Zookeeper+Kafka集群部署 主机规划: 10.200.3.85  Kafka+ZooKeeper 10.200.3.86  Kafka+ZooKeeper 10.200.3.87  Kaf ...

  5. Kafka集群部署 (守护进程启动)

    1.Kafka集群部署 1.1集群部署的基本流程 下载安装包.解压安装包.修改配置文件.分发安装包.启动集群 1.2集群部署的基础环境准备 安装前的准备工作(zk集群已经部署完毕)  关闭防火墙 c ...

  6. Kafka集群部署以及使用

    Kafka集群部署 部署步骤 hadoop102 hadoop103 hadoop104 zk zk zk kafka kafka kafka http://kafka.apache.org/down ...

  7. 分布式消息系统之Kafka集群部署

    一.kafka简介 kafka是基于发布/订阅模式的一个分布式消息队列系统,用java语言研发,是ASF旗下的一个开源项目:类似的消息队列服务还有rabbitmq.activemq.zeromq:ka ...

  8. zookeeper集群+kafka集群 部署

    zookeeper集群 +kafka 集群部署 1.Zookeeper 概述: Zookeeper 定义 zookeeper是一个开源的分布式的,为分布式框架提供协调服务的Apache项目 Zooke ...

  9. 4 kafka集群部署及kafka生产者java客户端编程 + kafka消费者java客户端编程

    本博文的主要内容有   kafka的单机模式部署 kafka的分布式模式部署 生产者java客户端编程 消费者java客户端编程 运行kafka ,需要依赖 zookeeper,你可以使用已有的 zo ...

随机推荐

  1. 南京都昌信息科技有限公司招聘C#程序员

    南京都昌信息科技有限公司招聘全职C#程序员 本公司核心产品为DCWriter电子病历文本编辑器,DCTimeLine时间轴软件等自研产品,现招聘全职C#程序员. 职位描述: 1.使用C#进行软件开发, ...

  2. 水星Mercury路由器端口映射设置图文方法

    在一些内网的环境里,你可能需要把自己的内网的WEB服务器或者其他应用服务器设置成通过互联网可以访问,但是在内网我们是通过路由器共享上网的,外网无法访问到我们的内部服务器.那么这就需要我们通过" ...

  3. Activity后台运行一段时间回来crash问题的分析与解决

    最近做项目的时候碰到一个棘手的问题,花了不少时间才找到原因并解决.特此记录这个被我踩过的坑,希望其他朋友遇到此问题不要调到这坑里去了. 问题描述: 1.背景:我的app中某个界面的Activity是继 ...

  4. JAVA B/S系统实现客户端屏幕截图,Java版的QQ截图

    简介:本方法首先需要抓到屏幕的整个图象,将图象显示在一个JFrame中,再将JFrame全屏显示,这样就模拟出了一个桌面,Java也就可以获得鼠标的作用区域从而实现桌面中的小范围截屏.Java实现QQ ...

  5. Android 图片的裁剪与相机调用

    有时候我们需要的图片并不适合我们想要的大小, 那么我们就可以用到系统自带的图片裁剪功能, 把规定范围的图像给剪出来. 贴上部分代码: //调用图库 Intent intent = new Intent ...

  6. 【BootStrap】初步教程

    <span style="font-family: Arial, Helvetica, sans-serif;">最近刚刚接触到BootStrap,在这里总结一下Boo ...

  7. 【转】开放api接口签名验证

    不要急,源代码分享在最底部,先问大家一个问题,你在写开放的API接口时是如何保证数据的安全性的?先来看看有哪些安全性问题在开放的api接口中,我们通过http Post或者Get方式请求服务器的时候, ...

  8. Android ImageView src与backgroud

    在XML中添加ImageView时,有两个可以设置图片的地方,一个是android:src,一个是android:background,这两个的区别: src是图片内容,显示在前面的,backgrou ...

  9. ECshop 怎样修改商品详细页的“浏览次数”

    怎样修改商品详细页的“浏览次数” 最好可以修改为成倍增加的,比如客户浏览了一次,显示的是20次. 修改 goods.php  文件的下面这行代码即可 $db->query('UPDATE ' . ...

  10. MPEG2/TS 包结构简述

    TS 包由以下3部分组成: 包头: 4字节, 同步,识别,检错和加密用 自适配域:可选 包数据:最大184字节(不存在自适配域) 4字节 184字节 包头 自适配域 包数据 4字节包头结构: 1字节 ...