From 57c2ce938f062bdefb92311af333465215d70bbe Mon Sep 17 00:00:00 2001 From: Alex Lebens Date: Thu, 8 Jan 2026 15:42:48 -0600 Subject: [PATCH] refactor sentinel --- charts/redis-replication/Chart.yaml | 2 +- charts/redis-replication/README.md | 13 ++---- .../redis-replication/templates/_helpers.tpl | 14 ------ .../templates/redis-replication.yaml | 15 +++--- charts/redis-replication/values.yaml | 46 ++++++------------- 5 files changed, 27 insertions(+), 63 deletions(-) diff --git a/charts/redis-replication/Chart.yaml b/charts/redis-replication/Chart.yaml index 34c73b2..56c864e 100644 --- a/charts/redis-replication/Chart.yaml +++ b/charts/redis-replication/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v2 name: redis-replication -version: 0.7.0 +version: 1.0.0 description: Redis Replication with Sentinel keywords: - redis-operator diff --git a/charts/redis-replication/README.md b/charts/redis-replication/README.md index 5a72b1c..c22f5ea 100644 --- a/charts/redis-replication/README.md +++ b/charts/redis-replication/README.md @@ -1,6 +1,6 @@ # redis-replication -![Version: 0.7.0](https://img.shields.io/badge/Version-0.7.0-informational?style=flat-square) ![AppVersion: v0.23.0](https://img.shields.io/badge/AppVersion-v0.23.0-informational?style=flat-square) +![Version: 1.0.0](https://img.shields.io/badge/Version-1.0.0-informational?style=flat-square) ![AppVersion: v0.23.0](https://img.shields.io/badge/AppVersion-v0.23.0-informational?style=flat-square) Redis Replication with Sentinel @@ -22,19 +22,16 @@ Redis Replication with Sentinel | additionalLabels | object | `{}` | Add additional labels | | existingSecret | object | `{"enabled":false,"key":"password","name":"secret-name"}` | Password | | namespaceOverride | string | `""` | Override the namespace of the chart | -| redisReplication | object | `{"clusterSize":3,"image":{"pullPolicy":"IfNotPresent","repository":"quay.io/opstree/redis","tag":"v8.4.0"},"podSecurityContext":{"fsGroup":1000,"runAsUser":1000},"redisExporter":{"enabled":true,"image":{"repository":"quay.io/opstree/redis-exporter","tag":"v1.80.1"},"serviceMonitor":{"enabled":true,"extraLabels":{},"interval":"30s","scrapeTimeout":"10s"}},"resources":{"requests":{"cpu":"10m","memory":"32Mi"}},"volumeClaimTemplate":{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}},"storageClassName":"ceph-block"}}}` | Redis Replication settings | +| redisReplication | object | `{"clusterSize":3,"image":{"pullPolicy":"IfNotPresent","repository":"quay.io/opstree/redis","tag":"v8.4.0"},"podSecurityContext":{"fsGroup":1000,"runAsUser":1000},"redisExporter":{"enabled":true,"image":{"repository":"quay.io/opstree/redis-exporter","tag":"v1.80.1"},"serviceMonitor":{"enabled":true,"extraLabels":{},"interval":"30s","scrapeTimeout":"10s"}},"resources":{"requests":{"cpu":"10m","memory":"32Mi"}},"sentinel":{"enabled":false,"image":{"pullPolicy":"IfNotPresent","repository":"quay.io/opstree/redis-sentinel","tag":"v8.4.0"},"resources":{"requests":{"cpu":"10m","memory":"32Mi"}},"size":3},"volumeClaimTemplate":{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}},"storageClassName":"ceph-block"}}}` | Redis Replication settings | | redisReplication.image | object | `{"pullPolicy":"IfNotPresent","repository":"quay.io/opstree/redis","tag":"v8.4.0"}` | Image | | redisReplication.podSecurityContext | object | `{"fsGroup":1000,"runAsUser":1000}` | Security | | redisReplication.redisExporter | object | `{"enabled":true,"image":{"repository":"quay.io/opstree/redis-exporter","tag":"v1.80.1"},"serviceMonitor":{"enabled":true,"extraLabels":{},"interval":"30s","scrapeTimeout":"10s"}}` | Metrics | | redisReplication.resources | object | `{"requests":{"cpu":"10m","memory":"32Mi"}}` | Resources | +| redisReplication.sentinel | object | `{"enabled":false,"image":{"pullPolicy":"IfNotPresent","repository":"quay.io/opstree/redis-sentinel","tag":"v8.4.0"},"resources":{"requests":{"cpu":"10m","memory":"32Mi"}},"size":3}` | Redis Sentinel settings | +| redisReplication.sentinel.image | object | `{"pullPolicy":"IfNotPresent","repository":"quay.io/opstree/redis-sentinel","tag":"v8.4.0"}` | Image | +| redisReplication.sentinel.resources | object | `{"requests":{"cpu":"10m","memory":"32Mi"}}` | Resources | | redisReplication.volumeClaimTemplate | object | `{"spec":{"accessModes":["ReadWriteOnce"],"resources":{"requests":{"storage":"1Gi"}},"storageClassName":"ceph-block"}}` | Storage | -| redisSentinel | object | `{"clusterSize":3,"enabled":false,"image":{"pullPolicy":"IfNotPresent","repository":"quay.io/opstree/redis-sentinel","tag":"v8.4.0"},"podSecurityContext":{"fsGroup":1000,"runAsUser":1000},"redisExporter":{"enabled":true,"image":{"repository":"quay.io/opstree/redis-exporter","tag":"v1.80.1"},"serviceMonitor":{"enabled":true,"extraLabels":{},"interval":"30s","scrapeTimeout":"10s"}},"resources":{"requests":{"cpu":"10m","memory":"32Mi"}}}` | Redis Sentinel settings | -| redisSentinel.image | object | `{"pullPolicy":"IfNotPresent","repository":"quay.io/opstree/redis-sentinel","tag":"v8.4.0"}` | Image | -| redisSentinel.podSecurityContext | object | `{"fsGroup":1000,"runAsUser":1000}` | Security | -| redisSentinel.redisExporter | object | `{"enabled":true,"image":{"repository":"quay.io/opstree/redis-exporter","tag":"v1.80.1"},"serviceMonitor":{"enabled":true,"extraLabels":{},"interval":"30s","scrapeTimeout":"10s"}}` | Metrics | -| redisSentinel.resources | object | `{"requests":{"cpu":"10m","memory":"32Mi"}}` | Resources | | replicationNameOverride | string | `""` | Override the name of the resources | -| sentinelNameOverride | string | `""` | | ---------------------------------------------- Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2) diff --git a/charts/redis-replication/templates/_helpers.tpl b/charts/redis-replication/templates/_helpers.tpl index b8eb891..d861e95 100644 --- a/charts/redis-replication/templates/_helpers.tpl +++ b/charts/redis-replication/templates/_helpers.tpl @@ -9,14 +9,6 @@ Expand the names {{- end }} {{- end }} -{{- define "redis.sentinelName" -}} - {{- if .Values.sentinelNameOverride }} - {{- .Values.sentinelNameOverride | trunc 63 | trimSuffix "-" }} - {{- else }} - {{- printf "redis-sentinel-%s" .Release.Name -}} - {{- end }} -{{- end }} - {{/* Allow the release namespace to be overridden for multi-namespace deployments in combined charts */}} @@ -57,9 +49,3 @@ app.kubernetes.io/name: {{ include "redis.replicationName" $ }} app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/part-of: {{ .Release.Name }} {{- end }} - -{{- define "redis.sentinelSelectorLabels" -}} -app.kubernetes.io/name: {{ include "redis.sentinelName" $ }} -app.kubernetes.io/instance: {{ .Release.Name }} -app.kubernetes.io/part-of: {{ .Release.Name }} -{{- end }} diff --git a/charts/redis-replication/templates/redis-replication.yaml b/charts/redis-replication/templates/redis-replication.yaml index 87c1e68..36b59bf 100644 --- a/charts/redis-replication/templates/redis-replication.yaml +++ b/charts/redis-replication/templates/redis-replication.yaml @@ -20,9 +20,8 @@ spec: resources: {{- with .Values.redisReplication.resources }} {{- toYaml . | nindent 6 }} - {{ end }} - - {{ if .Values.existingSecret.enabled }} + {{- end }} + {{- if .Values.existingSecret.enabled }} redisSecret: name: {{ .Values.existingSecret.name }} key: {{ .Values.existingSecret.key }} @@ -38,10 +37,10 @@ spec: enabled: {{ .Values.redisReplication.redisExporter.enabled }} image: "{{ .Values.redisReplication.redisExporter.image.repository }}:{{ .Values.redisReplication.redisExporter.image.tag }}" - {{- if .Values.redisSentinel.enabled }} + {{- if .Values.redisReplication.sentinel.enabled }} sentinel: - image: "{{ .Values.redisSentinel.image.repository }}:{{ .Values.redisSentinel.image.tag }}" - imagePullPolicy: {{ .Values.redisSentinel.image.pullPolicy }} + image: "{{ .Values.redisReplication.sentinel.image.repository }}:{{ .Values.redisReplication.sentinel.image.tag }}" + imagePullPolicy: {{ .Values.redisReplication.sentinel.image.pullPolicy }} {{ if .Values.existingSecret.enabled }} redisSecret: @@ -50,9 +49,9 @@ spec: {{- end }} resources: - {{- with .Values.redisSentinel.resources }} + {{- with .Values.redisReplication.sentinel.resources }} {{- toYaml . | nindent 10 }} {{- end }} - size: {{ .Values.redisSentinel.clusterSize }} + size: {{ .Values.redisReplication.sentinel.size }} {{- end }} diff --git a/charts/redis-replication/values.yaml b/charts/redis-replication/values.yaml index 22f3784..5ecdbb9 100644 --- a/charts/redis-replication/values.yaml +++ b/charts/redis-replication/values.yaml @@ -1,6 +1,5 @@ # -- Override the name of the resources replicationNameOverride: "" -sentinelNameOverride: "" # -- Override the namespace of the chart namespaceOverride: "" @@ -57,36 +56,19 @@ redisReplication: scrapeTimeout: 10s extraLabels: {} -# -- Redis Sentinel settings -redisSentinel: - enabled: false - clusterSize: 3 + # -- Redis Sentinel settings + sentinel: + enabled: false + size: 3 - # -- Security - podSecurityContext: - runAsUser: 1000 - fsGroup: 1000 - - # -- Image - image: - repository: quay.io/opstree/redis-sentinel - tag: v8.4.0 - pullPolicy: IfNotPresent - - # -- Resources - resources: - requests: - cpu: 10m - memory: 32Mi - - # -- Metrics - redisExporter: - enabled: true + # -- Image image: - repository: quay.io/opstree/redis-exporter - tag: v1.80.1 - serviceMonitor: - enabled: true - interval: 30s - scrapeTimeout: 10s - extraLabels: {} + repository: quay.io/opstree/redis-sentinel + tag: v8.4.0 + pullPolicy: IfNotPresent + + # -- Resources + resources: + requests: + cpu: 10m + memory: 32Mi