Kylin Server modes
Kylin instances are stateless, the runtime state is saved in its “Metadata Store” in hbase (kylin.metadata.url config in conf/kylin.properties). For load balance considerations it is possible to start multiple Kylin instances sharing the same metadata store (thus sharing the same state on table schemas, job status, cube status, etc.)
Each of the kylin instances has a kylin.server.mode entry in conf/kylin.properties specifying the runtime mode, it has three options: 1. “job” for running job engine only 2. “query” for running query engine only and 3 “all” for running both. Notice that only one server can run the job engine(“all” mode or “job” mode), the others must all be “query” mode.
A typical scenario is depicted in the following chart:
Setting up Multiple Kylin REST servers
If you are running Kylin in a cluster or you have multiple Kylin REST server instances, please make sure you have the following property correctly configured in ${KYLIN_HOME}/conf/kylin.properties
-
kylin.rest.servers
List of web servers in use, this enables one web server instance to sync up with other servers. For example: kylin.rest.servers=sandbox1:7070,sandbox2:7070 -
kylin.server.mode
Make sure there is only one instance whose “kylin.server.mode” is set to “all” if there are multiple instances.