官网:

参考文档:

Kafka入门经典教程

Kafka工作原理详解

一、安装zookeeper

1. 下载zookeeper-3.4.5-cdh5.3.6.tar.gz

下载地址为: http://archive.cloudera.com/cdh5/cdh/5/

2. 解压到/opt/modules/cdh目录

tar -zxvf zookeeper-3.4.-cdh5.3.6.tar.gz -C /opt/modules/

3. 修改配置

cd /opt/modules/cdh/zookeeper-3.4.-cdh5.3.6

mkdir dataDir

cd conf

mv zoo_sample.cfg zoo.cfg

vi zoo.cfg
修改内容
dataDir=/opt/modules/cdh/zookeeper-3.4.-cdh5.3.6/dataDir

4. 启动zookeeper

cd /opt/modules/cdh/zookeeper-3.4.-cdh5.3.6
bin/zkServer.sh start

5. 使用jps命令查看是否成功启动

启动成功,会有QuorumPeerMain进程

二、安装kafka

1. 下载 kafka_2.11-0.10.0.0.tgz

下载地址为https://www.apache.org/dyn/closer.cgi?path=/kafka/0.10.0.0/kafka_2.11-0.10.0.0.tgz

2. 解压

解压 kafka_2.11-0.10.0.0.tgz到/opt/modules目录

3. 修改配置

mkdir -p /opt/modules/kafka_2.11-0.10.0.0/dataDir

vi server.properties

修改内容:

log.dirs=/opt/modules/kafka_2.11-0.10.0.0/dataDir

zookeeper.connect=beifeng-hadoop-02:2181

4. 启动kafka

以后台进程方式启动kafka

nohup bin/kafka-server-start.sh config/server.properties >~/kafka-start.log >& &

5. 使用jps查看是否成功启动

启动成功能看到Kafka进程

ps -ef | grep kafka
netstat -tlnup | grep

三、单broker模拟生产者和消费者

1. 创建topic

创建一个叫"test"的topic,只有一个分区,一个副本

bin/kafka-topics.sh --create --zookeeper beifeng-hadoop-: --replication-factor  --partitions  --topic test

2. 通过list命令查看创建的topic

bin/kafka-topics.sh --list --zookeeper beifeng-hadoop-: 

3. 发送消息

bin/kafka-console-producer.sh --broker-list beifeng-hadoop-: --topic test

4. 接收消息

bin/kafka-console-consumer.sh --zookeeper beifeng-hadoop-: --topic test --from-beginning

四、搭建一个多broker的集群

1. 修改配置

cp config/server.properties config/server1.properties
cp config/server.properties config/server2.properties

server1.properties内容修改:

broker.id=1

port=9093

log.dir=/opt/modules/kafka_2.11-0.10.0.0/dataDirServer1

server2.properties内容修改:

broker.id=2

port=9094

log.dir=/opt/modules/kafka_2.11-0.10.0.0/dataDirServer2

2. 启动服务器

 nohup bin/kafka-server-start.sh config/server1.properties >~/kafka-server1-start.log >& &

 nohup bin/kafka-server-start.sh config/server2.properties >~/kafka-server2-start.log >& &

3. 创建有3个副本的topic

bin/kafka-topics.sh --create --zookeeper beifeng-hadoop-: --replication-factor  --partitions  --topic my-replicated-topic

4. 查看topic信息

bin/kafka-topics.sh --describe --zookeeper beifeng-hadoop-: --topic my-replicated-topic

Topic:my-replicated-topic PartitionCount:1 ReplicationFactor:3 Configs:
Topic: my-replicated-topic Partition: 0 Leader: 2 Replicas: 2,1,0 Isr: 2,1,0

解释一下这些输出。第一行是对所有分区的一个描述,然后每个分区都会对应一行,因为我们只有一个分区所以下面就只加了一行。
leader:负责处理消息的读和写,leader是从所有节点中随机选择的.
replicas:列出了所有的副本节点,不管节点是否在服务中.
isr:是正在服务中的节点.
在我们的例子中,节点1是作为leader运行。

5. 生产者

bin/kafka-console-producer.sh --broker-list beifeng-hadoop-: --topic my-replicated-topic

6. 消费者

bin/kafka-console-consumer.sh --zookeeper beifeng-hadoop-: --from-beginning --topic my-replicated-topic

