安装Kafka


前提条件:

  • 已安装 jdk 环境

安装zookeeper

下载zookeeper

wget --no-check-certificate https://dlcdn.apache.org/zookeeper/zookeeper-3.6.3/apache-zookeeper-3.6.3-bin.tar.gz
sudo tar xf apache-zookeeper-3.6.3-bin.tar.gz -C /opt/
sudo chown -R kafka.kafka /opt/apache-zookeeper-3.6.3-bin/

设置环境变量

cat < /dev/null           
ZK_HOME=/opt/apache-zookeeper-3.6.3-bin
PATH=\$ZK_HOME/bin:\$PATH
EOF

创建数据目录

sudo mkdir /app
sudo chmod 777 /app
mkdir /app/zookeeper

修改配置文件

cd /opt/apache-zookeeper-3.6.3-bin
cp conf/zoo_sample.cfg conf/zoo.cfg

egrep -v "^$|^#" /opt/apache-zookeeper-3.6.3-bin/conf/zoo.cfg 
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/app/zookeeper
clientPort=2181
server.0=192.168.32.187:2888:3888
server.1=192.168.32.188:2888:3888
server.2=192.168.32.189:2888:3888

# 192.168.32.187主机
echo 0 > /app/zookeeper/myid
# 192.168.32.188主机
echo 1 > /app/zookeeper/myid
# 192.168.32.189主机
echo 2 > /app/zookeeper/myid

dataDir:zookeeper的数据目录
clientPort:zookeeper服务的端口
server.num:zookeeper的集群地址,其中num是数字。对应的每个节点的myid

启动服务

zkServer.sh start

连接zk

zkCli.sh -server 192.168.32.187:2181

停止服务

zkServer.sh stop

安装Kafka

下载Kafka

wget --no-check-certificate https://dlcdn.apache.org/kafka/3.1.0/kafka_2.13-3.1.0.tgz
sudo tar xf kafka_2.13-3.1.0.tgz -C /opt/
sudo chown -R kafka.kafka /opt/kafka_2.13-3.1.0/

创建数据目录

mkdir /app/kafka

设置环境变量

cat < /dev/null
KAFKA_HOME=/opt/kafka_2.13-3.1.0
PATH=\$KAFKA_HOME/bin:\$PATH
EOF

修改配置文件

egrep -v "^$|^#" /opt/kafka_2.13-3.1.0/config/server.properties 
broker.id=2
listeners=PLAINTEXT://192.168.32.189:9092
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/app/kafka
num.partitions=1
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=192.168.32.187:2181,192.168.32.188:2181,192.168.32.189:2181
zookeeper.connection.timeout.ms=18000
group.initial.rebalance.delay.ms=0

broker.id:broker的id编号
listeners:监听地址以及端口
log.dirs:数据目录
zookeeper.connect:zookeeper的地址
其他配置均是默认值

启动服务

kafka-server-start.sh -daemon /opt/kafka_2.13-3.1.0/config/server.properties

停止服务

kill -15 `jps | awk '/Kafka/ {print $1}'`