Fork me on GitHub

CentOS 7部署Kafka和Kafka集群

CentOS 7部署Kafka和Kafka集群

注意事项

需要启动多个shell脚本交互客户端进行验证,运行中的客户端不要停止。

准备工作:##

安装java并设置java环境变量,在`/etc/profile`中加入

export JAVA_HOME=/usr/java/jdk1.8.0_65
export PATH=$PATH:$JAVA_HOME/bin

安装kafka

  • 下载:wget http://mirrors.cnnic.cn/apache/kafka/0.10.0.1/kafka_2.10-0.10.0.1.tgz

  • 解压:tar -zxvf kafka_2.10-0.10.0.1.tgz

  • 移动到指定目录:mv kafka_2.10-0.10.0.1 /usr/local/kafka

功能验证

  • 启动zookeeper

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

  • 启动kafka服务

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

  • 创建topic

/usr/local/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

  • 产生消息

/usr/local/kafka/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test

输入以下内容:

Hello world!
Hello Kafka!
  • 消费消息

/usr/local/kafka/bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning

如果能正常接收消息,则说明kafka配置成功

集群配置

单机多broker 集群配置

利用单节点部署多个broker。 不同的broker 设置不同的 id,监听端口及日志目录。 例如:

cp /usr/local/kafka/config/server.properties /usr/local/kafka/config/server-1.properties

编辑配置:

config/server-1.properties:
    broker.id=1
    port=9093
    log.dir=/tmp/kafka-logs-1

启动Kafka服务:

bin/kafka-server-start.sh config/server-1.properties &

启动多个服务,按上文类似方式产生和消费消息。

多机多broker 集群配置

分别在多个节点按上述方式安装Kafka,配置启动多个Zookeeper 实例。 例如: 在10.4.253.22,10.4.253.23,10.4.253.24三台机器部署,Zookeeper配置如下:

initLimit=5
syncLimit=2
server.1=10.4.253.22:2888:3888
server.2=10.4.253.23:2888:3888
server.3=10.4.253.24:2888:3888

分别配置多个机器上的Kafka服务 设置不同的broke id,zookeeper.connect设置如下:

zookeeper.connect=10.4.253.22:2181,10.4.253.23:2181,10.4.253.24:2181

启动Zookeeper与Kafka服务,按上文方式产生和消费消息,验证集群功能。

参考文档:

posted @ 2016-08-23 17:22  秋楓  阅读(6586)  评论(0编辑  收藏  举报