Kafka实战一

栏目: 编程工具 · 发布时间: 6年前

内容简介:Kafka实战一

Kafka实战一

搭建环境

# 下载安装包
http://mirror.nus.edu.sg/apache/kafka/0.8.1.1/kafka_2.10-0.8.1.1.tgz

# 上传到Linux /home

# 解压
tar xzf kafka_2.10-0.8.1.1.tgz -C /usr/local
cd /usr/local
mv kafka_2.10-0.8.1.1 kafka

# 启动 Zookeeper
cd kafka
./zookeeper-server-start.sh config/zookeeper.properties

# 启动 Kafka
./kafka-server-start.sh config/server.properties

测试–单个broker

新建Topic

# 列出存在的Topic
./bin/kafka-topics.sh --list --zookeeper localhost:2181

# 新建
./bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic topicTest

发送消息

# console
./kafka-console-producer.sh --broker-list localhost:9092 --topic topicTest
this is topicTest producer test
hello world!

消费消息

# console
./kafka-console-consumer.sh --zookeeper localhost:2181 --topic topicTest --from-beginning

测试–多个broker

创建broker

# 编辑配置文件
cp server.properties server-1.properties
cp server.properties server-2.properties

vim server-1.properties
# 修改内容
	broker.id=1
	port=9093
	log.dirs=/tmp/kafka-logs-1
	
vim server-2.properties
# 修改内容
	broker.id=2
	port=9094
	log.dirs=/tmp/kafka-logs-2

# 启动
./kafka-server-start.sh -daemon ../config/server-1.properties
./kafka-server-start.sh -daemon ../config/server-2.properties

创建topic, 设置备份为3

./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 1 --topic three-replication-topicTest

查看topic

# 查看
./kafka-topics.sh -describe --zookeeper localhost:2181 --topic three-replication-topicTest

# 结果如下
	# 分区汇总信息
	Topic:three-replication-topicTest       PartitionCount:1        ReplicationFactor:3     Configs:
	# Leader: leader节点是2; Replicas: 在节点2,0,1上; Isr: 工作中的复制节点的集合,也就是活的节点的集合;
    Topic: three-replication-topicTest      Partition: 0    Leader: 2       Replicas: 2,0,1 Isr: 2,0,1

发送消息

./kafka-console-producer.sh --broker-list localhost:9092 --topic three-replication-topicTest

消费消息

./kafka-console-consumer.sh --zookeeper localhost:2181 --topic three-replication-topicTest --from-beginning

删除leader(即broker2)

# 查看进程
ps -ef|grep server-2.properties

# 终止
kil -9 27628

# 查看topic
	Topic:three-replication-topicTest       PartitionCount:1        ReplicationFactor:3     Configs:
	# 2号节点被终止, leader节点由0号节点顶替(即broker0), 2号节点未被列入Isr中(因为已被终止)
    Topic: three-replication-topicTest      Partition: 0    Leader: 0       Replicas: 2,0,1 Isr: 0,1
 
# 发送消息进行测试
消息正常发送及接收

再删除新的leader(即broker0)

发送消息时报错, 正在查找原因中……..

找到原因: 生产者连接的broker被终止导致发送消息出错(连接异常)

采用四个broker及四个replication-factor

Topic:topicRepl PartitionCount:1        ReplicationFactor:4     Configs:
Topic: topicRepl        Partition: 0    Leader: 0       Replicas: 0,2,3,1       Isr: 0,2,3,1

逐个删除leader

java.net.UnknownHostException: hadoop229: hadoop229: 未知的名称或服务

解决方案:

vim /etc/hosts

# 在末尾添加 127.0.0.1 hadoop229

参考资料

hadoop坑

Kafka入门


以上所述就是小编给大家介绍的《Kafka实战一》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

PHP for the World Wide Web, Second Edition (Visual QuickStart Gu

PHP for the World Wide Web, Second Edition (Visual QuickStart Gu

Larry Ullman / Peachpit Press / 2004-02-02 / USD 29.99

So you know HTML, even JavaScript, but the idea of learning an actual programming language like PHP terrifies you? Well, stop quaking and get going with this easy task-based guide! Aimed at beginning ......一起来看看 《PHP for the World Wide Web, Second Edition (Visual QuickStart Gu》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具