1、安装JDK
- CentOS 7 自带了openJDK 1.8
2、安装Zookeeper
-
下载地址
http://mirrors.hust.edu.cn/apache/zookeeper/
-
解压文件
cd /opt/zk/ tar -zxvf zookeeper-3.4.12.tar.gz
-
zookeeper配置文件修改
cd /opt/zk/zookeeper-3.4.12/conf/ cp zoo_sample.cfg zoo.cfg vim zoo.cfg #将clientPort=2181改为 clientPort=3181 #dataDir=/tmp/zookeeper dataDir=/opt/kafka/logs/zookeeper
-
环境变量设置
vim /etc/profile
#zookeeper export ZOOKEEPER_HOME=/opt/zk/zookeeper-3.4.12 export PATH=$ZOOKEEPER_HOME/bin:$PATH
source /etc/profile
-
zookeeper启动
zkServer.sh start
-
查看zookeeper状态
zkServer.sh status
3、安装Kafka
-
下载地址
http://kafka.apache.org/downloads.html
-
解压文件
cd /opt/kafka/ tar -zxvf kafka_2.12-2.1.0.tgz
-
修改Kafka配置
cd kafka_2.12-2.1.0/config/ cp server.properties server.properties-bk vim server.properties
#listeners=PLAINTEXT://localhost:9092 advertised.listeners = OUTSIDE://192.168.68.132:3093,INSIDE://localhost:3092 inter.broker.listener.name = INSIDE listener.security.protocol.map = INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT listeners = OUTSIDE://:3093,INSIDE://:3092 log.dirs=/opt/kafka/logs/kafka-logs zookeeper.connect=localhost:3181,192.168.68.132:3181 #如果想删除某个topic,则还需添加 delete.topic.enable=true #关闭自动创建主题 auto.create.topics.enable=false #启动日志清理,将无用的日志消息删除减少空间的占用 log.cleaner.enable=true
这里设置了两个端口,3092由本机使用,3093对外提供服务
-
环境变量
vim /etc/profile
#Kafka export KAFKA_HOME=/opt/kafka/kafka_2.12-2.1.0 export PATH=$KAFKA_HOME/bin:$PATH
source /etc/profile
-
启动Kafka
/opt/kafka/kafka_2.12-2.1.0/bin/kafka-server-start.sh /opt/kafka/kafka_2.12-2.1.0/config/server.properties
-
创建Topic
/opt/kafka/kafka_2.12-2.1.0/bin/kafka-topics.sh --create --zookeeper localhost:3181 --replication-factor 1 --partitions 1 --topic kafkaTest
-
查看Topic list
/opt/kafka/kafka_2.12-2.1.0/bin/kafka-topics.sh --list --zookeeper localhost:3181
-
生产消息
/opt/kafka/kafka_2.12-2.1.0/bin/kafka-console-producer.sh --broker-list localhost:3092 --topic kafkaTest
-
消费消息
/opt/kafka/kafka_2.12-2.1.0/bin/kafka-console-consumer.sh --bootstrap-server localhost:3092 --topic kafkaTest
-
删除Topic
/opt/kafka/kafka_2.12-2.1.0/bin/kafka-topics.sh --delete --zookeeper localhost:3181 --topic kafkaTest
4、脚本
-
创建脚本
cd /opt vim kafka_start.sh vim kafka_stop.sh
-
停止Kafka脚本
#!/bin/sh #关闭kafka /opt/kafka/kafka_2.12-2.1.0/bin/kafka-server-stop.sh #等5秒后执行 sleep 5 #关闭zookeeper zkServer.sh stop
-
开启Kafka脚本
#!/bin/sh #启动zookeeper zkServer.sh start #等3秒后执行 sleep 5 #启动kafka /opt/kafka/kafka_2.12-2.1.0/bin/kafka-server-start.sh /opt/kafka/kafka_2.12-2.1.0/config/server.properties &