confluentinc / ksql

The database purpose-built for stream processing applications.
https://ksqldb.io
Other
87 stars 1.04k forks source link

Allow more flexibility when starting KSQL Server nodes #849

Open blueedgenick opened 6 years ago

blueedgenick commented 6 years ago

In #774 we added the ability to specify a --queries-file argument when starting a KSQL server, which has the effect of starting the node and running all of the queries in said file.

It also disables the http listener of the server, such that no client can be connected to it. This is sometimes a desirable side-effect (gives a 'locked-down application deployment' whereby the launched queries cannot be interfered with) and sometimes it's undesirable because it removes the ability to connect interactive tooling for troubleshooting or investigative purposes.

In this feature request, i propose we update the above functionality so that supplying a --queries-file argument still runs the contents of the file but no longer has the side-effect of disabling the http listener. Instead we, as part of the same change, introduce a new, separate, command-line flag to disable the http interface if desired e.g --headless=yes or --interactive=no or similar. More complex notions of separate processing pools or similar are excluded from the above proposal. :)

jcooklin commented 6 years ago

This would be helpful.

mbrancato commented 6 years ago

I agree, I think disabling the listener should be optional and/or the server should still read and follow the ksql-server.properties configuration.

apurvam commented 4 years ago

I think this is a good enhancement, and simple to do .. cc @derekjn @MichaelDrogalis

MichaelDrogalis commented 4 years ago

Ditto #283, and +1 for fixing in the nearer term since pull queries require HTTP access to be useful.

derekjn commented 4 years ago

We should definitely do this, I can't think of a compelling reason why we wouldn't want to allow this.