Lens server deployment

This document describes the deployment of lens server in a distributed cluster. Make sure you have finished Install and run doc, before proceeding.

Lens server requires Hive metastore. Hive server is required if Hive is one of the execution engines.

Typical deployment suggested is depicted in the following diagram

Lens Server deployment

It requires HiveMetastore server, HiveServer2 and Lens Server running on different machines.

Dependencies and their versions

  • Requires java 1.6+
  • Requires Hadoop cdh3u5+
  • Requires Hive metastore 0.13+
  • Requires Hive server2 0.13+

Restart and recovery

Lens server should not have problems with Hive Metastore server, Hive Server2 or Hadoop restarts. Lens server can persist its state before going and recover from previous state upon restart.

  • Recoverability
  • To enable lens server with recoverability, i.e. to allow users access queries before restart, lens server should be started with lens.server.restart.enabled set to true. Admin can set this to false if no recoverability is required.
  • Restarting
  • To start the lens server a fresh lens.server.recover.onrestart should be disabled. If it is true, the server will load its persisted state before restart.

Server modes

Lens server can be started in various modes. The server mode can be specified via configuration when it is starting up. Available modes are

  • READ_ONLY : Allows all requests on sesssion resource and Only GET requests on all other resources
  • METASTORE_READONLY : Allows Only GET requests on metastore service and all other requests on other services
  • METASTORE_NODROP: DELETE requests on metastore are not accepted, all other requests are accepted
  • OPEN: This is the default mode. All requests are accepted