Skip to content

Releases: emqx/emqx-operator

EMQX Operator 2.0.0 Released

01 Sep 08:48
Compare
Choose a tag to compare

Release Note 🍻

EMQX Operator 2.0.0 is released.

Supported version

  • apps.emqx.io/v1beta3

  • apps.emqx.io/v2alpha1

Features 🌈

New API version: apps.emqx.io/v2alpha1 and Kind: EMQX, support for EMQX 5 milestone versions, please check out reference docs

  • New stateless node: EMQX Replicant, use Deployment

  • New HOCON configuration style, in line with the format of EMQX 5

  • Fully automated EMQX node upgrade management

Broken Change 🚫

Must uninstall EMQX Operator 1 before installing this release

What's Changed

  • Main 2.0 by @Rory-Z in #359
  • feat(v2alpha1): add default probe to core nodes by @Rory-Z in #360
  • update docs by @Rory-Z in #362
  • chore: fix json name error by @Rory-Z in #363
  • chore: default install CRD when use helm chart by @Rory-Z in #364
  • chore: change PeriodSeconds and FailureThreshold for default probe by @Rory-Z in #365
  • chore: when update core nodes, delete coreReady and Running condition by @Rory-Z in #366
  • style: rename storeSts to existedSts by @Rory-Z in #367

Full Changelog: 1.2.6...2.0.0

EMQX Operator 1.2.6 Released

31 Aug 08:21
Compare
Choose a tag to compare

Release Note 🍻

EMQX Operator 1.2.6 is released.

Supported EMQX version

  • EMQX 4.4.8 and later

  • EMQX Enterprise 4.4.8 and later

Features 🌈

  • Add .spec.emqxTemplate.license.secretName for EMQX Enterprise Custom Resource, the user can create the EMQX license as a Kubernetes secret resource and use in MQX Enterprise Custom Resource

  • After the user updates the license, the EMQX Operator completes the runtime update via the EMQX API

Fixes 🛠

  • Now it's not possible to update .spec.persistent in the EMQX Custom Resource runtime

  • Now it does not create loaded_plugins configMap for EMQX Custom Resource, this is to fix the erofs error in EMQX

What's Changed

  • docs: add badge for README by @Rory-Z in #332
  • style: add update method for various resources in emqx statefulSet by @Gala-R in #329
  • ci: add commit sha for coverall by @Rory-Z in #333
  • ci: add coverall for cts by @Rory-Z in #334
  • feat: support obtaining license data from secret by @Gala-R in #335
  • feat: support using http api upload license by @Gala-R in #336
  • chore: delete default listener port for env by @Rory-Z in #337
  • docs: add cce and azure deployment docs by @brianbinbin in #340
  • feat: add watch file by directory by @Gala-R in #339
  • chore: reject upate emqx persistent by @Gala-R in #342
  • fix: shield internal listener by @Gala-R in #343
  • docs: add tke and ack deployment docs by @Gala-R in #341
  • docs: update public cloud platform deployment docs by @yang-yinbo in #345
  • chore: delete needless switch case by @Rory-Z in #347
  • docs: docs optimization by @yang-yinbo in #349
  • ci: build images before runs compatibility tests by @Rory-Z in #352
  • chore: change reloader image version to 0.0.2 by @Rory-Z in #355
  • chore: delete loaded_plugins configmap by @Rory-Z in #356
  • docs: update operator features by @yang-yinbo in #354
  • chore: pre release 1.2.6 by @Rory-Z in #358

Full Changelog: 1.2.5...1.2.6

EMQX Operator 1.2.5 Released

10 Aug 10:35
Compare
Choose a tag to compare

Release Note 🍻

EMQX Operator 1.2.5 is released.

Supported EMQX version

  • EMQX 4.4.6 and later

  • EMQX Enterprise 4.4.6 and later

Fixes 🛠

  • Add publishNotReadyAddresses: true for headless service, this will fix the issue of split-brain for EMQX clusters.

What's Changed

  • chore: add RFC3339TimeEncoder to zap options by @Gala-R in #323
  • style: change io/ioutil to io package by @Rory-Z in #326
  • chore: add PublishNotReadyAddresses for headless service by @Rory-Z in #325
  • chore: add comments by @brianbinbin in #324
  • fix: use ParallelPodManagement to eliminate warning logs in EMQX pod by @Rory-Z in #331
  • chore: pre relase 1.2.5 by @Rory-Z in #330

Full Changelog: 1.2.4...1.2.5

EMQX Operator 1.2.4 Released

03 Aug 04:32
Compare
Choose a tag to compare

Release Note 🍻

EMQX Operator 1.2.4 is released.

Warning 🚨

Only supported 4.4.6 and later versions of EMQX and EMQX Enterprise

