diff --git a/incubator/cassandra/Chart.yaml b/incubator/cassandra/Chart.yaml index 20657b068c..c24e23e965 100644 --- a/incubator/cassandra/Chart.yaml +++ b/incubator/cassandra/Chart.yaml @@ -1,5 +1,5 @@ name: cassandra -version: 0.8.0 +version: 0.9.0 appVersion: 3.11.3 description: Apache Cassandra is a free and open-source distributed database management system designed to handle large amounts of data across many commodity servers, providing diff --git a/incubator/cassandra/README.md b/incubator/cassandra/README.md index feffd14cf6..06204dfb8e 100644 --- a/incubator/cassandra/README.md +++ b/incubator/cassandra/README.md @@ -105,6 +105,7 @@ The following table lists the configurable parameters of the Cassandra chart and | `resources` | CPU/Memory resource requests/limits | Memory: `4Gi`, CPU: `2` | | `service.type` | k8s service type exposing ports, e.g. `NodePort`| `ClusterIP` | | `podManagementPolicy` | podManagementPolicy of the StatefulSet | `OrderedReady` | +| `podDisruptionBudget` | Pod distruption budget | `{}` | | `podAnnotations` | pod annotations for the StatefulSet | `{}` | | `updateStrategy.type` | UpdateStrategy of the StatefulSet | `OnDelete` | | `livenessProbe.initialDelaySeconds` | Delay before liveness probe is initiated | `90` | diff --git a/incubator/cassandra/templates/pdb.yaml b/incubator/cassandra/templates/pdb.yaml new file mode 100644 index 0000000000..2e539bdb29 --- /dev/null +++ b/incubator/cassandra/templates/pdb.yaml @@ -0,0 +1,17 @@ +{{- if .Values.podDisruptionBudget -}} +apiVersion: policy/v1beta1 +kind: PodDisruptionBudget +metadata: + labels: + app: {{ template "cassandra.name" . }} + chart: {{ .Chart.Name }}-{{ .Chart.Version }} + heritage: {{ .Release.Service }} + release: {{ .Release.Name }} + name: {{ template "cassandra.fullname" . }} +spec: + selector: + matchLabels: + app: {{ template "cassandra.name" . }} + release: {{ .Release.Name }} +{{ toYaml .Values.podDisruptionBudget | indent 2 }} +{{- end -}} diff --git a/incubator/cassandra/values.yaml b/incubator/cassandra/values.yaml index 380c2a589b..31e13b43ae 100644 --- a/incubator/cassandra/values.yaml +++ b/incubator/cassandra/values.yaml @@ -104,6 +104,11 @@ podSettings: # Change this to give pods more time to properly leave the cluster when not using persistent storage. terminationGracePeriodSeconds: 30 +## Pod distruption budget +podDisruptionBudget: {} + # maxUnavailable: 1 + # minAvailable: 2 + podManagementPolicy: OrderedReady updateStrategy: type: OnDelete