《OD大数据实战》Kafka入门实例的更多相关文章

  1. 《OD大数据实战》HDFS入门实例

    一.环境搭建 1.  下载安装配置 <OD大数据实战>Hadoop伪分布式环境搭建 2. Hadoop配置信息 1)${HADOOP_HOME}/libexec:存储hadoop的默认环境 ...

  2. 《OD大数据实战》驴妈妈旅游网大型离线数据电商分析平台

    一.环境搭建 1. <OD大数据实战>Hadoop伪分布式环境搭建 2. <OD大数据实战>Hive环境搭建 3. <OD大数据实战>Sqoop入门实例 4. &l ...

  3. 《OD大数据实战》Hive环境搭建

    一.搭建hadoop环境 <OD大数据实战>hadoop伪分布式环境搭建 二.Hive环境搭建 1. 准备安装文件 下载地址: http://archive.cloudera.com/cd ...

  4. 《OD大数据实战》环境整理

    一.关机后服务重新启动 1. 启动hadoop服务 sbin/hadoop-daemon.sh start namenode sbin/hadoop-daemon.sh start datanode ...

  5. 《OD大数据实战》Hive入门实例

    官方参考文档:https://cwiki.apache.org/confluence/display/Hive/LanguageManual 一.命令行和客户端 1. 命令窗口 1)进入命令窗口 hi ...

  6. 《OD大数据实战》Sqoop入门实例

    官网地址: http://archive.cloudera.com/cdh5/cdh/5/sqoop-1.4.5-cdh5.3.6/SqoopUserGuide.html 一.环境搭建 1. 下载 s ...

  7. 《OD大数据实战》Flume入门实例

    一.netcat source + memory channel + logger sink 1. 修改配置 1)修改$FLUME_HOME/conf下的flume-env.sh文件,修改内容如下 e ...

  8. 《OD大数据实战》Mahout入门实例

    一.环境搭建 1. 下载 mahout-0.9-cdh5.3.6.tar.gz 2. 解压 3. mahout org.apache.mahout.clustering.syntheticcontro ...

  9. 《OD大数据实战》Spark入门实例

    一.环境搭建 1. 编译spark 1.3.0 1)安装apache-maven-3.0.5 2)下载并解压 spark-1.3.0.tgz 3)修改make-distribution.sh  VER ...

随机推荐

  1. orbis 链接 .a的问题

    orbis-clang.exe :error: no such file or directory : libppfxd_delta.a 这个东西真是见鬼 明明在那里就是说找不到 在依赖里libppf ...

  2. 用Time Machine做更换电脑工具

    简介: Time Machine这个工具,是直接备份硬盘上的内容.所以,它是直接有备份系统的. 准备: 1.准备一个移动硬盘,存贮空间大于你需要备份系统空间 操作流程: 1. 用Disk Utilit ...

  3. AD转换后数字量的处理

    假设模拟输入电压的最大值为5V,A/D转换器件为8位转换. [该转换器的分辨率为1/2n=0.3906%.] [能分辨输入模拟电压变化的最小值为5*0.3906%=19.5mv.] 则模拟电压与数字输 ...

  4. ASP.NET的一套笔试题

    1.    自定义控件如何做?答:自定义控件,跟HtmlControl或WebControl相似,编译后可以添加引用到工具栏里面,直接用鼠标拖动使用.2.界面的布局?答:表格,div3.程序的执行过程 ...

  5. 异步JS:$.Deferred的使用

    异步JS:$.Deferred的使用 原文链接:http://www.html5rocks.com/en/tutorials/async/deferred/ 当我们构建一个平稳的,响应式的HTML5应 ...

  6. javascript的Function 和其 Arguments

    http://shengren-wang.iteye.com/blog/1343256 javascript的Function属性:1.Arguments对象2.caller 对调用单前函数的Func ...

  7. ios下最简单的正则,RegexKitLite

    ios下最简单的正则,RegexKitLite 1.去RegexKitLite下载类库,解压出来会有一个例子包及2个文件,其实用到的就这2个文件,添加到工程中.备用地址:http://www.coco ...

  8. (转)两分钟彻底让你明白Android Activity生命周期(图文)!

    转自: http://blog.csdn.net/android_tutor/article/details/5772285 大家好,今天给大家详解一下Android中Activity的生命周期,我在 ...

  9. Task 使用 Task以及Task.Factory都是在.Net 4引用的。Task跟Thread很类似,通过下面例子可以看到。

    static public void ThreadMain() { Thread t1 = new Thread(TaskWorker); t1.Start(3); } static public v ...

  10. NPOI之Excel——合并单元格、设置样式、输入公式

    首先建立一个空白的工作簿用作测试,并在其中建立空白工作表,在表中建立空白行,在行中建立单元格,并填入内容: //建立空白工作簿 IWorkbook workbook = new HSSFWorkboo ...