一 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
版权归原作者 不爱说话的小张 所有, 如有侵权,请联系我们删除。