Features 🌈

  • Users can add extra Containers to the pod, see #252.

  • When deploy EMQX Custom Resource, if exist PVCs, set .spec.podManagementPolicy = "Parallel", or else, set .spec.podManagementPolicy = "OrderedReady", this can avoid to some extent the problem of EMQX cluster brain cleavage.

  • Add username and password to .spec.emqxTemplate for EMQX Custom Resource, users can use them to set up the dashboard and API authentication, and also, users will no longer be able to create and modify emqx_management and emqx_dashboard plugins by EMQX Plugin Custom Resource.

  • If users didn't set acl in .spec.emqxTemplate, the ConfigMap will not be created.

  • For EMQX Enterprise, if users didn't set modules in .spec.emqxTemplate, the ConfigMap will not be created.

  • New fields for .status in EMQX Custom Resource.

  • Now we don't create volume and volumeMount for EMQX logs anymore, EMQX logs will output to container stdout by default.

What's Changed

  • feat: get the listeners port by API after the emqx cluster is ready by @Rory-Z in #308
  • chore: delete default probe by @Rory-Z in #313
  • chore: add default value for username and password by @Rory-Z in #314
  • update emqx modules by @Rory-Z in #307
  • chore: dump emqx version to 4.4.6 by @Rory-Z in #316
  • chore: format annotations for statefulSet by @Rory-Z in #315
  • chore: pre relase 1.2.4 by @Rory-Z in #317
  • chore: add failed reconciled to emqx status by @Rory-Z in #318
  • ci: update upgrade check by @Rory-Z in #319
  • ci: use latest condition to check emqx status by @Rory-Z in #321

Full Changelog: 1.2.3...1.2.4

EMQX Operator 1.2.2 Released

11 Jul 04:02
Compare
Choose a tag to compare

Release Note 🍻

EMQX Operator 1.2.2 is released.

Fix 🛠

  • Fix the issue that the service template default port will overwrite the user set port error.

  • Fix the issue that service nodePort is out of range when updating EMQX Custom Resources.

What's Changed

  • ci: update cert-manager by @Gala-R in #264
  • fix: fix service template default port will overwrite user set port error by @Rory-Z in #265
  • ci: fix build reloadaer image error by @Rory-Z in #262
  • fix: fix error for provided port is not in the valid range by @Rory-Z in #267
  • chore: pre release 1.2.2 by @Rory-Z in #268

Full Changelog: 1.2.1...1.2.2

EMQX Operator 1.2.1 Released

06 Jul 03:47
Compare
Choose a tag to compare

Release Note 🍻

EMQX Operator 1.2.1 is released.

Features 🌈

  • When updating EMQX Plugin Custom Resources, like change listener port, or update plugin configure, it will not restart Pods.

  • EMQX Operator automatically binds ports to Service resources even if plugins or modules are enabled via EMQX Dashboard

Fix 🛠

  • We have added sidecar containers to reload the EMQX plugins when their configuration is updated

Broken Change 🚫

  • We no longer support the API version: apps.emqx.io/v1beta2

What's Changed

  • ci: delete cloud test by @Rory-Z in #234
  • fix: 标注化 -> 标准化 by @wonderful-ya in #238
  • docs: delete emqxPluginList for reference docs by @Rory-Z in #235
  • docs: added the description of EMQX Operator compatibility by @yang-yinbo in #241
  • chore: add docs for telegraf to handle metrics and logs by @kiragoo in #237
  • chore: remove api v1beta2 by @kiragoo in #243
  • feat: add the default configuration for the plugin by @yang-yinbo in #245
  • fix: do not set “patch-annotation“ for emqx custrom resource by @Rory-Z in #247
  • Add emqx check api by @Rory-Z in #244
  • test: more better specs for ginkgo suite by @Rory-Z in #248
  • chore: format status condition by @Rory-Z in #249
  • ci: set latest tag for ghcr image by @Rory-Z in #251
  • ci: support goveralls by @Gala-R in #255
  • get listeners by api by @Rory-Z in #253
  • ci: update operator ci by @Gala-R in #256
  • test: refactor ginkgo tests by @Rory-Z in #258
  • test: fix compatibility test suite error by @Rory-Z in #260
  • docs: add preview script by @brianbinbin in #259
  • chore: pre relase 1.2.1 by @Rory-Z in #257
  • fix build image error by @Rory-Z in #261

New Contributors

  • @wonderful-ya made their first contribution in #238
  • @Gala-R made their first contribution in #255

Full Changelog: 1.2.0...1.2.1

EMQX Operator 1.1.10 Released

15 Jun 06:39
Compare
Choose a tag to compare

Release Note 🍻

Fixes 🛠

  • Delete the needless preStop command, there is a risk will that failed. When persistence is enabled, preStop failure can lead to inconsistent EMQX cluster data

