ksql启动失败

failed to start ksql

我正在尝试使用 confluent 平台设置 kafka 和 ksql,但是 ksql 无法启动。

我已经按照步骤从 confluent 安装 kafka 和 ksql link https://docs.confluent.io/current/installation/installing_cp/deb-ubuntu.html#systemd-ubuntu-debian-install 我已经跳过了 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 - Streaming SQL engine for Apache Kafka
Loaded: loaded (/lib/systemd/system/confluent-ksql.service; disabled; vendor preset: enabled) Active: active(running)

实际结果:

confluent-ksql.service - Streaming SQL engine for Apache Kafka
Loaded: loaded (/lib/systemd/system/confluent-ksql.service; disabled; vendor preset: enabled) Active: failed (Result: exit-code) since Tue 2019-08-27 15:15:08 IST; 9s ago Docs: http://docs.confluent.io/ Process: 13833 ExecStart=/usr/bin/ksql-server-start /etc/ksql/ksql-server.properties (code=exited, status=255) Main PID: 13833 (code=exited, status=255)

Aug 27 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]: (io.confluent.ksql.util.KsqlConfig:347) Aug 27 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]: [2019-08-27 15:15:07,722] ERROR Failed to start KSQL (io.confluent.ksql.rest.serv Aug 27 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]: io.confluent.ksql.util.KsqlServerException: Could not create the kafka streams st Aug 27 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]: Make sure the directory exists and is writable for KSQL server Aug 27 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]: or its parend directory is writbale by KSQL server Aug 27 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]: or change it to a writable directory by setting 'ksql.streams.state.dir' config Aug 27 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]: at io.confluent.ksql.rest.server.KsqlServerMain.enforceStreamStateDirAvai Aug 27 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]:
at io.confluent.ksql.rest.server.KsqlServerMain.main(KsqlServerMain.java: Aug 27 15:15:08 Mayank-Vostro-3478 systemd[1]: confluent-ksql.service: Main process exited, code=exited, status=255/n/a Aug 27 15:15:08 Mayank-Vostro-3478 systemd[1]: confluent-ksql.service: Failed with result 'exit-code'.

io.confluent.ksql.util.KsqlServerException: Could not create the kafka streams st Aug 27 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]: Make sure the directory exists and is writable for KSQL server Aug 27 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]: or its parend directory is writbale by KSQL server Aug 27 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]: or change it to a writable directory by setting 'ksql.streams.state.dir' config Aug 27 15:15:07 Mayank-Vostro-3478 ksql-server-start[13833]: at

根据上面的错误,是权限问题。用户 运行 KSQL 进程没有在给定位置创建状态目录的写入权限。

您必须授予该用户创建目录的权限或将 ksql.streams.state.dir 更改为用户具有写入权限的某个路径。