【3】Kafka安装及部署

十年热恋 提交于 2020-01-25 01:04:01

一、环境准备

  • Linux操作系统
  • Java运行环境(1.6或以上)
  • zookeeper 集群环境,可参照 Zookeeper集群部署 。
  • 服务器列表:

配置主机名映射。

vi /etc/hosts
##添加如下内容
168.5.7.75 server1
168.5.7.76 server2
168.5.7.77 server3

二、kafka集群部署及启动

2.1、介质准备

分别登录server1、server2、server3执行,操作、配置相同:

##更新或安装wget命令
yum -y install wget
##创建安装目录
mkdir -p /usr/local/services/kafka
##获取安装包kafka_2.11-2.3.0.tgz
wget http://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.3.0/kafka_2.11-2.3.0.tgz
##解压缩kafka_2.11-2.3.0.tgz
tar -zxvf kafka_2.11-2.3.0.tgz

2.2、配置环境变量

分别登录server1、server2、server3执行,操作、配置相同:

export KAFKA_HOME=/usr/local/services/kafka/kafka_2.11-2.3.0
export PATH=$PATH:$KAFKA_HOME/bin
source /etc/profile

说明:再任一路径下输入 kafka 按 Tab 键后会补全 Kafka 相关脚本.sh,即Kafka 环境变量配置成功。 因 Kafka 脚本运行时会加载 /config 路径下的相关配置文件,故当不在 Kafka 安装目录 bin 下执行相关脚本时, 需要指定配置文件绝对路径。

2.3、修改配置文件

登录server1执行操作:

cd $KAFKA_HOME/config
cp server.properties server.properties.$(date +%Y%m%d)
vi server.properties
##修改文件内配置如下
broker.id=1
log.dirs=/opt/data/kafka-logs
port=9093
zookeeper.connect=server1:2181,server2:2181,server3:2181

登录server2执行操作:

cd $KAFKA_HOME/config
cp server.properties server.properties.$(date +%Y%m%d)
vi server.properties
##修改文件内配置如下
broker.id=2
log.dirs=/opt/data/kafka-logs
port=9093
zookeeper.connect=server1:2181,server2:2181,server3:2181

登录server3执行操作:

cd $KAFKA_HOME/config
cp server.properties server.properties.$(date +%Y%m%d)
vi server.properties
##修改文件内配置如下
broker.id=3
log.dirs=/opt/data/kafka-logs
port=9093
zookeeper.connect=server1:2181,server2:2181,server3:2181

说明:broker.id 用于指定代理的 id,需保证同一个集群下 broker.id 要唯一;log.dirs 指定日志存储路径。

2.4、启动服务

分别登录server1、server2、server3执行,操作、配置相同:

cd $KAFKA_HOME/bin
## -daemon :守护进程方式启动
kafka-server-start.sh -daemon ../config/server.properties

连接测试

#登录 ZooKeeper
cd /usr/local/services/zookeeper/zookeeper-3.4.13/bin
./zkCli.sh -server server1:2181
ls /

日志查看

##查看 KafkaServer 启动 日志
cat $KAFKA_HOME/logs/server.log

参考资料

参考书籍:Kafka入门与实践

  • 作者: DeepInThought
    出处: https://www.cnblogs.com/DeepInThought
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
    该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!