diff --git a/clusters/cl01tl/helm/matrix-synapse/Chart.lock b/clusters/cl01tl/helm/matrix-synapse/Chart.lock index 251211aa3..279ccb381 100644 --- a/clusters/cl01tl/helm/matrix-synapse/Chart.lock +++ b/clusters/cl01tl/helm/matrix-synapse/Chart.lock @@ -20,5 +20,11 @@ dependencies: - name: postgres-cluster repository: oci://harbor.alexlebens.net/helm-charts version: 6.16.1 -digest: sha256:70e8b9480a6eac2ffe4b2e049aac1da6b7ff282e8930d555e008fbd769e84a8f -generated: "2025-12-13T13:28:40.160104-06:00" +- name: redis-replication + repository: oci://harbor.alexlebens.net/helm-charts + version: 0.5.0 +- name: redis-replication + repository: oci://harbor.alexlebens.net/helm-charts + version: 0.5.0 +digest: sha256:8db54411796eac34b51de42ebb7832d27641390f98d35b73f0f3bec30d835916 +generated: "2025-12-15T13:12:11.539381-06:00" diff --git a/clusters/cl01tl/helm/matrix-synapse/Chart.yaml b/clusters/cl01tl/helm/matrix-synapse/Chart.yaml index b867c1ab2..7b538be36 100644 --- a/clusters/cl01tl/helm/matrix-synapse/Chart.yaml +++ b/clusters/cl01tl/helm/matrix-synapse/Chart.yaml @@ -55,5 +55,13 @@ dependencies: alias: postgres-18-cluster version: 6.16.1 repository: oci://harbor.alexlebens.net/helm-charts + - name: redis-replication + alias: redis-replication-matrix-synapse + version: 0.5.0 + repository: oci://harbor.alexlebens.net/helm-charts + - name: redis-replication + alias: redis-replication-hookshot + version: 0.5.0 + repository: oci://harbor.alexlebens.net/helm-charts icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/matrix.png appVersion: 1.144.0 diff --git a/clusters/cl01tl/helm/matrix-synapse/templates/redis-replication.yaml b/clusters/cl01tl/helm/matrix-synapse/templates/redis-replication.yaml deleted file mode 100644 index c643dda33..000000000 --- a/clusters/cl01tl/helm/matrix-synapse/templates/redis-replication.yaml +++ /dev/null @@ -1,69 +0,0 @@ -apiVersion: redis.redis.opstreelabs.in/v1beta2 -kind: RedisReplication -metadata: - name: redis-replication-matrix-synapse - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: redis-replication-matrix-synapse - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - clusterSize: 3 - podSecurityContext: - runAsUser: 1000 - fsGroup: 1000 - kubernetesConfig: - image: quay.io/opstree/redis:v8.4.0 - imagePullPolicy: IfNotPresent - redisSecret: - name: matrix-synapse-redis-secret - key: password - resources: - requests: - cpu: 50m - memory: 128Mi - storage: - volumeClaimTemplate: - spec: - storageClassName: ceph-block - accessModes: ["ReadWriteOnce"] - resources: - requests: - storage: 1Gi - redisExporter: - enabled: true - image: quay.io/opstree/redis-exporter:v1.80.1 - ---- -apiVersion: redis.redis.opstreelabs.in/v1beta2 -kind: RedisReplication -metadata: - name: redis-replication-hookshot - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: redis-replication-hookshot - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - clusterSize: 3 - podSecurityContext: - runAsUser: 1000 - fsGroup: 1000 - kubernetesConfig: - image: quay.io/opstree/redis:v8.4.0 - imagePullPolicy: IfNotPresent - resources: - requests: - cpu: 50m - memory: 128Mi - storage: - volumeClaimTemplate: - spec: - storageClassName: ceph-block - accessModes: ["ReadWriteOnce"] - resources: - requests: - storage: 1Gi - redisExporter: - enabled: true - image: quay.io/opstree/redis-exporter:v1.80.1 diff --git a/clusters/cl01tl/helm/matrix-synapse/templates/redis-sentinel.yaml b/clusters/cl01tl/helm/matrix-synapse/templates/redis-sentinel.yaml deleted file mode 100644 index 78f5876ac..000000000 --- a/clusters/cl01tl/helm/matrix-synapse/templates/redis-sentinel.yaml +++ /dev/null @@ -1,55 +0,0 @@ -apiVersion: redis.redis.opstreelabs.in/v1beta2 -kind: RedisSentinel -metadata: - name: redis-sentinel-matrix-synapse - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: redis-sentinel-matrix-synapse - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - clusterSize: 3 - podSecurityContext: - runAsUser: 1000 - fsGroup: 1000 - redisSentinelConfig: - redisReplicationName: redis-replication-matrix-synapse - redisReplicationPassword: - secretKeyRef: - name: matrix-synapse-redis-secret - key: password - kubernetesConfig: - image: quay.io/opstree/redis-sentinel:v8.4.0 - imagePullPolicy: IfNotPresent - redisSecret: - name: matrix-synapse-redis-secret - key: password - resources: - requests: - cpu: 10m - memory: 128Mi - ---- -apiVersion: redis.redis.opstreelabs.in/v1beta2 -kind: RedisSentinel -metadata: - name: redis-sentinel-hookshot - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: redis-sentinel-hookshot - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - clusterSize: 3 - podSecurityContext: - runAsUser: 1000 - fsGroup: 1000 - redisSentinelConfig: - redisReplicationName: redis-replication-hookshot - kubernetesConfig: - image: quay.io/opstree/redis-sentinel:v8.4.0 - imagePullPolicy: IfNotPresent - resources: - requests: - cpu: 10m - memory: 128Mi diff --git a/clusters/cl01tl/helm/matrix-synapse/templates/service-monitor.yaml b/clusters/cl01tl/helm/matrix-synapse/templates/service-monitor.yaml index 99fc2e158..6cd0e743a 100644 --- a/clusters/cl01tl/helm/matrix-synapse/templates/service-monitor.yaml +++ b/clusters/cl01tl/helm/matrix-synapse/templates/service-monitor.yaml @@ -38,24 +38,3 @@ spec: interval: 3m scrapeTimeout: 1m path: /metrics - ---- -apiVersion: monitoring.coreos.com/v1 -kind: ServiceMonitor -metadata: - name: redis-replication-matrix-synapse - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: redis-replication-matrix-synapse - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} - redis-operator: "true" - env: production -spec: - selector: - matchLabels: - redis_setup_type: replication - endpoints: - - port: redis-exporter - interval: 30s - scrapeTimeout: 10s diff --git a/clusters/cl01tl/helm/matrix-synapse/values.yaml b/clusters/cl01tl/helm/matrix-synapse/values.yaml index 9e5f3d8ce..d7689fda8 100644 --- a/clusters/cl01tl/helm/matrix-synapse/values.yaml +++ b/clusters/cl01tl/helm/matrix-synapse/values.yaml @@ -451,3 +451,25 @@ postgres-18-cluster: # immediate: true # schedule: "0 0 4 * * SAT" # backupName: garage-remote +redis-replication-matrix-synapse: + replicationNameOverride: redis-replication-matrix-synapse + sentinelNameOverride: redis-sentinel-matrix-synapse + existingSecret: + enabled: true + name: matrix-synapse-redis-secret + key: password + redisReplication: + clusterSize: 3 + redisSentinel: + enabled: true + clusterSize: 3 +redis-replication-hookshot: + replicationNameOverride: redis-replication-hookshot + sentinelNameOverride: redis-sentinel-hookshot + existingSecret: + enabled: false + redisReplication: + clusterSize: 1 + redisSentinel: + enabled: true + clusterSize: 3