NATS

NATS is an open-source, cloud-native messaging system.

Upgrading operator

This step is only necessary in case of installing a backward incompatible operator version. Otherwise, simply upgrade the operator using helm.

  • Remove the server and operator first.
helm delete nats-operator --purge
helm delete nats --purge
  • Then remove the CRDs.
kubectl delete crd natsserviceroles.nats.io
kubectl delete crd natsclusters.nats.io

Fresh install

  • Create the following yaml config(values) file.
clusterScoped: true
cluster:
create: false
  • Install the operator
helm install dictybase/nats-operator --version 0.1.3 -f dev.yaml --name nats-operator --namespace nats-io
  • Make sure the operator is deployed
kubectl get crd | grep nats
  • Install the server
helm install dictybase/nats --version 0.0.3 --name nats --namespace dictybase

Extra sauce (syncing the operator chart)

The operator chart in the dictybase helm repository is packaged from the upstream repository. To keep it updated do the following steps,

  • Clone the dictybase helm chart repository
git clone git@github.com:dictybase-docker/kubernetes-charts.git
  • Clone the nats-operator repository and change to appropiate folder
git clone https://github.com/nats-io/nats-operator.git
cd nats-operator
  • Make necessary changes
  • Package the chart and copy the tarball to the docs folder of dictybase helm chart repository
helm package .
  • Go back to the dictybase helm chart repository and update the package index
helm repo index docs
  • Commit and push the changes.
  • Synchronize the changes with helm client.
helm repo update