【问题标题】:ksql server failed to start with error - not a valid KSQL serverksql 服务器无法启动并出现错误 - 不是有效的 KSQL 服务器
【发布时间】:2022-08-19 11:09:23
【问题描述】:

在我的本地计算机上安装了独立的 ksqlDB。

在运行 ksql 服务器时,我收到以下错误

Remote server at http://ksqldb-server:8088 does not appear to be a valid KSQL
server. Please ensure that the URL provided is for an active KSQL server.

The server responded with the following error: 
Error issuing GET to KSQL server. path:/info
Caused by: java.net.UnknownHostException: failed to resolve \'ksqldb-server\'
    after 2 queries 
Caused by: failed to resolve \'ksqldb-server\' after 2 queries 

PS:我的 docker-compose.yml 如下所示

---
version: \'2\'

services:
  ksqldb-server:
    image: confluentinc/ksqldb-server:0.23.1
    hostname: ksqldb-server
    container_name: ksqldb-server
    ports:
      - \"8088:8088\"
    environment:
      KSQL_LISTENERS: http://0.0.0.0:8088
      KSQL_BOOTSTRAP_SERVERS: localhost:9092
      KSQL_KSQL_LOGGING_PROCESSING_STREAM_AUTO_CREATE: \"true\"
      KSQL_KSQL_LOGGING_PROCESSING_TOPIC_AUTO_CREATE: \"true\"

  ksqldb-cli:
    image: confluentinc/ksqldb-cli:0.23.1
    container_name: ksqldb-cli
    depends_on:
      - ksqldb-server
    entrypoint: /bin/sh
    tty: true

运行 docker-compose up 时出现以下错误

 [2022-01-11 07:21:54,280] INFO [AdminClient clientId=adminclient-1] Metadata update failed (org.apache.kafka.clients.admin.internals.AdminMetadataManager:235)
ksqldb-server    | org.apache.kafka.common.errors.TimeoutException: Timed out waiting for a node assignment. Call: fetchMetadata
ksqldb-server    | [2022-01-11 07:21:54,282] ERROR Failed to start KSQL (io.confluent.ksql.rest.server.KsqlServerMain:68)
ksqldb-server    | java.lang.RuntimeException: Failed to get Kafka cluster information
ksqldb-server    |  at io.confluent.ksql.services.KafkaClusterUtil.getKafkaClusterId(KafkaClusterUtil.java:107)
ksqldb-server    |  at io.confluent.ksql.rest.server.KsqlRestApplication.buildApplication(KsqlRestApplication.java:669)
ksqldb-server    |  at io.confluent.ksql.rest.server.KsqlServerMain.createExecutable(KsqlServerMain.java:154)
ksqldb-server    |  at io.confluent.ksql.rest.server.KsqlServerMain.main(KsqlServerMain.java:61)
ksqldb-server    | Caused by: java.util.concurrent.TimeoutException
ksqldb-server    |  at java.base/java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1886)
ksqldb-server    |  at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2021)
ksqldb-server    |  at org.apache.kafka.common.internals.KafkaFutureImpl.get(KafkaFutureImpl.java:180)
ksqldb-server    |  at io.confluent.ksql.services.KafkaClusterUtil.getKafkaClusterId(KafkaClusterUtil.java:105)
ksqldb-server    |  ... 3 more
ksqldb-server exited with code 255
^CGracefully stopping... (press Ctrl+C again to force)
Stopping ksqldb-cli    ... done

在 server.properties 文件中,我添加了

listeners=PLAINTEXT://localhost:9092

并重新启动了kafka,但并没有解决问题。

卡夫卡消费者和生产者工作正常。问题仅在于kSQL

任何帮助表示赞赏

  • 请展示您如何运行 ksql 并连接到它。例如,您为什么不连接到http://localhost:8088
  • @OneCricketeer 我没有正确理解你的问题。但在我的问题中添加了更多细节
  • KSQL_BOOTSTRAP_SERVERS: localhost:9092 不正确,因为此地址指的是 KSQL 容器。 KSQL 需要一个正在运行的 Kafka 集群。卡夫卡在哪里运行?如果Kafka不是容器,见stackoverflow.com/questions/68401788/…

标签: apache-kafka ksqldb


【解决方案1】:

我遇到了同样的错误。我遵循了以下教程https://github.com/confluentinc/demo-scene/blob/master/build-a-streaming-pipeline/demo_build-a-streaming-pipeline.adoc。 有没有人解决了这个问题?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-13
    相关资源
    最近更新 更多