Files
deprecated-helm-charts/stable/aerospike
Vincent Behar 94c4dad3fd [stable/aerospike] evaluate the service's annotations as a template (#18336)
update the service templates to evaluate the annotations as a template,
to allow people to use dynamic values in annotations key or values.

Signed-off-by: Vincent Behar <v.behar@free.fr>
2019-10-25 06:39:40 -07:00
..

Aerospike Helm Chart

This is an implementation of Aerospike StatefulSet found here:

Pre Requisites

  • Kubernetes 1.9+

  • PV support on underlying infrastructure (only if you are provisioning persistent volume).

  • Requires at least v2.5.0 version of helm to support

StatefulSet Details

StatefulSet Caveats

Chart Details

This chart will do the following:

  • Implement a dynamically scalable Aerospike cluster using Kubernetes StatefulSets

Installing the Chart

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

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 4.5.0.5
image.pullPolicy Aerospike Container pull policy Always
replicaCount Aerospike Brokers 1
command Custom command (Docker Entrypoint) []
args Custom args (Docker Cmd) []
labels Map of labels to add to the statefulset {}
annotations Map of annotations to add to the statefulset {}
tolerations List of node taints to tolerate []
persistentVolume Config of persistent volumes for storage-engine {}
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
service.type Kubernetes Service type ClusterIP
service.annotations Kubernetes service annotations, evaluated as a template {}
service.loadBalancerIP Static IP Address to use for LoadBalancer service type nil
service.clusterIP Static clusterIP or None for headless services None
meshService.annotations Kubernetes service annotations, evaluated as a template {}

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:

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.

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.

Known Limitations

  • Persistent volume claims tested only on GCP
  • Aerospike cluster is not accessible via an external endpoint