diff --git a/stable/rabbitmq-ha/Chart.yaml b/stable/rabbitmq-ha/Chart.yaml index 6846bb31ce..4ff6e6d7b2 100644 --- a/stable/rabbitmq-ha/Chart.yaml +++ b/stable/rabbitmq-ha/Chart.yaml @@ -1,7 +1,7 @@ name: rabbitmq-ha apiVersion: v1 appVersion: 3.8.0 -version: 1.38.2 +version: 1.39.0 description: Highly available RabbitMQ cluster, the open source message broker software that implements the Advanced Message Queuing Protocol (AMQP). keywords: diff --git a/stable/rabbitmq-ha/README.md b/stable/rabbitmq-ha/README.md index 6e5ee776c8..1b636ff55b 100644 --- a/stable/rabbitmq-ha/README.md +++ b/stable/rabbitmq-ha/README.md @@ -98,8 +98,9 @@ and their default values. | `persistentVolume.name` | Persistent volume name | `data` | | `persistentVolume.size` | Persistent volume size | `8Gi` | | `persistentVolume.storageClass` | Persistent volume storage class | `-` | -| `podAntiAffinity` | Pod antiaffinity, `hard` or `soft` | `soft` | -| `podAntiAffinityTopologyKey` | TopologyKey for antiaffinity, default is hostname +| `podAntiAffinity` | Pod anti-affinity, `hard` or `soft` | `soft` | +| `podAntiAffinityTopologyKey` | TopologyKey for anti-affinity, default is hostname | `"kubernetes.io/hostname"` | +| `affinity` | Affinity settings. If specified, this will disable `podAntiAffinity` settings. If you still need anti-affinity, you must include the configuration here. | `{}` | | `podDisruptionBudget` | Pod Disruption Budget rules | `{}` | | `podManagementPolicy` | Whether the pods should be restarted in parallel or one at a time. Either `OrderedReady` or `Parallel`. | `OrderedReady` | | `prometheus.exporter.enabled` | Configures Prometheus Exporter to expose and scrape stats | `false` | diff --git a/stable/rabbitmq-ha/templates/statefulset.yaml b/stable/rabbitmq-ha/templates/statefulset.yaml index 257053f9f5..478fd398cf 100644 --- a/stable/rabbitmq-ha/templates/statefulset.yaml +++ b/stable/rabbitmq-ha/templates/statefulset.yaml @@ -264,6 +264,12 @@ spec: {{- if .Values.schedulerName }} schedulerName: "{{ .Values.schedulerName }}" {{- end }} + {{- if .Values.affinity }} + affinity: + {{- with .Values.affinity }} + {{- toYaml . | nindent 8 }} + {{- end }} + {{- else }} {{- if eq .Values.podAntiAffinity "hard" }} affinity: podAntiAffinity: @@ -285,6 +291,8 @@ spec: app: {{ template "rabbitmq-ha.name" . }} release: {{ .Release.Name }} {{- end }} + {{- end }} + {{- if .Values.priorityClassName }} priorityClassName: {{ .Values.priorityClassName }} {{- end }} diff --git a/stable/rabbitmq-ha/values.yaml b/stable/rabbitmq-ha/values.yaml index 85f4e026d2..bece51edf1 100644 --- a/stable/rabbitmq-ha/values.yaml +++ b/stable/rabbitmq-ha/values.yaml @@ -417,6 +417,12 @@ statefulSetAnnotations: {} podAntiAffinity: soft podAntiAffinityTopologyKey: "kubernetes.io/hostname" +## Affinity settings +## Defining 'affinity' will disable any podAntiAffinity settings. +## If you still need anti-affinity, you must include the configuration here. +## +affinity: {} + ## Create default configMap ## existingConfigMap: false