Hi Matt, Running Drill with drillbit.sh mostly does a bunch of Java setup, then invokes a main routine that runs Drill as a service. Nothing special about that.
Drill's "embedded" mode runs without ZK. Technically, it creates an in-memory "cluster coordinator" that coordinates only with itself. The "main" for embedded mode is the Sqlline process (which starts Drill via a JDBC call.) Many of Drill's unit tests create an in-process server using the in-memory cluster coordinator. Although tests normally disable the embedded web server, it is possible to enable the web server, as is done by one or two tests. Depending on what you're trying to do, you could probably cobble something together along these lines. A bit more ambitious option is to add a Drill command-line option to run as a service (with all the usual Java and logging setup), but use the single-node, non-ZK cluster coordinator. - Paul On Tue, Sep 29, 2020 at 2:43 PM Matt Keranen <[email protected]> wrote: > Is it possible to run a single node drillbit without Zookeeper, as a > "service" without the need for coordination across multiple nodes? > > `zk.connect: "local"` is not accepted as the equivalent of "zk=local" with > drill-embedded. >
