官网:

参考文档:

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. [noip2005提高]过河 dp

    由于L的范围到了109,用普通dp做肯定是不成了: 可以观察到M的数量很小,dp在转移的过程中有大量的无用转移: 可以想到压缩范围,问题是如何压缩,观察若S=9,T=10时,能到达的点,9,10,18 ...

  2. std::vector<Channel2*> m_allChannels;容器,以及如何根据channelid的意义

    std::vector<Channel2*> m_allChannels;容器,以及如何根据channelid的意义 这个容器保存了所有客户端连接的channel Channel2* Li ...

  3. NPC AI驱动最基本过程

    NPC AI驱动最基本过程 NPCmgr中比较重要的是加载NPC和一个NPCAI的一个指针 他利用map那个线程的定时到底做了啥呢 void NPCmgr::npcAITimer() { time_t ...

  4. secure CRT记住密码不可用

    secure CRT 记住密码,琢磨好几天了. 终于发现要在软件打开的时候设置了密码才能让每个会话记住密码. 一直懒得在打开软件的时候设置密码,结果每次打开会话都要输入密码...为了省下输入一次密码, ...

  5. Guid和Int还有Double、Date的ToString方法的常见格式

    Guid的常见格式: 1.Guid.NewGuid().ToString("N") 结果为:       38bddf48f43c48588e0d78761eaa1ce6 2.Gu ...

  6. 大话C#之属性

    前言 俗话说得好:工欲善其事,必先利其器.要想玩转OOP设计出一个优秀的类型,属性是必不可少的,那么我们今天就来说说c#中关于属性的二三事. 属性(property)分为无参属性(parameterl ...

  7. IE8下jQuery改变png图片透明度时出现的黑边问题

    png24格式的图片在用jQuery添加显示隐藏动画时发现,图片的半透明区域出现黑边? 在网上搜了搜主要有以下几种办法: 1.把图片保存成PNG-8格式. 2.把背景色一起切入并保存为JPG格式. 以 ...

  8. vs2010把项目资源打包成系统资源

      把wav格式的音频做成系统资源,根据条件播放相应的音频  System.Media.SoundPlayer spOne = new System.Media.SoundPlayer();      ...

  9. java与.net之间xml传递,xml最前面多了个?

    最近做一个项目,是java提供webservice供.net调用.参数采用xml格式.首先碰到的问题: 1).net这边采用XmlSerializer 方式序列化对象传递给对方.对方在本机调试可以收到 ...

  10. root 授权

    错误:The user specified as a definer ('root'@'%') does not exist 解决: grant all privileges on *.* to ro ...