Discovery

The Stackable Operator for Apache Druid publishes a discovery ConfigMap, which exposes a client configuration bundle that allows access to the Apache Druid cluster.

The bundle includes several connection strings to Druid services such as the router console and SQL endpoints. The services may be used by other operators or tools to configure their products with access to Druid. This is limited to internal cluster access.

Example

Given the following Druid cluster:

apiVersion: druid.stackable.tech/v1alpha1
kind: DruidCluster
metadata:
  name: simple-derby-druid (1)
  namespace: stackable (2)
spec:
  […​]
1 The name of the Druid cluster, which is also the name of the created discovery ConfigMap.
2 The namespace of the discovery ConfigMap.

The resulting discovery ConfigMap is stackable/simple-derby-druid.

Contents

The stackable/simple-derby-druid discovery ConfigMap contains the following fields where simple-derby-druid represents the name and stackable the namespace of the cluster:

DRUID_AVATICA_JDBC

Contains the connection string for the Avatica JDBC driver to connect to the router:

jdbc:avatica:remote:url=http://simple-derby-druid-router.stackable.svc.cluster.local:8888/druid/v2/sql/avatica/
DRUID_SQLALCHEMY

Contains the connection string for the python SQLAlchemy toolkit:

druid://simple-derby-druid-router.stackable.svc.cluster.local:8888/druid/v2/sql
DRUID_ROUTER

Contains the connection string for the Druid router:

simple-derby-druid-router.stackable.svc.cluster.local:8888