Run Lenses with additional plugins in kubernetes

Question

How can I load additional plugins (UDFs, serde, etc.) in Lenses?

Answer

To load these additional jars, Lenses needs to find them in /data/plugins path as described here .

In kubernetes, you need Volume linked to a Persistent Volume Claim containing the actual jar files and this Volume should be mounted in Lenses pod.

Create this volume using the following defintion as sample:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: lenses-plugins
spec:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 1Gi


Then copy the jars in that Volume and do the appropriate changes in Lenses Helm Chart `values.yaml` file to mount it in the correct location:
additionalVolumes:
  - name: lenses-plugins
    persistentVolumeClaim:
      claimName: lenses-plugins
additionalVolumeMounts:
  - name: lenses-plugins
    mountPath: "/data/plugins"