本文共 2062 字,大约阅读时间需要 6 分钟。
一、安装准备
1、修改系统配置#关闭selinux、firewall#修改/etc/security/limits.conf添加以下内容:二、安装步骤
1、解压文件tar xvf kafka_2.12-1.0.0.tgz -C /usr/local/cd /usr/local/mv kafka_2.12-1.0.0/ kafkamkdir /usr/local/kafka/logchown -R kafka.kafka /usr/local/kafka2、修改环境变量.bash_profile#su - kafka$vim .bash_profile JAVA_HOME=/usr/local/jdkCLASSPATH=$JAVA_HOME/libPATH=$JAVA_HOME/bin:$PATH:$HOME/bin:/usr/local/kafka/binexport PATH JAVA_HOME CLASSPATH#重新加载.bash_profile$. .bash_profile3、修改配置文件broker.id=0 每台服务器的broker.id都不能相同host.name=192.168.10.21log.dirs=/usr/local/kafka/log#在log.retention.hours=168 下面新增下面三项message.max.byte=5242880default.replication.factor=2replica.fetch.max.bytes=5242880#设置zookeeper的连接端口zookeeper.connect=192.168.10.21:2181,192.168.10.22:2181,192.168.10.23:21814、启动kafkakafka-server-start.sh -daemon /usr/local/kafka/config/server.properties三、测试
1、在任意机器上建一个topic,因为有三个kafka服务,所以这里replication-factor设为3kafka-topics.sh --create --zookeeper 192.168.10.23:2181 --replication-factor 3 -partitions 1 --topic 3testCreated topic "3test".2、查看topic,此时的leader kafka为1,repicas:集群里有三个kafka,Isr:正常使用的kafka
kafka-topics.sh --describe --zookeeper 192.168.10.21:2181Topic:3test PartitionCount:1 ReplicationFactor:3 Configs:Topic: 3test Partition: 0 Leader: 1 Replicas: 1,2,0 Isr: 1,2,03、在2这台机器上开启一个producer,往1这个kafka发消息
kafka-console-producer.sh --broker-list 192.168.10.22:9092 --topic 3testthis is a message to 132 brokerre?4、停掉1的kafka,再次查看topics,此时可用的Isr为0和2
kafka-topics.sh --describe --zookeeper 192.168.10.21:2181Topic:3test PartitionCount:1 ReplicationFactor:3 Configs:Topic: 3test Partition: 0 Leader: 2 Replicas: 1,2,0 Isr: 2,05、在0上开启一个consumer
kafka-console-consumer.sh --zookeeper 192.168.10.21:2181 --topic 3test --from-beginningre?自此,发现停掉了132,依然能通过zookeeper从129和133的kafka上收到发往132的消息。
kafka集群测试通过参考博文:
转载于:https://blog.51cto.com/linux10000/2062127