mirror of
https://github.com/helm/charts.git
synced 2026-08-23 22:37:45 +00:00
Make memcached a statefulset, add anti-affinity and podDisruptionBudget (#933)
* Make memcached a statefulset, add anti-affinity and podDisruptionBudget * Address review comments * Make the chart 1.0.0, as deploment to SS is a breaking change * Convert anti-affinity a proper yaml format
This commit is contained in:
committed by
Adnan Abdulhussein
parent
b19d6cd354
commit
6480d9e192
@@ -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
|
||||
|
||||
@@ -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 }}
|
||||
|
||||
+17
-4
@@ -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 }}
|
||||
@@ -8,6 +8,7 @@ metadata:
|
||||
release: "{{ .Release.Name }}"
|
||||
heritage: "{{ .Release.Service }}"
|
||||
spec:
|
||||
clusterIP: None
|
||||
ports:
|
||||
- name: memcache
|
||||
port: 11211
|
||||
|
||||
@@ -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/
|
||||
|
||||
Reference in New Issue
Block a user