kafka在linux下的安装及配置

kafka在linux下的安装及配置

安装

  • 下载
    可以选择下载源码包或者打包好的二进制文件。
  • 安装
    将上面下载好的文件解压缩即可,linux 下为了方便启动可以将bin目录配置到环境变量中

配置

  • 依赖服务
    kafka 是依赖 zookeeper 服务的,所以需要启动 kafka 首先要安装zookeeper,这里不做介绍。你也可以使用已有的 zookeeper 服务,只需修改 kafka 启动配置的参数即可,修改方式在下面。
  • 启动配置
    kafka 启动需要指定配置文件,配置文件在config目录下,使用默认配置直接执行命令:
$kafka_home/bin/kafka-server-start.sh /$kafka_home/config/server.properties

$kafka_home:指的是你的kafka所在的目录,如果需要使用自定义配置启动,修改后面指定的配置文件即可,当然也可以直接修改上面的配置文件内容。

打开上面的配置文件:

############################# Zookeeper #############################

# Zookeeper connection string (see zookeeper docs for details).
# This is a comma separated host:port pairs, each corresponding to a zk
# server. e.g. "127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002".
# You can also append an optional chroot string to the urls to specify the
# root directory for all kafka znodes.
zookeeper.connect=localhost:2181

# Timeout in ms for connecting to zookeeper
zookeeper.connection.timeout.ms=6000

可以看到,这里有 zookeeper 的相关配置,如果需要修改,直接将其改成你已有的 zk 服务地址即可,其他详细配置,这里就不做介绍了,可以去查询相关文档。

在 linux 系统下,我本人的习惯是将软件放置到/usr/local目录下,但是这个目录只有 root 用户拥有写权限,所以,当将 kafka 放置到这个目录下时,启动会出现提示:权限不足,无法创建日志目录的错误。因为 kafka 默认日志是输出在$kafka_home/logs目录下,这时,我们需要修改kafka日志的输出目录。

  • 修改方法如下:
  1. 打开$kafka_home/bin/kafka-run-class.sh文件
  2. 找到base_dir所在位置
# Exclude jars not necessary for running commands.
regex="(-(test|test-sources|src|scaladoc|javadoc)\.jar|jar.asc)$"
should_include_file() {
  if [ "$INCLUDE_TEST_JARS" = true ]; then
    return 0
  fi
  file=$1
  if [ -z "$(echo "$file" | egrep "$regex")" ] ; then
    return 0
  else
    return 1
  fi
}

base_dir=$(dirname $0)/..

base_dir这一行下面新增一行:

LOG_DIR=/自定义目录/logs

将上面的自定义目录更换成你需要的位置即可, 注意:一定要是普通用户有权限读写的目录。 这里如果有兴趣的可以查看下他的脚本代码,就可以知道为什么加上这一行代码就可以修改它的日志输出目录了。

修改完成,重启 kafka 发现没有提示错误信息了,然后去你指定的日志输出目录查看,会发现创建了一些日志文件。以后需要查询日志,就可以直接来这里查询了,方便开发。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值