Service exposition with listener classes

History services

The operator deploys a Listener for each spark history pod. The default is to only being accessible from within the Kubernetes cluster, but this can be changed by setting .spec.nodes.config.listenerClass:

apiVersion: spark.stackable.tech/v1alpha1
kind: SparkHistoryServer
metadata:
  name: spark-history
spec:
  nodes:
    config:
      listenerClass: external-unstable  (1)
1 Specify one of external-stable, external-unstable, cluster-internal (the default setting is cluster-internal).

For the example above, the listener operator creates a service named spark-history-node-default where spark-history is the name of the SparkHistoryServer, node is the service role (the only service role available for history servers) and default is the role group.

Connect services

Connect pods can be exposed using listener classes in exactly tha same fashion as history servers.