This example deploys Aerospike JMS Outbound connectors and an Aerospike cluster with TLS configured.
- Kubernetes cluster
- Helm v3
- A JMS cluster with brokers reachable from the pods in the Kubernetes cluster
- An Aerospike cluster - That can connect to Pods in the Kubernetes cluster The Aerospike cluster can be deployed in the same Kubernetes cluster using Aerospike Kubernetes Operator
- Aerospike JMS Connector Helm chart
- A clone of this git repository
All subsequent commands are run from this directory.
Create a Kubernetes namespace if not already done
kubectl create namespace aerospike
Create a secret containing your TLS certificates and files. There are few sample TLS certificates, keys and keystores in the tls-certs folder that the following command uses. Use a folder with your TLS files.
kubectl -n aerospike create secret generic tls-certs --from-file=tls-certs
Update the as-jms-outbound-tls-values.yaml file to change JMS connector configuration to point to backend JMS provider.
Deploy the connectors using configuration from as-jms-outbound-tls-values.yaml
helm install --namespace aerospike as-jms-outbound-tls -f as-jms-outbound-tls-values.yaml aerospike/aerospike-jms-outbound
If you do not have a preexisting Aerospike server, install Aerospike Kubernetes Operator. The steps below will deploy an Aerospike cluster using Aerospike Kubernetes Operator and this sample custom resource.
Create the secret for aerospike using your Aerospike licence file
kubectl -n aerospike create secret generic aerospike-secret --from-file=<path to features.conf>
kubectl -n aerospike create -f aerospike.yaml
You can write data to Aerospike using aql, asbench tools or using your own code. The record updates should show up in your JMS provider queue/topic.
kubectl -n aerospike delete -f aerospike.yaml
helm -n aerospike uninstall as-jms-outbound-tls
kubectl -n aerospike delete secrets aerospike-secret tls-certs