diff --git a/CHANGELOG.md b/CHANGELOG.md index 9655b4502ed2d72d89f0bb17eb9c10c4b7224805..4343ec5ae0cb589a6586e755008eeb5c4b414d1a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,19 @@ +### v0.7.0 +##### August 12, 2021 + +#### :tada: Features + +- Remove all the vulnerable dependencies from docs(NodeJS) +- Added a new grafana dashboard for better monitoring visualization +- Added environment variable support for redis exporter +- Added Image Pull Secret support for private registeries + +#### :beetle: Bug Fixes + +- Fix bug for non-defined storage +- Fixed secret nil exception bug +- Fixed bug for making redis exporter optional + ### v0.6.0 ##### June 11, 2021 diff --git a/SECURITY.md b/SECURITY.md index 8453525b867c00451ffa527099b7fa48018fef80..43be7e582345310db26a52995ebcd2656407d80a 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -7,8 +7,10 @@ currently being supported with security updates. | Version | Supported | | ------- | ------------------ | -| 0.5.0 | :white_check_mark: | -| 0.4.0 | :white_check_mark: | +| 0.7.0 | :white_check_mark: | +| 0.6.0 | :white_check_mark: | +| 0.5.0 | :x: | +| 0.4.0 | :x: | | 0.3.0 | :x: | | 0.2.0 | :x: | | 0.1.0 | :x: | diff --git a/docs/src/guide/changelog.md b/docs/src/guide/changelog.md index 37121482a8990e7ca3f1eb6c5049ee4d9474d58c..b71b512323a1dc1d35b165d4f0765ed6ae0cd172 100644 --- a/docs/src/guide/changelog.md +++ b/docs/src/guide/changelog.md @@ -1,3 +1,19 @@ +### v0.7.0 +**August 12, 2021** + +**:tada: Features** + +- Remove all the vulnerable dependencies from docs(NodeJS) +- Added a new grafana dashboard for better monitoring visualization +- Added environment variable support for redis exporter +- Added Image Pull Secret support for private registeries + +**:beetle: Bug Fixes** + +- Fix bug for non-defined storage +- Fixed secret nil exception bug +- Fixed bug for making redis exporter optional + ### v0.6.0 **June 12, 2021** diff --git a/docs/src/guide/grafana.md b/docs/src/guide/grafana.md index a041da23b3d36acd3329350e3927464270792d2d..4edcb9018f65b69ba88f5fa158551b105004eb8e 100644 --- a/docs/src/guide/grafana.md +++ b/docs/src/guide/grafana.md @@ -1,10 +1,8 @@ # Grafana Dashboard -Grafana Dashboards can be downloaded from grafana site itself by using code or by downloading dashboard JSON. +We have created a custom detailed dashboard for monitoring the stats of Redis Cluster. -**Note:- Soon we will create our own custom dashboards for redis exporter in grafana** - -- [Redis Dashboard for Prometheus](https://grafana.com/grafana/dashboards/763) +- [Redis Operator Cluster Dashboard for Prometheus](https://github.com/OT-CONTAINER-KIT/redis-operator/blob/master/dashboards/redis-operator-cluster.json)  diff --git a/docs/src/guide/images/grafana1.png b/docs/src/guide/images/grafana1.png index dca9e7837232206ca22b3af187867c244d2a1c38..67336dd2e28c674e386edba44422f56577ab6b36 100644 Binary files a/docs/src/guide/images/grafana1.png and b/docs/src/guide/images/grafana1.png differ diff --git a/docs/src/guide/images/grafana2.png b/docs/src/guide/images/grafana2.png index e2fe5a6e3edc4a140a9017b1470a3a28ed43bf00..afd10f4242acb090313550fa1817d43fd93a3654 100644 Binary files a/docs/src/guide/images/grafana2.png and b/docs/src/guide/images/grafana2.png differ diff --git a/docs/src/guide/installation.md b/docs/src/guide/installation.md index 7ea857b2b8a9b49a0f11cdca5ef89a9c45a49696..4e7412177bc5acffda3ca782133ff72f5f235cae 100644 --- a/docs/src/guide/installation.md +++ b/docs/src/guide/installation.md @@ -37,6 +37,7 @@ If you are beginner to Kubernetes and don't want to go inside the complexities o ```shell $ kubectl apply -f https://raw.githubusercontent.com/OT-CONTAINER-KIT/redis-operator/master/config/crd/bases/redis.redis.opstreelabs.in_redis.yaml +$ kubectl apply -f https://raw.githubusercontent.com/OT-CONTAINER-KIT/redis-operator/master/config/crd/bases/redis.redis.opstreelabs.in_redisclusters.yaml $ kubectl apply -f https://raw.githubusercontent.com/OT-CONTAINER-KIT/redis-operator/master/config/rbac/serviceaccount.yaml $ kubectl apply -f https://raw.githubusercontent.com/OT-CONTAINER-KIT/redis-operator/master/config/rbac/role.yaml $ kubectl apply -f https://raw.githubusercontent.com/OT-CONTAINER-KIT/redis-operator/master/config/rbac/role_binding.yaml diff --git a/docs/src/guide/monitoring.md b/docs/src/guide/monitoring.md index f7c0391ba32adc0ba8603d6e1b8c80e8f038663a..3658c780d8196302b6f5402257fa1c249336fde3 100644 --- a/docs/src/guide/monitoring.md +++ b/docs/src/guide/monitoring.md @@ -16,41 +16,57 @@ redisExporter: limits: cpu: 100m memory: 128Mi + env: + - name: REDIS_EXPORTER_INCL_SYSTEM_METRICS + value: "true" + - name: UI_PROPERTIES_FILE_NAME + valueFrom: + configMapKeyRef: + name: game-demo + key: ui_properties_file_name + - name: SECRET_USERNAME + valueFrom: + secretKeyRef: + name: mysecret + key: username ``` Once the exporter is configured, we may have to update Prometheus to monitor this endpoint. For [Prometheus Operator](https://github.com/prometheus-operator/prometheus-operator), we have to create a CRD based object called **ServiceMonitor**. +### Redis Cluster + ```yaml --- apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: - name: redis-monitoring-leader + name: redis-monitoring-cluster labels: redis-operator: "true" env: production spec: selector: matchLabels: - role: leader + redis_setup_type: cluster endpoints: - port: redis-exporter ``` +### Redis Standalone + ```yaml --- apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: - name: redis-monitoring-follower + name: redis-monitoring-standalone labels: redis-operator: "true" env: production spec: selector: matchLabels: - role: follower + redis_setup_type: standalone endpoints: - port: redis-exporter ``` - diff --git a/docs/src/guide/redis-cluster-config.md b/docs/src/guide/redis-cluster-config.md index d1acad9e32a8daec0f6b226e643d20dfb2127332..f1defccb8205cf75b1814146bb1e6adde32e6db4 100644 --- a/docs/src/guide/redis-cluster-config.md +++ b/docs/src/guide/redis-cluster-config.md @@ -82,6 +82,8 @@ In the `kubernetesConfig` section, we define configuration related to Kubernetes name: redis-secret key: password serviceType: LoadBalancer + imagePullSecrets: + - name: regcred ``` @@ -101,6 +103,19 @@ In the `kubernetesConfig` section, we define configuration related to Kubernetes limits: cpu: 100m memory: 128Mi + env: + - name: REDIS_EXPORTER_INCL_SYSTEM_METRICS + value: "true" + - name: UI_PROPERTIES_FILE_NAME + valueFrom: + configMapKeyRef: + name: game-demo + key: ui_properties_file_name + - name: SECRET_USERNAME + valueFrom: + secretKeyRef: + name: mysecret + key: username ``` **storage** diff --git a/docs/src/guide/redis-config.md b/docs/src/guide/redis-config.md index 647175f91f437114762c0c175bf9272715acf7c7..d46748ab64adc601e6cc9224aa100b5efdba4c4b 100644 --- a/docs/src/guide/redis-config.md +++ b/docs/src/guide/redis-config.md @@ -54,6 +54,8 @@ In the `kubernetesConfig` section, we define configuration related to Kubernetes name: redis-secret key: password serviceType: LoadBalancer + imagePullSecrets: + - name: regcred ``` @@ -73,6 +75,19 @@ In the `kubernetesConfig` section, we define configuration related to Kubernetes limits: cpu: 100m memory: 128Mi + env: + - name: REDIS_EXPORTER_INCL_SYSTEM_METRICS + value: "true" + - name: UI_PROPERTIES_FILE_NAME + valueFrom: + configMapKeyRef: + name: game-demo + key: ui_properties_file_name + - name: SECRET_USERNAME + valueFrom: + secretKeyRef: + name: mysecret + key: username ``` **storage** @@ -143,4 +158,3 @@ Tolerations for nodes and pods in Kubernetes. value: "value1" effect: "NoSchedule" ``` - diff --git a/docs/src/guide/setup.md b/docs/src/guide/setup.md index 57ab8fecac061d8b9733d60dec37d60d4bd1f326..747cde9f3ca7b539f56eb072b011ec0342549733 100644 --- a/docs/src/guide/setup.md +++ b/docs/src/guide/setup.md @@ -72,14 +72,14 @@ Verify the cluster by checking the pod status of leader and follower pods. ```shell $ kubectl get pods -n ot-operators ... -NAME READY STATUS RESTARTS AGE -redis-operator-74b6cbf5c5-td8t7 1/1 Running 1 90m -redis-follower-0 2/2 Running 0 75s -redis-leader-0 2/2 Running 0 76s -redis-follower-1 2/2 Running 0 54s -redis-leader-1 2/2 Running 0 49s -redis-follower-2 2/2 Running 0 35s -redis-leader-2 2/2 Running 0 26s +NAME READY STATUS RESTARTS AGE +redis-cluster-follower-0 1/1 Running 0 149m +redis-cluster-follower-1 1/1 Running 0 150m +redis-cluster-follower-2 1/1 Running 0 151m +redis-cluster-leader-0 1/1 Running 0 149m +redis-cluster-leader-1 1/1 Running 0 150m +redis-cluster-leader-2 1/1 Running 0 151m +redis-operator-5944ffd957-pt57s 1/1 Running 0 156m ``` If all the pods are in the running state of leader and follower Statefulsets, then we can check the health of the redis cluster by using `redis-cli`.