无头模式下的 Confluent Platform KSQL

Confluent Platform KSQL in headless mode

我已在此处阅读了 KSQL 部署选项 https://www.confluent.jp/blog/deep-dive-ksql-deployment-options/。所以生产部署推荐使用headless KSQL

但是当 KSQL 禁用通过 REST/CLI 对服务器的交互式访问时,我没有找到任何关于如何在生产(无头)模式下 stop/change 查询的提示。这是否意味着我需要关闭所有 KSQL 服务器才能 add/change 一个查询?

您可以将无外设或交互式部署到生产环境中,具体取决于您的需要。

Headless 旨在允许您以锁定的方式运行 一组已知查询。这可能是具有严格 SLA 的生产系统的要求,您不希望有人连接并启动昂贵的查询或丢弃导致 SLA 被破坏的东西。

如您所见,Headless 部署模式不允许您通过 CLI/API 更改集群的 DDL。相反,围绕更新 SQL 文件和弹跳集群进行某种自动化会更正常。我们知道这里还有很大的改进空间。

请记住,在撰写本文时,KSQL 不支持更新现有的 table 或流。然而,这是我们正在积极努力的事情。在支持之前,通常您应该只向文件添加查询。对现有查询的任何删除或更改都需要仔细测试,因为 KSQL 当前不支持许多更改。始终确保在任何产品部署之前对更改进行彻底测试。或者,一些用户在需要进行更改时启动新集群(希望很少发生!)。一旦赶上,他们就会对客户端进行故障转移并关闭旧集群。同样,这是 KSQL 将看到改进的领域。

希望这对您有所帮助,感谢您使用 KSQL!