apache-kafka - 无法启动 ksql
问题描述
我正在尝试使用融合平台设置 kafka 和 ksql,但 ksql 无法启动。
我已按照使用此链接https://docs.confluent.io/current/installation/installing_cp/deb-ubuntu.html#systemd-ubuntu-debian-install从 confluent 安装 kafka 和 ksql 的步骤操作 我跳过了 zookeeper 配置,因为我们没有使用多个服务器和控制中心部分。在完成所有操作后,我按此顺序启动了zookeeper、kafka、schema-registry、kafka-connect、kafka-rest、ksql。使用命令检查状态时
_sudo systemctl status confluent*_
ksql failed to start, while everything else is running.
在进入时cd /etc/ksql/ksql-server.properties
(#------ Endpoint config -------)
listeners=http://0.0.0.0:8088
ksql.logging.processing.topic.auto.create=true
ksql.logging.processing.stream.auto.create=true
bootstrap.servers=localhost:9092
注意:我从配置文件中删除了注释部分,因为 (#) 它在此处显示为标题。
预期结果:
confluent-ksql.service - Apache Kafka 的流式 SQL 引擎
已加载:已加载(/lib/systemd/system/confluent-ksql.service;已禁用;供应商预设:已启用) 活动:活动(运行)
实际结果:
confluent-ksql.service - Apache Kafka 的流式 SQL 引擎
已加载:已加载(/lib/systemd/system/confluent-ksql.service;已禁用;供应商预设:已启用)活动:自 2019 年星期二以来失败(结果:退出代码)- 08-27 15:15:08 IST;9 秒前 文档:http ://docs.confluent.io/ 进程:13833 ExecStart=/usr/bin/ksql-server-start /etc/ksql/ksql-server.properties (code=exited, status=255) Main PID :13833(代码=退出,状态=255)8 月 27 日 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]: (io.confluent.ksql.util.KsqlConfig:347) 8 月 27 日 15:15:07 Mayank-Vostro-3478 ksql-server-开始[13833]:[2019-08-27 15:15:07,722] 错误无法启动 KSQL(io.confluent.ksql.rest.serv 8 月 27 日 15:15:07 Mayank-Vostro-3478 ksql-server-start [ 13833]:io.confluent.ksql.util.KsqlServerException:无法创建卡夫卡流 st Aug 27 15:15:07 Mayank-Vostro-3478 ksql-server-start [13833]:确保目录存在并且可写KSQL 服务器 8 月 27 日 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]:或其父目录由 KSQL 服务器写入 8 月 27 日 15:15:07 Mayank-Vostro-3478 ksql-server-start[ 13833]:或通过设置 'ksql.streams.state.dir' config 8 月 27 日 15:15 将其更改为可写目录:07 Mayank-Vostro-3478 ksql-server-start[13833]:在 io.confluent.ksql.rest.server.KsqlServerMain.enforceStreamStateDirAvai 8 月 27 日 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]:
在 io.confluent.ksql.rest.server.KsqlServerMain.main(KsqlServerMain.java: Aug 27 15:15:08 Mayank-Vostro-3478 systemd[1]: confluent-ksql.service: 主进程退出,代码=退出, status=255/n/a 8 月 27 日 15:15:08 Mayank-Vostro-3478 systemd[1]:confluent-ksql.service:失败,结果为“退出代码”。
解决方案
io.confluent.ksql.util.KsqlServerException:无法创建 kafka 流 st 8 月 27 日 15:15:07 Mayank-Vostro-3478 ksql-server-start [13833]:确保该目录存在并且对于 KSQL 服务器是可写的27 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]: 或其父目录由 KSQL 服务器写入 8 月 27 日 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]:或通过设置 'ksql.streams.state.dir' 配置将其更改为可写目录 Aug 27 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]: at
根据上述错误,这是权限问题。运行 KSQL 进程的用户没有在给定位置创建状态目录的写入权限。
您必须授予该用户创建目录的权限或将其更改为ksql.streams.state.dir
用户具有写入权限的某个路径。
推荐阅读
- odbc - 使用 ODBC 从 Tally 中提取日帐/交易数据
- sapui5 - 即使 onAfterRender 也没有加载 JSON
- swift - 单例模式初始化调用一次
- php - 如何制作有效的 hmac 身份验证标头
- windows - 使用 WIX 工具集创建 Windows Installer msi,不会在注册表中留下任何痕迹
- java - 爪哇。使用 drjava 编译器给我的错误比没有其他编译器给我的错误
- mysql - 如何在 MySQL JOIN 的同一列中搜索多个值?
- ruby-on-rails - 轨道应用的 3D 查看器
- sql - 如何进行超过时间期限的查询?
- java - 根据数据库中的 ResultSet,使用每个可点击的按钮填充 HBox