From 4f1e2ea355ae40be54245f934148503766f02da4 Mon Sep 17 00:00:00 2001 From: Dhilip Date: Mon, 7 Aug 2017 23:00:12 +0530 Subject: [PATCH] Introduce hard antiAffinity and simplify config using matchLabels instead of matchExpressions (#1629) --- stable/memcached/Chart.yaml | 2 +- stable/memcached/templates/statefulset.yaml | 19 +++++++++++++------ stable/memcached/values.yaml | 3 +++ 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/stable/memcached/Chart.yaml b/stable/memcached/Chart.yaml index eac84333e6..aee19b2f94 100644 --- a/stable/memcached/Chart.yaml +++ b/stable/memcached/Chart.yaml @@ -1,5 +1,5 @@ name: memcached -version: 1.1.0 +version: 1.2.0 description: Free & open source, high-performance, distributed memory object caching system. keywords: - memcached diff --git a/stable/memcached/templates/statefulset.yaml b/stable/memcached/templates/statefulset.yaml index 48bbf4c80b..966b788044 100644 --- a/stable/memcached/templates/statefulset.yaml +++ b/stable/memcached/templates/statefulset.yaml @@ -20,16 +20,23 @@ spec: spec: affinity: podAntiAffinity: + {{- if eq .Values.AntiAffinity "hard" }} + requiredDuringSchedulingIgnoredDuringExecution: + - topologyKey: "kubernetes.io/hostname" + labelSelector: + matchLabels: + app: {{ template "fullname" . }} + release: {{ .Release.Name | quote }} + {{- else if eq .Values.AntiAffinity "soft" }} preferredDuringSchedulingIgnoredDuringExecution: - weight: 5 podAffinityTerm: + - topologyKey: "kubernetes.io/hostname" labelSelector: - matchExpressions: - - key: app - operator: In - values: - - "{{ template "fullname" . }}" - topologyKey: "kubernetes.io/hostname" + matchLabels: + app: {{ template "fullname" . }} + release: {{ .Release.Name | quote }} + {{- end }} containers: - name: {{ template "fullname" . }} image: {{ .Values.image }} diff --git a/stable/memcached/values.yaml b/stable/memcached/values.yaml index 91912a9ed7..9c201eeb03 100644 --- a/stable/memcached/values.yaml +++ b/stable/memcached/values.yaml @@ -12,6 +12,9 @@ image: memcached:1.4.36-alpine ##Replica count replicaCount: 3 + +## Select AnitAffinity as either hard or soft, default is hard +AntiAffinity: "hard" memcached: ## Various values that get set as command-line flags.