天天看点

在CentOS 7上安装Kafka集群

一、安装准备

1、修改系统配置

#关闭selinux、firewall

#修改/etc/security/limits.conf添加以下内容:

soft nofile 65536

hard nofile 65536

soft nproc 65536

hard nproc 65536 

#修改/etc/security/limits.d/20-nproc.conf

3、创建账户、目录

groupadd -g 800 kafka

useradd -u 800 -g kafka kafka

二、安装步骤

1、解压文件

tar xvf kafka_2.12-1.0.0.tgz -C /usr/local/

cd /usr/local/

mv kafka_2.12-1.0.0/ kafka

mkdir /usr/local/kafka/log

chown -R kafka.kafka /usr/local/kafka

2、修改环境变量.bash_profile

#su - kafka

$vim .bash_profile 

JAVA_HOME=/usr/local/jdk

CLASSPATH=$JAVA_HOME/lib

PATH=$JAVA_HOME/bin:$PATH:$HOME/bin:/usr/local/kafka/bin

export PATH JAVA_HOME CLASSPATH

#重新加载.bash_profile

$. .bash_profile

3、修改配置文件

broker.id=0 每台服务器的broker.id都不能相同

host.name=192.168.10.21

log.dirs=/usr/local/kafka/log

#在log.retention.hours=168 下面新增下面三项

message.max.byte=5242880

default.replication.factor=2

replica.fetch.max.bytes=5242880

#设置zookeeper的连接端口

zookeeper.connect=192.168.10.21:2181,192.168.10.22:2181,192.168.10.23:2181

4、启动kafka

kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties

三、测试

1、在任意机器上建一个topic,因为有三个kafka服务,所以这里replication-factor设为3

kafka-topics.sh --create --zookeeper 192.168.10.23:2181 --replication-factor 3 -partitions 1 --topic 3test

Created topic "3test".

2、查看topic,此时的leader kafka为1,repicas:集群里有三个kafka,Isr:正常使用的kafka

kafka-topics.sh --describe --zookeeper 192.168.10.21:2181

Topic:3test PartitionCount:1 ReplicationFactor:3 Configs:

Topic: 3test Partition: 0 Leader: 1 Replicas: 1,2,0 Isr: 1,2,0

3、在2这台机器上开启一个producer,往1这个kafka发消息

kafka-console-producer.sh --broker-list 192.168.10.22:9092 --topic 3test

this is a message to 132 broker

re?

4、停掉1的kafka,再次查看topics,此时可用的Isr为0和2

Topic: 3test Partition: 0 Leader: 2 Replicas: 1,2,0 Isr: 2,0

5、在0上开启一个consumer

kafka-console-consumer.sh --zookeeper 192.168.10.21:2181 --topic 3test --from-beginning

自此,发现停掉了132,依然能通过zookeeper从129和133的kafka上收到发往132的消息。

kafka集群测试通过

参考博文:

<a href="http://www.cnblogs.com/younldeace/p/3796580.html">http://www.cnblogs.com/younldeace/p/3796580.html</a>

<a href="http://blog.csdn.net/u013214151/article/details/53495045">http://blog.csdn.net/u013214151/article/details/53495045</a>

     本文转自1321385590 51CTO博客,原文链接:http://blog.51cto.com/linux10000/2062127,如需转载请自行联系原作者

继续阅读