This example deploys Aerospike JMS Inbound connector 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 reachable from the connectors 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
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>
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
kubectl -n aerospike create -f aerospike.yaml
Update the as-jms-inbound-tls-values.yaml file to change connectorConfig
to consume messages from JMS cluster with broker and update aerospike
section to point to your destination cluster.
Deploy the connectors using configuration from as-jms-inbound-tls-values.yaml
helm install --namespace aerospike as-jms-inbound-tls -f as-jms-inbound-tls-values.yaml aerospike/aerospike-jms-inbound
You can write data into JMS queue or topic using tools of your choice or using your own code. An Aerospike record corresponding to each message show up in your Aerospike database.
kubectl -n aerospike delete -f aerospike.yaml
helm -n aerospike uninstall as-jms-inbound-tls
kubectl -n aerospike delete secrets aerospike-secret tls-certs