Skip to content
This repository has been archived by the owner on Feb 22, 2022. It is now read-only.

Commit

Permalink
Update aerospike chart (#12220)
Browse files Browse the repository at this point in the history
* [stable/aerospike] Trim trailing whitespace

* [stable/aerospike] Trime trailing whitespace

Signed-off-by: Maxim Eremenko <moeryomenko@gmail.com>

* [stable/aerospike] Add publishNotReadyAddresses

* [stable/aerospike] TolerateUnreadyEndpoints deprecation in 1.10

Signed-off-by: Maxim Eremenko <moeryomenko@gmail.com>

* [stable/aerospike] Upgrade Aerospike version

* [stable/aerospike] Upgrade Aerospike server version

Signed-off-by: Maxim Eremenko <moeryomenko@gmail.com>
  • Loading branch information
moeryomenko authored and k8s-ci-robot committed Mar 18, 2019
1 parent 1224b3c commit dbc29ce
Show file tree
Hide file tree
Showing 7 changed files with 46 additions and 36 deletions.
4 changes: 2 additions & 2 deletions stable/aerospike/Chart.yaml
Original file line number Diff line number Diff line change
@@ -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
Expand Down
24 changes: 12 additions & 12 deletions stable/aerospike/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

This is an implementation of Aerospike StatefulSet found here:

* https://github.com/aerospike/aerospike-kubernetes
* <https://github.com/aerospike/aerospike-kubernetes>

## Pre Requisites:
## Pre Requisites

* Kubernetes 1.7+ with beta APIs enabled and support for statefulsets

Expand All @@ -14,11 +14,11 @@ This is an implementation of Aerospike StatefulSet found here:

## StatefulSet Details

* https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/
* <https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/>

## StatefulSet Caveats

* https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#limitations
* <https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#limitations>

## Chart Details

Expand All @@ -30,17 +30,17 @@ 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:

| 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) | `[]` |
Expand All @@ -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.

Expand Down
2 changes: 1 addition & 1 deletion stable/aerospike/templates/configmap.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -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}}
{{ .Values.confFile |replace "#REPLACE_THIS_LINE_WITH_MESH_CONFIG" $mesh | indent 4}}
3 changes: 3 additions & 0 deletions stable/aerospike/templates/mesh-service.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand Down
9 changes: 6 additions & 3 deletions stable/aerospike/templates/service.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand Down
2 changes: 1 addition & 1 deletion stable/aerospike/templates/statefulset.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -68,5 +68,5 @@ spec:
- metadata:
name: {{ $pv.name | quote }}
spec:
{{ toYaml $pv.template | indent 6 }}
{{ toYaml $pv.template | indent 6 }}

This comment has been minimized.

Copy link
@madAndroid

madAndroid Mar 29, 2019

This has broken the provisioning of the chart for us :-/

{{- end }}
38 changes: 21 additions & 17 deletions stable/aerospike/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -57,43 +57,47 @@ confFile: |-
service {
user root
group root
paxos-protocol v5
paxos-single-replica-limit 1
pidfile /var/run/aerospike/asd.pid
service-threads 4
transaction-queues 4
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
}
}
Expand All @@ -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
}
}

0 comments on commit dbc29ce

Please sign in to comment.