diff --git a/stable/memcached/Chart.yaml b/stable/memcached/Chart.yaml index af05c9f28a..ff1241c4c6 100644 --- a/stable/memcached/Chart.yaml +++ b/stable/memcached/Chart.yaml @@ -1,5 +1,5 @@ name: memcached -version: 0.4.1 +version: 1.0.0 description: Free & open source, high-performance, distributed memory object caching system. keywords: - memcached diff --git a/stable/memcached/templates/pdb.yaml b/stable/memcached/templates/pdb.yaml new file mode 100644 index 0000000000..4e3aee5dc8 --- /dev/null +++ b/stable/memcached/templates/pdb.yaml @@ -0,0 +1,13 @@ +apiVersion: policy/v1beta1 +kind: PodDisruptionBudget +metadata: + name: {{ template "fullname" . }} +spec: + selector: + matchLabels: + app: {{ template "fullname" . }} + chart: "{{ .Chart.Name }}-{{ .Chart.Version }}" + release: "{{ .Release.Name }}" + heritage: "{{ .Release.Service }}" + minAvailable: {{ .Values.replicaCount }} + \ No newline at end of file diff --git a/stable/memcached/templates/deployment.yaml b/stable/memcached/templates/statefulset.yaml similarity index 67% rename from stable/memcached/templates/deployment.yaml rename to stable/memcached/templates/statefulset.yaml index 469a1688df..a99362c1ab 100644 --- a/stable/memcached/templates/deployment.yaml +++ b/stable/memcached/templates/statefulset.yaml @@ -1,5 +1,5 @@ -apiVersion: extensions/v1beta1 -kind: Deployment +apiVersion: apps/v1beta1 +kind: StatefulSet metadata: name: {{ template "fullname" . }} labels: @@ -8,7 +8,8 @@ metadata: release: "{{ .Release.Name }}" heritage: "{{ .Release.Service }}" spec: - replicas: 1 + serviceName: {{ template "fullname" . }} + replicas: {{ .Values.replicaCount }} template: metadata: labels: @@ -17,6 +18,18 @@ spec: release: "{{ .Release.Name }}" heritage: "{{ .Release.Service }}" spec: + affinity: + podAntiAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + - weight: 5 + podAffinityTerm: + labelSelector: + matchExpressions: + - key: app + operator: In + values: + - "{{ template "fullname" . }}" + topologyKey: "kubernetes.io/hostname" containers: - name: {{ template "fullname" . }} image: {{ .Values.image }} @@ -41,4 +54,4 @@ spec: initialDelaySeconds: 5 timeoutSeconds: 1 resources: -{{ toYaml .Values.resources | indent 10 }} +{{ toYaml .Values.resources | indent 10 }} \ No newline at end of file diff --git a/stable/memcached/templates/svc.yaml b/stable/memcached/templates/svc.yaml index 41a4054d63..23eacbc239 100644 --- a/stable/memcached/templates/svc.yaml +++ b/stable/memcached/templates/svc.yaml @@ -8,6 +8,7 @@ metadata: release: "{{ .Release.Name }}" heritage: "{{ .Release.Service }}" spec: + clusterIP: None ports: - name: memcache port: 11211 diff --git a/stable/memcached/values.yaml b/stable/memcached/values.yaml index 2234d21443..d5fbd25ab7 100644 --- a/stable/memcached/values.yaml +++ b/stable/memcached/values.yaml @@ -1,7 +1,7 @@ ## Memcached image and tag ## ref: https://hub.docker.com/r/library/memcached/tags/ ## -image: memcached:1.4.32 +image: memcached:1.4.36-alpine ## Specify a imagePullPolicy ## 'Always' if imageTag is 'latest', else set to 'IfNotPresent' @@ -10,12 +10,15 @@ image: memcached:1.4.32 # imagePullPolicy: # +##Replica count +replicaCount: 3 + memcached: ## Various values that get set as command-line flags. ## ref: https://github.com/memcached/memcached/wiki/ConfiguringServer#commandline-arguments ## maxItemMemory: 64 - #verbosity: vvv + verbosity: v ## Configure resource requests and limits ## ref: http://kubernetes.io/docs/user-guide/compute-resources/