Apache Hadoop生态部署-kafka单机安装

目录

Apache Hadoop生态-目录汇总-持续更新

一:安装包准备

二:安装与常用配置

2.1:下载解压安装包

2.2:配置环境变量

2.3:配置修改server.properties

三:维护kafka

3.1 编写维护脚本

3.2 启动kafka

3.3 关闭kafka

3.4 错误日志

四:测试


Apache Hadoop生态-目录汇总-持续更新

系统环境:centos7

Java环境:Java8

单机版的kafka也需要依赖zookeeper

参考:Apache Hadoop生态部署-zookeeper单机安装

需要先启动zookeeper

[root@node100 local]# jps

11903 QuorumPeerMa

一:安装包准备

方式1)官网下载:Apache Kafka

注意:kafka_2.12-2.2.0 2.12是scala版本,2.2.0是kafka版本

方式2)安装包--百度网盘

链接:https://pan.baidu.com/s/1QiwBOTcgK8IwZ5eprKBhLg?pwd=yyds

提取码:yyds

二:安装与常用配置

2.1:下载解压安装包

1:下载安装包
cd /tmp
sudo wget https://archive.apache.org/dist/kafka/2.2.0/kafka_2.12-2.2.0.tgz
或者百度网盘上传到这里

2:解压到/usr/local下
sudo tar -zxvf /tmp/kafka_2.12-2.2.0.tgz -C /usr/local/

2.2:配置环境变量

sudo vim /etc/profile.d/kafka_env.sh
#KAFKA_HOME
export KAFKA_HOME=/usr/local/kafka_2.12-2.2.0
export PATH=$PATH:$KAFKA_HOME/bin

执行source /etc/profile使环境变量生效

2.3:配置修改server.properties

log.dirs-实际存储的是kafka的暂存数据, kafka会自己创建一个logs的目录存放日志的

# 创建文件夹 -存放topic信息
sudo mkdir $KAFKA_HOME/data


sudo vim $KAFKA_HOME/config/server.properties

#broker 的全局唯一编号,不能重复
broker.id=0

# 允许删除topic, 如果不设置无法彻底删除,只是标记删除 
# 如果没有设置则调用kafka 的delete命令无法真正将topic删除,而是显示(marked for deletion)
delete.topic.enable=true

#配置Zookeeper地址,数据存放zookeeper位置
zookeeper.connect=node100:2181/kafka

#kafka 运行日志存放的路径 --实际存储的是kafka的数据
log.dirs=/usr/local/kafka_2.12-2.2.0/data

#在log.retention.hours=168 后新增下面三项
message.max.byte=5242880
default.replication.factor=1
replica.fetch.max.bytes=5242880

#处理网络请求的线程数量
num.network.threads=3
#用来处理磁盘 IO 的现成数量
num.io.threads=8
#发送套接字的缓冲区大小
socket.send.buffer.bytes=102400
#接收套接字的缓冲区大小
socket.receive.buffer.bytes=102400
#请求套接字的缓冲区大小
socket.request.max.bytes=104857600
#topic 在当前 broker 上的分区个数
num.partitions=1
#用来恢复和清理 data 下数据的线程数量
num.recovery.threads.per.data.dir=1
#segment 文件保留的最长时间,超时将被删除
log.retention.hours=168

三:维护kafka

3.1 编写维护脚本

sudo vim $KAFKA_HOME/bin/mykafka.sh

#!/bin/bash
if [ $# -lt 1 ]
then
    echo "No Args Input..."
    exit ;
fi

case $1 in
"start")
   for i in node100
    do
        echo ---------- kafka $i 启动 ------------
        ssh $i "/usr/local/kafka_2.12-2.2.0/bin/kafka-server-start.sh -daemon /usr/local/kafka_2.12-2.2.0/config/server.properties"
    done
;;
"stop")
    for i in node100
    do
        echo ---------- kafka $i 关闭 ------------
        ssh $i "/usr/local/kafka_2.12-2.2.0/bin/kafka-server-stop.sh /usr/local/kafka_2.12-2.2.0/config/server.properties"
    done
;;
*)
    echo "Input Args Error..."
;;
esac

添加可执行权限

chmod +x $KAFKA_HOME/bin/mykafka.sh

3.2 启动kafka

mykafka.sh start

3.3 关闭kafka

mykafka.sh stop
会有些延迟

3.4 错误日志

$KAFKA_HOME/logs/server.log

四:测试

查看topic
kafka-topics.sh --zookeeper node100:2181/kafka --list

创建topic
kafka-topics.sh --zookeeper node100:2181/kafka --create --replication-factor 1 --partitions 1 --topic test_topic_name

发送数据
kafka-console-producer.sh --broker-list node100:9092 --topic test_topic_name

从头消费数据
kafka-console-consumer.sh --bootstrap-server  node100:9092 --topic test_topic_name --from-beginning  

猜你喜欢

转载自blog.csdn.net/web_snail/article/details/129195673