码迷,mamicode.com
首页 > 其他好文 > 详细

kafka部署

时间:2016-08-19 22:16:20      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:

Kafka的部署

1.  kafka简介

Kafka是Linkedin于2010年12月份开源的消息系统,它主要用于处理活跃的流式数据。活跃的流式数据在web网站应用中非常常见,这些数据包括网站的pv、用户访问了什么内容,搜索了什么内容等。 这些数据通常以日志的形式记录下来,然后每隔一段时间进行一次统计处理。

传统的日志分析系统提供了一种离线处理日志信息的可扩展方案,但若要进行实时处理,通常会有较大延迟。而现有的消(队列)系统能够很好的处理实时或者近似实时的应用,但未处理的数据通常不会写到磁盘上,这对于Hadoop之类(一小时或者一天只处理一部分数据)的离线应用而言,可能存在问题。Kafka正是为了解决以上问题而设计的,它能够很好地离线和在线应用。

设计目标:

(1)数据在磁盘上存取代价为O(1)。一般数据在磁盘上是使用BTree存储的,存取代价为O(lgn)。

(2)高吞吐率。即使在普通的节点上每秒钟也能处理成百上千的message。

(3)显式分布式,即所有的producer、broker和consumer都会有多个,均为分布式的。

(4)支持数据并行加载到Hadoop中。

  Kafka的部署结构:

技术分享

 

 

2.  kafka的部署

首先新建一个目录kafka:

  技术分享

将下载好的软件包kafka_2.9.2-0.8.1.1.tgz放到kafka目录下进行解压:

 技术分享

修改配置文件config/server.properties:

broker.id=0

host.name=10.100.5.9(ip修改为自己主机ip)

zookeeper.connect=10.100.5.9:2181可逗号分隔配置多个(ip修改为自己主机ip)

 技术分享

技术分享

修改完成后保存并退出。

为了确保之后的执行不出现权限问题进入sbin目录下修改该目录下所有文件的权限:

 技术分享

接下来进入config目录下修改配置文件vim log4j.properties:

 技术分享

图中2处为你所需存放日志文件的路径。

接下来就可以进入sbin下启动kafka了:

 技术分享

启动完kafka之后我们就可以来创建一个对话:

bin/kafka-topics.sh --create --zookeeper 10.173.48.88:2181 --replication-factor 1 --partitions 1 --topic topic-test-name  (IP不能是localhost)

 技术分享

启动consumer:

bin/kafka-console-consumer.sh --zookeeper hadoop-nn:2181 --topic topic-003

 技术分享

   启动producer:

 技术分享

此时在producer端输入信息,在consumer中就可以看到:

 技术分享

技术分享

 

 

kafka部署

标签:

原文地址:http://www.cnblogs.com/drake0301/p/5788979.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!