java安装参考: Linux下JDK的安装
zookeepe安装参考:Zookeeper单机环境和集群环境搭建
Kafka 安装包官方下载地址:http://kafka.apache.org/downloads ,本用例下载的版本为 2.4.1,下载命令:
# 下载 wget https://www-eu.apache.org/dist/kafka/2.4.1/kafka_2.11-2.4.1.tgz # 解压 tar -xzf kafka_2.11-2.4.1.tgz -C /opt/这里解释一下 kafka 安装包的命名规则:以 kafka_2.11-2.4.1.tgz 为例,前面的 2.11 代表 Scala 的版本号(Kafka 采用 Scala 语言进行开发),后面的 2.4.1 则代表 Kafka 的版本号。
在 hadoop-nn-01、hadoop-nn-02、hadoop-dn-01 三台机器设置环境变量
vi /etc/profile添加:
export KAFKA_HOME=/opt/kafka_2.11-2.4.1 export PATH= K A F K A H O M E / b i n : KAFKA_HOME/bin: KAFKAHOME/bin:PATH
执行source /etc/profile
分别修改三份配置文件中的部分配置,如下:
server.properties:
hadoop-nn-01:
broker.id=1 listeners=PLAINTEXT://192.168.73.130:9092 log.dirs=/data/kafka/kafka-logs zookeeper.connect=hadoop-nn-01:2181,hadoop-nn-02:2181,hadoop-dn-01:2181hadoop-nn-02:
broker.id=2 listeners=PLAINTEXT://192.168.73.131:9092 log.dirs=/data/kafka/kafka-logs zookeeper.connect=hadoop-nn-01:2181,hadoop-nn-02:2181,hadoop-dn-01:2181hadoop-dn-01:
broker.id=3 listeners=PLAINTEXT://192.168.73.132:9092 log.dirs=/data/kafka/kafka-logs zookeeper.connect=hadoop-nn-01:2181,hadoop-nn-02:2181,hadoop-dn-01:2181在 hadoop-nn-01、hadoop-nn-02、hadoop-dn-01 执行:
nohup /opt/kafka_2.11-2.4.1/bin/kafka-server-start.sh /opt/kafka_2.11-2.4.1/config/server.properties >/data/kafka/kafka.out 2>&1 &停止kafka 可以执行
ps -ef|grep kafka|grep -v grep|awk '{print "kill -9", $2}'|sh执行jps -m可以看到
[hadoop@hadoop-nn-01 opt]$ jps -m 40439 Jps -m 1884 QuorumPeerMain /home/hadoop/zookeeper-3.4.14/conf/zoo.cfg 11263 Kafka /opt/kafka_2.11-2.4.1/config/server.properties创建topic
kafka-topics.sh --create --bootstrap-server 192.168.73.130:9092,192.168.73.131:9092,192.168.73.132:9092 --replication-factor 3 --partitions 3 --topic test显示所有topic
kafka-topics.sh --list --bootstrap-server 192.168.73.130:9092,192.168.73.131:9092,192.168.73.132:9092查看topic详情
[hadoop@hadoop-dn-01 scripts]$ kafka-topics.sh --bootstrap-server 192.168.73.130:9092,192.168.73.131:9092,192.168.73.132:9092 --describe --topic test Topic: test PartitionCount: 3 ReplicationFactor: 3 Configs: segment.bytes=1073741824 Topic: test Partition: 0 Leader: 3 Replicas: 3,2,1 Isr: 3,2,1 Topic: test Partition: 1 Leader: 1 Replicas: 1,3,2 Isr: 3,2,1 Topic: test Partition: 2 Leader: 2 Replicas: 2,1,3 Isr: 2,3,1生产者发布消息
kafka-console-producer.sh --broker-list 192.168.73.130:9092,192.168.73.131:9092,192.168.73.132:9092 --topic test消费者消费消息
kafka-console-consumer.sh --bootstrap-server 192.168.73.130:9092,192.168.73.131:9092,192.168.73.132:9092 --from-beginning --topic test参考: 基于Zookeeper搭建Kafka高可用集群
Kafka集群的安装和部署
kafka运行内存不足问题解决