What's Changed

Full Changelog: 1.1.9...1.1.10

EMQX Operator 1.2.0 Released

14 Jun 13:35
Compare
Choose a tag to compare

Release Note 🍻

Features 🌈

  • New Custom Resource Define: EmqxPlugin, for managing EMQX plugins and auto bind service port

    • After deploying EMQX Custom Resource, EMQX Operator will auto-create default EmqxPlugin Custom Resource, and you can manage it.
    • You can create your own EmqxPlugin Custom Resource and user-defined their config, and EMQX Operator will load them to EMQX Custom Resource.
    • If the EmqxPlugin Custom Resource needs listen port, EMQX Operator will bind the port to service.
    • If you delete some EmqxPlugin Custom Resource, EMQX Operator will unbind the port to service, and unload them to EMQX Custom Resource.
  • New API version: apps.emqx.io/v1beta3, please check out reference docs

    • Now you can set up any EMQX configure via .spec.emqxTemplate.config, if you set some listener to it, EMQX Operator will auto bind the listening port to the service
    • Now we support set up readinessProbe/livenessProbe/startupProbe by .spec.emqxTemplate in EMQX Custom Resource
    • Now we support setting up container args by .spec.emqxTemplate in EMQX Custom Resource
    • Now we support setting up initContainers by .spec in EMQX Custom Resource
    • The format of our .spec.emqxTemplate.acl settings is now the same as the EMQX format, no additional conversions are needed

Broken Change 🚫

  • We no longer support the API version: apps.emqx.io/v1beta1

What's Changed

  • add namespace field to ServiceAccount by @wuxingzhong in #188
  • add v1beta3 APIVersion by @Rory-Z in #189
  • chore: delete cache.go and event.go by @Rory-Z in #191
  • chore: delete telegraf for v1beta3 by @Rory-Z in #192
  • chore: modify logger message for create resource by @kiragoo in #193
  • chore: delete "do function" for handler by @Rory-Z in #194
  • feat: add events for resource by @kiragoo in #195
  • chore: update status after emqx cluster created successfully by @kiragoo in #197
  • chore: replace the logs about updating status with events by @kiragoo in #198
  • chore: delete cluster by k8s by @Rory-Z in #196
  • style: delete ensure.go by @Rory-Z in #199
  • fix: fix restart listener is not working by @Rory-Z in #201
  • ci: build the lastest image and push it to ghcr, for other workflows by @Rory-Z in #202
  • ci: rename image for ghcr.io by @Rory-Z in #205
  • ci: add compatibility test suite for alibab cloud by @Rory-Z in #206
  • style(handler): abstract handler function, for other reconcile calls by @Rory-Z in #211
  • ci(cloud): run cloud test for every day by @Rory-Z in #212
  • chore(reconcile): when reconcile, only check emqx container by @Rory-Z in #213
  • chore: fix image tag error defined in private repo by @kiragoo in #214
  • feat: add emqx client by @brianbinbin in #216
  • chore: modify script for pre-release and update docs by @kiragoo in #217
  • feat(api): add new CRD for emqx plugin by @Rory-Z in #215
  • fix: fix spell error for emqx enterprise modules by @Rory-Z in #220
  • chore: update ginkgo version to v2 by @Rory-Z in #218
  • chore: when deploy emqx enterprise, default load emqx_modules by @Rory-Z in #222
  • feat: adjust emqx configuration by @yang-yinbo in #226
  • refactor(listener): refactor listener to service template by @Rory-Z in #227
  • feat: change acl type to []string by @Rory-Z in #229
  • feat: remove env from template spec to cr spec by @kiragoo in #230
  • chore: pre release 1.2.0 by @kiragoo in #231
  • chore: delete preStop command by @Rory-Z in #232

New Contributors

  • @wuxingzhong made their first contribution in #188
  • @yang-yinbo made their first contribution in #226

Full Changelog: 1.1.6...1.2.0

EMQX Operator 1.1.9 Released

07 Jun 13:09
Compare
Choose a tag to compare

Release Note 🍻

Fixes 🛠

  • When deploy emqx enterprise, default load emqx_modules plugin

What's Changed

  • fix: when deploy emqx enterprise, default load emqx_modules by @Rory-Z in #219

Full Changelog: 1.1.8...1.1.9

EMQX Operator 1.1.8 Released

20 May 10:25
1a67e5b
Compare
Choose a tag to compare

Release Note 🍻

Fixes 🛠

  • fix regex to validate image tag which contains ip:port

What's Changed

  • fix(webhook): fix regex expression by @brianbinbin in #208
  • chore: pre relase 1.1.8 by @brianbinbin in #209

Full Changelog: 1.1.7...1.1.8