一    jar包方式安装Kafka

jar包下载地址:https://kafka.apache.org/downloads下载

 

1.配置java环境

1.1、上传jdk-8u341-linux-x64.tar.gz到服务器并安装:

# tar -zxf jdk-8u341-linux-x64.tar.gz

1.2.配置环境变量:

vim /etc/profile

# 生效 

source /etc/profile 

# 验证 

java -version 

2 Zookeeper的安装配置

2.1、上传zookeeper-3.4.14.tar.gz到服务器

2.2、解压到/opt: 

tar -zxf zookeeper-3.4.14.tar.gz -C /opt 

cd /opt/zookeeper-3.4.14/conf 

# 复制zoo_sample.cfg命名为zoo.cfg 

cp zoo_sample.cfg zoo.cfg 

# 编辑zoo.cfg文件 

vim zoo.cfg

2.3、修改Zookeeper保存数据的目录,dataDir:

dataDir=/var/lagou/zookeeper/data

2.4、编辑/etc/profile:

设置环境变量ZOO_LOG_DIR,指定Zookeeper保存日志的位置;

ZOOKEEPER_PREFIX指向Zookeeper的解压目录;

将Zookeeper的bin目录添加到PATH中:

 

2.5、使配置生效:

source /etc/profile

2.6、验证:

 3 Kafka的安装与配置

3.1、上传kafka_2.12-1.0.2.tgz到服务器并解压:

tar -zxf kafka_2.12-1.0.2.tgz -C /opt 

3.2、配置环境变量并生效:

vim /etc/profile 

3.3、配置/opt/kafka_2.12-1.0.2/config中的server.properties文件:

Kafka连接Zookeeper的地址,此处使用本地启动的Zookeeper实例,连接地址localhost:2181,后面的 kafkaDemo 是Kafka在Zookeeper中的根节点路径:

3.4、启动Zookeeper: 

zkServer.sh start

3.5、确认Zookeeper的状态: 

3.6、启动Kafka:

进入Kafka安装的根目录,执行如下命令:

kafka-server-start.sh ../config/server.properties

 启动成功:

3.7、查看Zookeeper的节点:

./zkCli.sh  

ls /kafkaDemo

 3.8、此时Kafka是前台模式启动,要停止,使用Ctrl+C。

如果要后台启动,使用命令:

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

查看kafka进程:

ps -ef | grep kafka

停止后台运行的kafka:

kafka-server-stop.sh

3.9、 验证kafka是否可以正常使用

kafka-console-producer.sh用于生产消息:

# kafka-console-producer.sh --topic topic_1 --broker-list localhost:9092

kafka-console-consumer.sh用于消费消息:

# kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic topic_1 

二   Docker安装Kafka

1.docker安装zookeeper

1.1、拉取zookeeper镜像

# docker pull wurstmeister/zookeeper

1.2、启动zookeeper

# docker run -d --name zookeeper -p 2181:2181 -e TZ="Asia/Shanghai" --restart always wurstmeister/zookeeper

1.3、查看zookeeper的启动信息

# docker logs -f zookeeper

2.docker安装kafka

2.1、拉取镜像

# docker pull wurstmeister/kafka

2.2、启动kafka

docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=<这里换成你的zookeeper地址和端口> -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://<这里换成你的kafka地址和端口> -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -e TZ="Asia/Shanghai" wurstmeister/kafka

启动环境变量参数说明

变量 描述
KAFKA_BROKER_ID kafka集群中每个kafka都有一个BROKER_ID来区分自己
KAFKA_ADVERTISED_LISTENERS kafka的地址和端口,用于向zookeeper注册
KAFKA_ZOOKEEPER_CONNECT zookeeper地址
KAFKA_LISTENERSkafka监听端口
TZ 容器时区改为上海

2.3、验证kafka是否可以使用

docker exec -it kafka /bin/sh

进入路径:/opt/kafka_2.13-2.7.0/bin下

运行kafka生产者发送消息

./kafka-console-producer.sh --broker-list localhost:9092 --topic topic_1

发送消息

另打开窗口消费者消费消息

kafka-console-consumer.sh --bootstrap-server localhost:9092 - -topic topic_1 --from-beginning

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