Helm-chart and ExtraVolumes

Hi there,
I am deploying a cluster using your helm-chart package and everything goes ok. Now I would like to make something more advanced, like creating a backup repo, and export this directory as a volume.

Trying something like that:

  elasticsearch.yml: |
    path.repo: "/backup/data/"
extraVolumes: |
  - name: backup-volume
    emptydir: {}

extraVolumeMounts: |
   - name: backup-volume
     mountPath: /backup/data/

How I have to indicate to use a PVC with my default StorageClass to create the backup-volume?

Many thanks

So currently the Helm chart only creates a single Persistent Volume (PV) and Persistent Volume Claim (PVC) per Pod, which is intended to contain all the data pertinent to that specific Elasticsearch node.

When it comes to managing a snapshot volume for Elasticsearch, we would recommend that the PV is created by a cluster administrator.
This is due to the fact that the snapshot filesystem needs to be shared by every Elasticsearch node [1], and therefore pod, within an Elasticsearch cluster. This requires either some kind of shared filesystem that Kubernetes can leverage, and a PV created with a ReadWriteMany accessMode configuration [2], or using a different Elasticsearch repository plugin such as GCS or S3. [3]

If this PVC was managed within the Helm chart, then the end result would be multiple PV's being created, which wouldn't work for an Elasticsearch snapshot repository.

I hope that clarifies things, but please feel free to ask if you need any further assistance.


[1] https://www.elastic.co/guide/en/elasticsearch/reference/current/snapshots-register-repository.html#snapshots-filesystem-repository
[2] https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes
[3] https://www.elastic.co/guide/en/elasticsearch/reference/current/snapshots-register-repository.html#snapshots-repository-plugins

Absolutly, thanks!!!

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.