diff --git a/Makefile b/Makefile index 6ae2d8c96..645edbd79 100644 --- a/Makefile +++ b/Makefile @@ -76,8 +76,7 @@ uninstall: manifests kustomize ## Uninstall CRDs from the K8s cluster specified deploy: manifests kustomize ## Deploy controller to the K8s cluster specified in ~/.kube/config. cd config/manager && $(KUSTOMIZE) edit set image controller=${IMG} - $(KUSTOMIZE) build config/default > config/samples/operator/controller.yaml - kubectl apply -f config/samples/operator/controller.yaml + $(KUSTOMIZE) build config/default | kubectl apply -f - undeploy: ## Undeploy controller from the K8s cluster specified in ~/.kube/config. $(KUSTOMIZE) build config/default | kubectl delete -f - diff --git a/RELEASE.md b/RELEASE.md index 6488b015c..47e132790 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -1,20 +1,18 @@ ## Release Note 🍻 +🆕 Happy New Year! + ### Features 🌈 -- Custom Resource Definition for **EMQ X Broker** and **EMQ X Enterprise** -- Support EMQ X Broker 4.3.x version and EMQ X Enterprise 4.3.x version -- Readability configuration about `acl`,`modules` and `plugins` in `YAML` -- Support persistence for data and logs in EMQ X Cluster -- Support the strategy of node discovery `k8s` -- Support EMQ X metrics monitoring with `Prometheus` -- Scaling EMQ X cluster without disconnection -- Dynamic storage provisioning with pvc template -- Resources restrictions with k8s requests and limits -- Node selector +- New APIVersion: apps.emqx.io/v1beta2 +- Restart pods when update `configmap` and `secret` +- Retain PVC when deleting EMQ X Custom Resource +- The emqx operator controller automatically creates the `serviceAccount`, `role` and `roleBinding` resources when the resource specified by `.spec.serviceAccountName` does not exist +- `.spec.serviceAccountName` is no longer required in EMQ X Custom Resource +- `.spec.replicas` is no longer required in EMQ X Custom Resource +- Add extra volumes mount possibility +- Add readiness probe for Statefulset -### Breaking Changes 💡 +### Fixes 🛠 -- Bump APIversion to `apps.emqx.io/v1beta1` -- Add the `CRD` of `EMQ X Enterprise` -- Remove configurations:`cluster`, `loadedPluginConf`,`loadedModulesConf`,`aclConf` +- Fix annotations for EMQ X Custom Resource not working diff --git a/apis/apps/v1beta1/labels_type.go b/apis/apps/v1beta1/labels_type.go index 88710d55c..90a909cc0 100644 --- a/apis/apps/v1beta1/labels_type.go +++ b/apis/apps/v1beta1/labels_type.go @@ -28,7 +28,6 @@ func mergeLabels(allLabels ...Labels) Labels { func defaultLabels(name string) Labels { return map[string]string{ "apps.emqx.io/managed-by": "emqx-operator", - "apps.emqx.io/version": "v1beta1", "apps.emqx.io/instance": name, } } diff --git a/config/manager/kustomization.yaml b/config/manager/kustomization.yaml index a29a71afc..7c5c1aa5c 100644 --- a/config/manager/kustomization.yaml +++ b/config/manager/kustomization.yaml @@ -13,4 +13,4 @@ kind: Kustomization images: - name: controller newName: emqx/emqx-operator-controller - newTag: 86b1b70 + newTag: 1.1.0 diff --git a/config/samples/operator/controller.yaml b/config/samples/operator/controller.yaml index 6f75a3720..09b90e957 100644 --- a/config/samples/operator/controller.yaml +++ b/config/samples/operator/controller.yaml @@ -7902,7 +7902,7 @@ spec: - --leader-elect command: - /manager - image: emqx/emqx-operator-controller:86b1b70 + image: emqx/emqx-operator-controller:1.1.0 livenessProbe: httpGet: path: /healthz diff --git a/docs/user-guides/get-started.md b/docs/user-guides/get-started.md index ca3a6ef1f..6f93c6ebd 100644 --- a/docs/user-guides/get-started.md +++ b/docs/user-guides/get-started.md @@ -17,7 +17,7 @@ We using [cert manager](https://github.com/jetstack/cert-manager) for provisioni 1. Deploy operator controller ```shell - $ kubectl apply -f https://raw.githubusercontent.com/emqx/emqx-operator/1.0.0/config/samples/operator/controller.yaml + $ kubectl apply -f https://raw.githubusercontent.com/emqx/emqx-operator/1.1.0/config/samples/operator/controller.yaml ``` 2. Check operator controller status @@ -33,7 +33,7 @@ We using [cert manager](https://github.com/jetstack/cert-manager) for provisioni 1. Create EMQ X Custom Resource file like this ```shell - $ cat https://raw.githubusercontent.com/emqx/emqx-operator/1.0.0/config/samples/emqx/emqx.yaml + $ cat https://raw.githubusercontent.com/emqx/emqx-operator/1.1.0/config/samples/emqx/emqx.yaml apiVersion: apps.emqx.io/v1beta2 kind: EmqxBroker @@ -113,7 +113,7 @@ We using [cert manager](https://github.com/jetstack/cert-manager) for provisioni 2. Deploy EMQ X Custom Resource and check EMQ X status ```shell - $ kubectl apply https://raw.githubusercontent.com/emqx/emqx-operator/1.0.0/config/samples/emqx/emqx.yaml + $ kubectl apply https://raw.githubusercontent.com/emqx/emqx-operator/1.1.0/config/samples/emqx/emqx.yaml emqx.apps.emqx.io/emqx created $ kubectl get pods