diff --git a/stable/aerospike/Chart.yaml b/stable/aerospike/Chart.yaml index 96a8d88d05..cbab8a6ee3 100644 --- a/stable/aerospike/Chart.yaml +++ b/stable/aerospike/Chart.yaml @@ -1,11 +1,11 @@ -appVersion: v3.14.1.2 +appVersion: v4.5.0.5 description: A Helm chart for Aerospike in Kubernetes name: aerospike keywords: - aerospike - big-data home: http://aerospike.com -version: 0.2.1 +version: 0.2.3 icon: https://s3-us-west-1.amazonaws.com/aerospike-fd/wp-content/uploads/2016/06/Aerospike_square_logo.png sources: - https://github.com/aerospike/aerospike-server diff --git a/stable/aerospike/README.md b/stable/aerospike/README.md index 112448ea55..f2b4267625 100644 --- a/stable/aerospike/README.md +++ b/stable/aerospike/README.md @@ -2,9 +2,9 @@ This is an implementation of Aerospike StatefulSet found here: - * https://github.com/aerospike/aerospike-kubernetes +* -## Pre Requisites: +## Pre Requisites * Kubernetes 1.7+ with beta APIs enabled and support for statefulsets @@ -14,11 +14,11 @@ This is an implementation of Aerospike StatefulSet found here: ## StatefulSet Details -* https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/ +* ## StatefulSet Caveats -* https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#limitations +* ## Chart Details @@ -30,9 +30,9 @@ This chart will do the following: To install the chart with the release name `my-aerospike` using a dedicated namespace(recommended): -``` -$ helm repo add incubator http://storage.googleapis.com/kubernetes-charts-incubator -$ helm install --name my-aerospike --namespace aerospike stable/aerospike +```sh +helm repo add incubator http://storage.googleapis.com/kubernetes-charts-incubator +helm install --name my-aerospike --namespace aerospike stable/aerospike ``` The chart can be customized using the following configurable parameters: @@ -40,7 +40,7 @@ The chart can be customized using the following configurable parameters: | Parameter | Description | Default | | ------------------------------- | ----------------------------------------------------------------| -----------------------------| | `image.repository` | Aerospike Container image name | `aerospike/aerospike-server` | -| `image.tag` | Aerospike Container image tag | `3.14.1.2` | +| `image.tag` | Aerospike Container image tag | `4.5.0.5` | | `image.pullPolicy` | Aerospike Container pull policy | `Always` | | `replicaCount` | Aerospike Brokers | `1` | | `command` | Custom command (Docker Entrypoint) | `[]` | @@ -49,19 +49,19 @@ The chart can be customized using the following configurable parameters: | `confFile` | Config filename. This file should be included in the chart path | `aerospike.conf` | | `resources` | Resource requests and limits | `{}` | | `nodeSelector` | Labels for pod assignment | `{}` | -| `terminationGracePeriodSeconds` | Wait time before forcefully terminating container | `30` | +| `terminationGracePeriodSeconds` | Wait time before forcefully terminating container | `30` | Specify parameters using `--set key=value[,key=value]` argument to `helm install` Alternatively a YAML file that specifies the values for the parameters can be provided like this: -```bash -$ helm install --name my-aerospike -f values.yaml stable/aerospike +```sh +helm install --name my-aerospike -f values.yaml stable/aerospike ``` ### Conf files for Aerospike -There is one conf file added to each Aerospike release. This conf file can be replaced with a custom file and updating the `confFile` value. +There is one conf file added to each Aerospike release. This conf file can be replaced with a custom file and updating the `confFile` value. If you modify the `aerospike.conf` (and you use more than 1 replica), you want to add the `#REPLACE_THIS_LINE_WITH_MESH_CONFIG` comment to the config file (see the default conf file). This will update your mesh to connect each replica. diff --git a/stable/aerospike/templates/configmap.yaml b/stable/aerospike/templates/configmap.yaml index 91b2cd8a09..371e9e3007 100644 --- a/stable/aerospike/templates/configmap.yaml +++ b/stable/aerospike/templates/configmap.yaml @@ -11,4 +11,4 @@ data: aerospike.conf: | # aerospike configuration {{- $mesh := include "aerospike.mesh" . }} - {{ .Values.confFile |replace "#REPLACE_THIS_LINE_WITH_MESH_CONFIG" $mesh | indent 4}} \ No newline at end of file + {{ .Values.confFile |replace "#REPLACE_THIS_LINE_WITH_MESH_CONFIG" $mesh | indent 4}} diff --git a/stable/aerospike/templates/mesh-service.yaml b/stable/aerospike/templates/mesh-service.yaml index 4decc44063..20b043ee54 100644 --- a/stable/aerospike/templates/mesh-service.yaml +++ b/stable/aerospike/templates/mesh-service.yaml @@ -8,11 +8,14 @@ metadata: release: {{ .Release.Name }} heritage: {{ .Release.Service }} annotations: + # deprecation in 1.10, supported until at least 1.13, breaks peer-finder/kube-dns if not used service.alpha.kubernetes.io/tolerate-unready-endpoints: "true" {{- range $key, $value := .Values.meshService.annotations }} {{ $key }}: {{ $value | quote }} {{- end }} spec: + # deprecates service.alpha.kubernetes.io/tolerate-unready-endpoints as of 1.10? see: kubernetes/kubernetes#49239 Fixed in 1.11 as of #63742 + publishNotReadyAddresses: true clusterIP: None type: ClusterIP ports: diff --git a/stable/aerospike/templates/service.yaml b/stable/aerospike/templates/service.yaml index 4486cc10d4..5a056684a3 100644 --- a/stable/aerospike/templates/service.yaml +++ b/stable/aerospike/templates/service.yaml @@ -8,21 +8,24 @@ metadata: release: {{ .Release.Name }} heritage: {{ .Release.Service }} annotations: + # deprecation in 1.10, supported until at least 1.13, breaks peer-finder/kube-dns if not used service.alpha.kubernetes.io/tolerate-unready-endpoints: "true" {{- range $key, $value := .Values.service.annotations }} {{ $key }}: {{ $value | quote }} {{- end }} spec: -{{ if .Values.service.clusterIP }} + # deprecates service.alpha.kubernetes.io/tolerate-unready-endpoints as of 1.10? see: kubernetes/kubernetes#49239 Fixed in 1.11 as of #63742 + publishNotReadyAddresses: true + {{ if .Values.service.clusterIP }} clusterIP: {{ .Values.service.clusterIP | quote }} -{{ end }} + {{ end }} type: {{ .Values.service.type }} {{ if eq .Values.service.type "LoadBalancer" -}} {{ if .Values.service.loadBalancerIP -}} loadBalancerIP: {{ .Values.service.loadBalancerIP }} {{ end -}} {{- if .Values.service.loadBalancerSourceRanges }} loadBalancerSourceRanges: - {{ toYaml .Values.service.loadBalancerSourceRanges | indent 2}} + {{ toYaml .Values.service.loadBalancerSourceRanges | indent 2}} {{ end -}} {{- end -}} ports: diff --git a/stable/aerospike/templates/statefulset.yaml b/stable/aerospike/templates/statefulset.yaml index 78a92b78ec..a7b926b052 100644 --- a/stable/aerospike/templates/statefulset.yaml +++ b/stable/aerospike/templates/statefulset.yaml @@ -68,5 +68,5 @@ spec: - metadata: name: {{ $pv.name | quote }} spec: -{{ toYaml $pv.template | indent 6 }} + {{ toYaml $pv.template | indent 6 }} {{- end }} diff --git a/stable/aerospike/values.yaml b/stable/aerospike/values.yaml index c868f0addb..ce5778c31e 100644 --- a/stable/aerospike/values.yaml +++ b/stable/aerospike/values.yaml @@ -4,7 +4,7 @@ replicaCount: 1 nodeSelector: {} image: repository: aerospike/aerospike-server - tag: 3.14.1.2 + tag: 4.5.0.5 pullPolicy: IfNotPresent # pass custom command. This is equivalent of Entrypoint in docker @@ -57,6 +57,7 @@ confFile: |- service { user root group root + paxos-protocol v5 paxos-single-replica-limit 1 pidfile /var/run/aerospike/asd.pid service-threads 4 @@ -64,36 +65,39 @@ confFile: |- transaction-threads-per-queue 4 proto-fd-max 15000 } + logging { file /var/log/aerospike/aerospike.log { - context any info + context any info } console { - context any info + context any info } } + network { service { - address any - port 3000 + address any + port 3000 } - heartbeat { - address any - interval 150 - #REPLACE_THIS_LINE_WITH_MESH_CONFIG - mode mesh - port 3002 - timeout 20 - protocol v3 + heartbeat { + address any + interval 150 + #REPLACE_THIS_LINE_WITH_MESH_CONFIG + mode mesh + port 3002 + timeout 20 + protocol v3 } + fabric { - port 3001 + port 3001 } info { - port 3003 + port 3003 } } @@ -102,7 +106,7 @@ confFile: |- memory-size 1G default-ttl 5d storage-engine device { - file /opt/aerospike/data/test.dat - filesize 4G + file /opt/aerospike/data/test.dat + filesize 4G } }