Deploying EMQ X 4.0 cluster on Kubernetes via Helm3

New features of Helm3

  • Remove Tiller
  • Different namespaces can use the same Release Name
  • Simplify template object .Capabilities
  • Use JSONSchema to validate the values of charts
  • Merge requirements.yaml into Chart.yaml
  • require to specify a Release Name when you install helm. require to use the — generate-name parameter to enable automatic generation.
  • Support pushing to remote registry (eg: harbor)
  • Remove helm serve
  • Command line changes (retain the original command as alias Aliases)
  • helm delete --> helm uninstall
  • helm inspect -> helm show
  • helm fetch -> helm pull
  • go Import path changes k8s.io/helm --> helm.sh/helm

Install Helm3

  • Access port 31539 of any Kubernetes node IP, enter the default username: admin, default password: public, and log in to the EMQ X dashboard.
  • Delete EMQ X cluster.

Deploy a persistent EMQ X cluster

  • Forward port 1883, 8883, 8081, 8083, 8084, 18083 of the URL monitored by the load balancer to the clusterIP of my-emqx. If there is a need for TLS connection, it is recommended to terminate the SSL connection at the load balancer. The connection between client and load balancer is a TLS secure connection, and the connection between LB and EMQ X is an ordinary TCP connection.
  • Access URL:18083, enter the default username: admin, default password: public, and log in to EMQ X dashboard.
  • Use the helm upgrade command to easily expand the EMQ X cluster. The following example shows the helm upgrade command by adding an EMQ X node
  • Delete EMQ X cluster

Deploy EMQ X Edge cluster and EMQ X cluster of Enterprise Edition

EMQ X Edge

$ helm install my-emqx-edge emqx/emqx --set image.repository=emqx/emqx
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
my-emqx-edge-0 1/1 Running 0 35s
my-emqx-edge-1 1/1 Running 0 23s
my-emqx-edge-2 1/1 Running 0 9s

EMQ X EE

$ kubectl create secret generic your-license-secret-name --from-file=/path/to/emqx.lic
$ helm install my-emqx-ee emqx/emqx-ee emqxLicneseSecretName=your-license-secret-name

EMQ X Helm Chart Configuration Item

$ helm install my-emqx emqx/emqx -f values.yaml

--

--

--

EMQ is an open-source IoT data infrastructure software provider, delivering the world’s leading open-source MQTT message broker and stream processing database.

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Write data from Google Spreadsheet into MySQL without 3rd Party tool

Top 3 Jira Tricks for Project Managers — Kenneth Lo, PMP

A Brief Introduction to Git and GitHub — Git Basics for Newbies

Backtest your First Strategy in Python

CS373 Fall 2020: Jonathon Lowe (Twelfth Entry)

New Features in Java 18

Automating backups on Mac OS X with Borg and Vorta

The journey of becoming (stumbling..) a Software Tester.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
EMQ Technologies

EMQ Technologies

EMQ is an open-source IoT data infrastructure software provider, delivering the world’s leading open-source MQTT message broker and stream processing database.

More from Medium

Monitoring multiple federated instances with Prometheus

Monitoring Camel K applications using Prometheus and Grafana

Deploy and use ArgoCD with Portainer (part 2)

Pull Images into ACR and Build Helm Chart Using ACR images and deploy applications in Kubernetes