kiwigrid/helm-charts

[Feature Request] - Thanos Compactor switch to StatefulSet

Closed this issue · 0 comments

Is this a request for help?:

No


Is this a BUG REPORT or FEATURE REQUEST? (choose one):
Feature Request

We want to create a Persistent Volume Claim for the Compactor to allow us to expand the disk space available to the compactor as our data stored by Thanos and pulled down for compaction grows. Currently the Helm chart deploys the [Compactor] (https://thanos.io/components/compact.md/) as a deployment. This doesn't allow for the dynamic provisioning of volumes for the recommended singleton to ensure that it has the recommended 100Gb of disk space for working with.

This would consist of a number of changes:

  • Change the compactor component from a deployment to a statefulSet
  • Remove the replicas option for the compactor - the official guidance from the Thanos docs is that this should only ever be a singleton
  • Add a number of new options for persistentVolumeClaim to allow users to configure the storage class, size etc. as with the existing storeGateway options

Version of Helm and Kubernetes:
Helm: v2.14.3
Kubernetes: v1.12.8

Which chart in which version:
Thanos, 1.2.1

What happened:
N/A

What you expected to happen:
The ability to create and configure a PVC for a Thanos compactor singleton.

How to reproduce it (as minimally and precisely as possible):

Anything else we need to know:

I intend to raise a PR to resolve this issue this evening which I've tested internally already. However if anything in my list of proposed changes above looks like the wrong approach I'm happy to test and modify the approach.