官网:

参考文档:

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. Java compiler level does not match the version of the instal

    一.问题描述 新建了一个项目,workspace默认jdk编译版本是1.7的,新建项目使用的是jdk1.5的版本,肯定会报@override错误.这个时候,修改项目的compilor即可. 这时候,你 ...

  2. NYOJ-517 最小公倍数 TLE 分类: NYOJ 2013-12-29 14:49 253人阅读 评论(0) 收藏

    #include <stdio.h> int main(){ int num[101]={0}; int result[21]={0}; int sum[101][21]={0}; int ...

  3. vector内存分配

    vector,map 这些容器还是在堆上分配的内存,在析构时是释放空间 vector在提高性能可以先reserve在push_back() reserve:决定capacity,但没有真正的分配内存, ...

  4. 如何撰写SCI论文的讨论部分?——经典结构 – 俗称“倒漏斗型。

  5. JAVA算法系列 冒泡排序

    java算法系列之排序 手写冒泡 冒泡算是最基础的一个排序算法,简单的可以理解为,每一趟都拿i与i+1进行比较,两个for循环,时间复杂度为 O(n^2),同时本例与选择排序进行了比较,选择排序又叫直 ...

  6. Sqlite基础及其与SQLServer语法差异

    1 TOP 这是一个大家经常问到的问题,例如在SQLSERVER中可以使用如下语句来取得记录集中的前十条记录: SELECT TOP 10 * FROM [index] ORDER BY indexi ...

  7. TestDriven.Net

    转: http://www.cnblogs.com/AlexLiu/archive/2008/12/01/1345002.html

  8. AssetBundle依赖关系

    原地址:http://www.cnblogs.com/realtimepixels/p/3652086.html Unity AssetBundle Dependencies In the last ...

  9. MAC OS下使用Xcode进行GLSL编程的配置过程

    整理自之前使用的163博客原创文章. GLSL项目中需要使用GLEW库,因此先要安装GLEW库和在Xcode中配置GLEW.要使GLEW在Xcode中被正确链接,又需要通过MacPorts来安装GLE ...

  10. php7 安装 及和php5的共存

    http://blog.csdn.net/liuxinmingcode/article/details/50319145 LNMP FastCGI 是一个可伸缩地.高速地在HTTP server和动态 ...