Kafka介绍及环境搭建(3)

Kafka只能保证一个分区之内消息的有序性,在不同的分区之间是不可以的,这已经可以满足大部分应用的需求。如果需要Topic中所有消息的有序性,那就只能让这个Topic只有一个分区,当然也就只有一个Consumer组消费它。

3 环境准备

安装Kafka集群之前,需要首先安装JDK和Zookeeper集群,同时也需要对集群中各节点机器的Linux环境进行配置,其具体方法请参考我的另一篇文章《搭建Hadoop2.0高可用集群 》。我的Kafka集群就在此集群基础上进行安装配置。

4 搭建Kafka集群

// 在Hadoop-master1节点解压kafka安装包

$ tar-xvf kafka_2.11-0.10.0.0.tgz

// 进入kafka工作目录并���见一个logs目录

$ cd kafka_2.11-0.10.0.0/

$ mkdir logs

// 编辑配置文件server.properties

$ vim config/server.properties

# 设置日志存放的目录

log.dirs=/home/hadoop/app/kafka_2.11-0.10.0.0/logs

# 设置分区数

num.partitions=2

# 设置zookeeper地址

zookeeper.connect=hadoop-slave1:2181,hadoop-slave2:2181,hadoop-slave3:2181

# 设置服务器接收消息的最大字节数为5M

message.max.bytes=5242880

# 设置副本个数为2

default.replication.factor=2

# 设置取消息的最大字节数为5M

replica.fetch.max.bytes=5242880

// 将kafka工作目录从hadoop-master1节点复制到hadoop-master2节点

$ cd ~/app/

$ scp-r kafka_2.11-0.10.0.0/ hadoop-master2:/home/hadoop/app/

// 在hadoop-master2节点的kafka配置文件server.properties中修改broker.id

$ cd app/kafka_2.11-0.10.0.0/config/

$ vim server.properties

broker.id=1

// 分别在hadoop-master1和hadoop-master2节点配置kafka环境变量

$ cd ~

$ vim .bash_profile

export KAFKA_HOME=/home/hadoop/app/kafka_2.11-0.10.0.0

export PATH=$PATH:$KAFKA_HOME/bin

$ source .bash_profile

// 分别在hadoop-master1和hadoop-master2节点启动服务

$ kafka-server-start.sh-daemon $KAFKA_HOME/config/server.properties

$ jps

Kafka介绍及环境搭建

5 功能测试

// 创建topic,名称为test,只有1个副本和一个分区

$ kafka-topics.sh --create --zookeeperhadoop-slave1:2181 --replication-factor 1 --partitions 1 --topic test

// 查看topic

$ kafka-topics.sh --list --zookeeperhadoop-slave1:2181

$ kafka-topics.sh --describe--zookeeper hadoop-slave1:2181 --topic test

Kafka介绍及环境搭建

// 在hadoop-master2节点启动一个consumer

$ kafka-console-consumer.sh --zookeeperhadoop-slave1:2181 --topic test --from-beginning

// 在hadoop-master1节点启动一个producer并发送几条消息

$ kafka-console-producer.sh--broker-list localhost:9092 --topic test

// 在hadoop-master2节点查看是否消费者是否接收到消息

CentOS 7.2部署Elasticsearch+Kibana+Zookeeper+Kafka 

CentOS 7下安装Logstash ELK Stack 日志管理系统 

Apache Kafka 代码实例

Apache Kafka 教程笔记

Apache kafka原理与特性(0.8V) 

Kafka部署与代码实例 

Kafka介绍和集群环境搭建 

Kafka 的详细介绍请点这里
Kafka 的下载地址请点这里

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/5063116560cb89587c62c2126eb30ba2.html