目的
部署 kafka 集群
提供 falcon-transfer 使用
kafka 需要使用 zookeeper 集群
共享 hadoop 使用中的 zookeeper 即可
参考
软件下载
官方网站
下载 kafka_2.13-2.6.0.tgz
参考信息
需求
java 环境
Zookeeper 环境 参考 zookeeper 集群部署方法
部署
kafka 环境变量
/etc/profile
KAFKA_HOME=/apps/svr/kafka
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$ZOOKEEPER_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HBASE_HOME/bin:$KAFKA_HOME/bin
export HBASE_HOME JAVA_HOME JRE_HOME CLASS_PATH PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL ZOOKEEPER_HOME HADOOP_HOME KAFKA_HOME
解压
# tar xf /usr/src/kafka_2.13-2.6.0.tgz -C /apps/svr/
# cd /apps/svr/
# ln -s kafka_2.13-2.6.0 kafka
配置
/apps/svr/kafka/config/server.properties
broker.id=0 # 注意, 每个服务器需要独立的 ID
listeners=PLAINTEXT://xxx.xxx.xxx.22:9092 # 监听地址
advertised.listeners=PLAINTEXT://ns-yun-020022.133.com: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=/apps/svr/kafka/logs
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=ns-yun-020022.133.com:2181,ns-yun-020023.133.com:2181,ns-yun-020024.133.com:2181 # zookeeper 连接
zookeeper.connection.timeout.ms=18000
group.initial.rebalance.delay.ms=0
创建日志目录
mkdir /apps/svr/kafka/logs -p
设定启动内存
/apps/svr/kafka/bin/kafka-server-start.sh
if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
export KAFKA_HEAP_OPTS="-Xmx4G -Xms4G"
fi