0


Linux下kafka单机版搭建

1.zookeeper的安装

这里使用3.6.4版本

前提:服务器已经安装了jdk,zookeeper运行需要jdk环境

1.1创建放zookeeper的目录

#创建目录mkdir-p /usr/local/zookeeper

#赋予权限chmod777 /usr/local/zookeeper

1.2安装包的下载

#这里推荐去官网下载
https://www.apache.org/dyn/closer.lua/zookeeper/zookeeper-3.6.4/apache-zookeeper-3.6.4-bin.tar.gz

1.3放置安装包并解压

#切换到创建的目录cd /usr/local/zookeeper

#将下载的包放在该目录#解压该目录tar-zxvf apache-zookeeper-3.6.4-bin.tar.gz

#重命名mv apache-zookeeper-3.6.4-bin zookeeper-3.6.4

1.4修改配置文件

#进入配置文件目录cd /usr/local/zookeeper/zookeeper-3.6.4/conf

#复制原有的配置文件并改名cp zoo_sample.cfg zoo.cfg

#修改配置文件vim zoo.cfg

#内容如下:# 数据文件夹dataDir=/usr/local/zookeeper/zookeeper-3.6.4/data
    
# 日志文件夹dataLogDir=/usr/local/zookeeper/zookeeper-3.6.4/logs

# 客户端访问 zookeeper 的端口号clientPort=2181#退出保存zoo.cfg
:wq

1.5添加环境变量

#编辑环境变量文件vim /etc/profile
#尾部添加如下内容exportZOOKEEPER_HOME=/usr/local/zookeeper/zookeeper-3.6.4/
exportPATH=$ZOOKEEPER_HOME/bin:$PATHexportPATH#退出保存
:wq

#重新执行一下source /etc/profile

1.6测试zookeeper启动

#进入bin目录cd /usr/local/zookeeper/zookeeper-3.6.4/bin

#启动服务
zkServer.sh start

ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/zookeeper-3.6.4/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
出现这个就是成功了

#查看状态
zkServer.sh status

#关闭服务
zkServer.sh stop

#重启服务
zkServer.sh restart

2.kafka的安装

2.1下载kafka

下载地址:Apache Kafka

在这里插入图片描述

这里两个,第一个带源码我们可以下载下来查看对应的zookeeper版本

解压后的

gradle/dependencies.gradle

文件里面有zookeeper版本号

2.2创建目录

mkdir-p /opt/kafka  #y用于存放kafka的解压包mkdir-p /opt/kafka/kafka_data #用于存放kafka的数据mkdir-p /opt/kafka/kafka_log #用于存放kafka的日志

2.3将kafka解压

将下载的kafka放在

/opt/kafka

#解压tar-zxvf kafka_2.12-3.4.1.tgz

2.4配置kafka服务

cd /opt/kafka/kafka_2.12-3.4.1/config

vim server.properties

#修改一下参数broker.id=0#端口号port=9092#服务器IP地址,修改为自己的服务器IPhost.name=localhost
#日志存放路径,上面创建的目录log.dirs=/opt/kafka/kafka_log
#zookeeper地址和端口,单机配置部署,localhost:2181zookeeper.connect=localhost:2181         

2.5启动kafka

/opt/kafka/kafka_2.12-3.4.1/bin/kafka-server-start.sh /opt/kafka/kafka_2.12-3.4.1/config/server.properties

2.6测试

前提开启两个终端,一个生产者,一个消费者

2.6.1生产者

cd /opt/kafka/kafka_2.12-3.4.1/bin

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

2.6.2消费者

cd /opt/kafka/kafka_2.12-3.4.1/bin

./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topictest

3.脚本设计

上面都是手动启动,这里可以考虑写一个脚本,自动去启动

3.1启动脚本

cd /opt/kafka/kafka_2.12-3.4.1/bin

vim kafka_start.sh

#内容如下:#!/bin/bash#echo"启动zookeeper服务..."sh /usr/local/zookeeper/zookeeper-3.6.4/bin/zkServer.sh start
sleep5echo"启动kafka服务..."
/opt/kafka/kafka_2.12-3.4.1/bin/kafka-server-start.sh /opt/kafka/kafka_2.12-3.4.1/config/server.properties &i

3.2关闭脚本

cd /opt/kafka/kafka_2.12-3.4.1/bin

vim kafka_stop.sh

#内容如下:#!/bin/bashecho"启动zookeeper服务..."sh /usr/local/zookeeper/zookeeper-3.6.4/bin/zkServer.sh stop
sleep5echo"启动kafka服务..."
/opt/kafka/kafka_2.12-3.4.1/bin/kafka-server-stop.sh /opt/kafka/kafka_2.12-3.4.1/config/server.properties 

3.3给脚本赋予权限

chmod +x kafka_start.sh
 
chmod +x kafka_stop.sh

3.4设置开机自启

vi /etc/rc.d/rc.local #编辑,在最后添加一行sh /opt/kafka/kafka_2.12-3.4.1/kafka_start.sh & #设置开机自动在后台运行脚本

4.内网穿透

在kafka的配置文件server.properties里面设置如下

############################# Socket Server Settings #############################

# The address the socket server listens on. It will get the value returned from 
# java.net.InetAddress.getCanonicalHostName() if not configured.
#   FORMAT:
#     listeners = listener_name://host_name:port
#   EXAMPLE:
#     listeners = PLAINTEXT://your.host.name:9092
#listeners=PLAINTEXT://:9092
listeners=PRIVATE://0.0.0.0:9093,PUBLIC://0.0.0.0:9092

auto.create.topics.enable=true

# Hostname and port the broker will advertise to producers and consumers. If not set, 
# it uses the value for "listeners" if configured.  Otherwise, it will use the value
# returned from java.net.InetAddress.getCanonicalHostName().
#advertised.listeners=PLAINTEXT://your.host.name:9092
#修改为外网ip
advertised.listeners=PRIVATE://192.168.150.203:9093,PUBLIC://10.140.211.88:9092

inter.broker.listener.name=PRIVATE
listener.security.protocol.map=PRIVATE:PLAINTEXT,PUBLIC:PLAINTEXT
标签: linux kafka debian

本文转载自: https://blog.csdn.net/qq_39594037/article/details/137789123
版权归原作者 我是日中天 所有, 如有侵权,请联系我们删除。

“Linux下kafka单机版搭建”的评论:

还没有评论