feat: add valkey chart
All checks were successful
release-charts-generic-device-plugin / release (push) Successful in 24s
release-charts-postgres-cluster / release (push) Successful in 20s
release-charts-valkey / release (push) Successful in 22s
lint-and-test / lint-helm (push) Successful in 1m18s
lint-and-test / chart-testing (push) Successful in 1m40s
renovate / renovate (push) Successful in 1m3s
All checks were successful
release-charts-generic-device-plugin / release (push) Successful in 24s
release-charts-postgres-cluster / release (push) Successful in 20s
release-charts-valkey / release (push) Successful in 22s
lint-and-test / lint-helm (push) Successful in 1m18s
lint-and-test / chart-testing (push) Successful in 1m40s
renovate / renovate (push) Successful in 1m3s
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
# generic-device-plugin
|
# generic-device-plugin
|
||||||
|
|
||||||
 
|
 
|
||||||
|
|
||||||
Generic Device Plugin
|
Generic Device Plugin
|
||||||
|
|
||||||
@@ -28,7 +28,7 @@ Generic Device Plugin
|
|||||||
| config | object | `{"data":"devices:\n - name: serial\n groups:\n - paths:\n - path: /dev/ttyUSB*\n - paths:\n - path: /dev/ttyACM*\n - paths:\n - path: /dev/tty.usb*\n - paths:\n - path: /dev/cu.*\n - paths:\n - path: /dev/cuaU*\n - paths:\n - path: /dev/rfcomm*\n - name: video\n groups:\n - paths:\n - path: /dev/video0\n - name: fuse\n groups:\n - count: 10\n paths:\n - path: /dev/fuse\n - name: audio\n groups:\n - count: 10\n paths:\n - path: /dev/snd\n - name: capture\n groups:\n - paths:\n - path: /dev/snd/controlC0\n - path: /dev/snd/pcmC0D0c\n - paths:\n - path: /dev/snd/controlC1\n mountPath: /dev/snd/controlC0\n - path: /dev/snd/pcmC1D0c\n mountPath: /dev/snd/pcmC0D0c\n - paths:\n - path: /dev/snd/controlC2\n mountPath: /dev/snd/controlC0\n - path: /dev/snd/pcmC2D0c\n mountPath: /dev/snd/pcmC0D0c\n - paths:\n - path: /dev/snd/controlC3\n mountPath: /dev/snd/controlC0\n - path: /dev/snd/pcmC3D0c\n mountPath: /dev/snd/pcmC0D0c\n","enabled":true}` | Config map |
|
| config | object | `{"data":"devices:\n - name: serial\n groups:\n - paths:\n - path: /dev/ttyUSB*\n - paths:\n - path: /dev/ttyACM*\n - paths:\n - path: /dev/tty.usb*\n - paths:\n - path: /dev/cu.*\n - paths:\n - path: /dev/cuaU*\n - paths:\n - path: /dev/rfcomm*\n - name: video\n groups:\n - paths:\n - path: /dev/video0\n - name: fuse\n groups:\n - count: 10\n paths:\n - path: /dev/fuse\n - name: audio\n groups:\n - count: 10\n paths:\n - path: /dev/snd\n - name: capture\n groups:\n - paths:\n - path: /dev/snd/controlC0\n - path: /dev/snd/pcmC0D0c\n - paths:\n - path: /dev/snd/controlC1\n mountPath: /dev/snd/controlC0\n - path: /dev/snd/pcmC1D0c\n mountPath: /dev/snd/pcmC0D0c\n - paths:\n - path: /dev/snd/controlC2\n mountPath: /dev/snd/controlC0\n - path: /dev/snd/pcmC2D0c\n mountPath: /dev/snd/pcmC0D0c\n - paths:\n - path: /dev/snd/controlC3\n mountPath: /dev/snd/controlC0\n - path: /dev/snd/pcmC3D0c\n mountPath: /dev/snd/pcmC0D0c\n","enabled":true}` | Config map |
|
||||||
| config.data | string | See [values.yaml](./values.yaml) | generic-device-plugin config file [[ref]](https://github.com/squat/generic-device-plugin#usage) |
|
| config.data | string | See [values.yaml](./values.yaml) | generic-device-plugin config file [[ref]](https://github.com/squat/generic-device-plugin#usage) |
|
||||||
| deviceDomain | string | `"devic.es"` | Domain used by devices for identifcation |
|
| deviceDomain | string | `"devic.es"` | Domain used by devices for identifcation |
|
||||||
| image | object | `{"pullPolicy":"Always","repository":"ghcr.io/squat/generic-device-plugin","tag":"latest@sha256:8e74085edef446b02116d0e851a7a5576b4681e07fe5be75c4e5f6791a8ad0f7"}` | Default image |
|
| image | object | `{"pullPolicy":"Always","repository":"ghcr.io/squat/generic-device-plugin","tag":"latest@sha256:78127620563730680371e2915d48d69dc3ab513f12c742ca6bcacd156051fd4b"}` | Default image |
|
||||||
| name | string | `"generic-device-plugin"` | Name override of release |
|
| name | string | `"generic-device-plugin"` | Name override of release |
|
||||||
| resources | object | `{"requests":{"cpu":"50m","memory":"10Mi"}}` | Default resources |
|
| resources | object | `{"requests":{"cpu":"50m","memory":"10Mi"}}` | Default resources |
|
||||||
| service | object | `{"listenPort":8080}` | Service port |
|
| service | object | `{"listenPort":8080}` | Service port |
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# postgres-cluster
|
# postgres-cluster
|
||||||
|
|
||||||
 
|
 
|
||||||
|
|
||||||
Cloudnative-pg Cluster
|
Cloudnative-pg Cluster
|
||||||
|
|
||||||
@@ -24,12 +24,12 @@ Cloudnative-pg Cluster
|
|||||||
| backup.method | string | `"objectStore"` | Method to create backups, options currently are only objectStore |
|
| backup.method | string | `"objectStore"` | Method to create backups, options currently are only objectStore |
|
||||||
| backup.objectStore | string | `nil` | Options for object store backups |
|
| backup.objectStore | string | `nil` | Options for object store backups |
|
||||||
| backup.scheduledBackups | list | `[]` | List of scheduled backups |
|
| backup.scheduledBackups | list | `[]` | List of scheduled backups |
|
||||||
| cluster | object | `{"additionalLabels":{},"affinity":{"enablePodAntiAffinity":true,"topologyKey":"kubernetes.io/hostname"},"annotations":{},"certificates":{},"enablePDB":true,"enableSuperuserAccess":false,"image":{"repository":"ghcr.io/cloudnative-pg/postgresql","tag":"18.1-standard-trixie"},"imagePullPolicy":"IfNotPresent","imagePullSecrets":[],"initdb":{"database":"app","owner":"app"},"instances":3,"logLevel":"info","monitoring":{"customQueries":[],"customQueriesSecret":[],"disableDefaultQueries":false,"enabled":true,"podMonitor":{"enabled":true,"metricRelabelings":[],"relabelings":[]},"prometheusRule":{"enabled":true,"excludeRules":["CNPGClusterLastFailedArchiveTimeWarning"]}},"postgresGID":-1,"postgresUID":-1,"postgresql":{"ldap":{},"parameters":{"hot_standby_feedback":"on","max_slot_wal_keep_size":"2000MB","shared_buffers":"128MB"},"pg_hba":[],"pg_ident":[],"shared_preload_libraries":[],"synchronous":{}},"primaryUpdateMethod":"switchover","primaryUpdateStrategy":"unsupervised","priorityClassName":"","resources":{"limits":{"hugepages-2Mi":"256Mi"},"requests":{"cpu":"100m","memory":"256Mi"}},"roles":[],"serviceAccountTemplate":{},"services":{},"storage":{"size":"10Gi","storageClass":"local-path"},"superuserSecret":"","walStorage":{"enabled":true,"size":"2Gi","storageClass":"local-path"}}` | Cluster settings |
|
| cluster | object | `{"additionalLabels":{},"affinity":{"enablePodAntiAffinity":true,"topologyKey":"kubernetes.io/hostname"},"annotations":{},"certificates":{},"enablePDB":true,"enableSuperuserAccess":false,"image":{"repository":"ghcr.io/cloudnative-pg/postgresql","tag":"18.3-standard-trixie"},"imagePullPolicy":"IfNotPresent","imagePullSecrets":[],"initdb":{"database":"app","owner":"app"},"instances":3,"logLevel":"info","monitoring":{"customQueries":[],"customQueriesSecret":[],"disableDefaultQueries":false,"enabled":true,"podMonitor":{"enabled":true,"metricRelabelings":[],"relabelings":[]},"prometheusRule":{"enabled":true,"excludeRules":["CNPGClusterLastFailedArchiveTimeWarning"]}},"postgresGID":-1,"postgresUID":-1,"postgresql":{"ldap":{},"parameters":{"hot_standby_feedback":"on","max_slot_wal_keep_size":"2000MB","shared_buffers":"128MB"},"pg_hba":[],"pg_ident":[],"shared_preload_libraries":[],"synchronous":{}},"primaryUpdateMethod":"switchover","primaryUpdateStrategy":"unsupervised","priorityClassName":"","resources":{"limits":{"hugepages-2Mi":"256Mi"},"requests":{"cpu":"100m","memory":"256Mi"}},"roles":[],"serviceAccountTemplate":{},"services":{},"storage":{"size":"10Gi","storageClass":"local-path"},"superuserSecret":"","walStorage":{"enabled":true,"size":"2Gi","storageClass":"local-path"}}` | Cluster settings |
|
||||||
| cluster.affinity | object | `{"enablePodAntiAffinity":true,"topologyKey":"kubernetes.io/hostname"}` | Affinity/Anti-affinity rules for Pods. See: https://cloudnative-pg.io/documentation/current/cloudnative-pg.v1/#postgresql-cnpg-io-v1-AffinityConfiguration |
|
| cluster.affinity | object | `{"enablePodAntiAffinity":true,"topologyKey":"kubernetes.io/hostname"}` | Affinity/Anti-affinity rules for Pods. See: https://cloudnative-pg.io/documentation/current/cloudnative-pg.v1/#postgresql-cnpg-io-v1-AffinityConfiguration |
|
||||||
| cluster.certificates | object | `{}` | The configuration for the CA and related certificates. See: https://cloudnative-pg.io/documentation/current/cloudnative-pg.v1/#postgresql-cnpg-io-v1-CertificatesConfiguration |
|
| cluster.certificates | object | `{}` | The configuration for the CA and related certificates. See: https://cloudnative-pg.io/documentation/current/cloudnative-pg.v1/#postgresql-cnpg-io-v1-CertificatesConfiguration |
|
||||||
| cluster.enablePDB | bool | `true` | Allow to disable PDB, mainly useful for upgrade of single-instance clusters or development purposes See: https://cloudnative-pg.io/documentation/current/kubernetes_upgrade/#pod-disruption-budgets |
|
| cluster.enablePDB | bool | `true` | Allow to disable PDB, mainly useful for upgrade of single-instance clusters or development purposes See: https://cloudnative-pg.io/documentation/current/kubernetes_upgrade/#pod-disruption-budgets |
|
||||||
| cluster.enableSuperuserAccess | bool | `false` | When this option is enabled, the operator will use the SuperuserSecret to update the postgres user password. If the secret is not present, the operator will automatically create one. When this option is disabled, the operator will ignore the SuperuserSecret content, delete it when automatically created, and then blank the password of the postgres user by setting it to NULL. |
|
| cluster.enableSuperuserAccess | bool | `false` | When this option is enabled, the operator will use the SuperuserSecret to update the postgres user password. If the secret is not present, the operator will automatically create one. When this option is disabled, the operator will ignore the SuperuserSecret content, delete it when automatically created, and then blank the password of the postgres user by setting it to NULL. |
|
||||||
| cluster.image | object | `{"repository":"ghcr.io/cloudnative-pg/postgresql","tag":"18.1-standard-trixie"}` | Default image |
|
| cluster.image | object | `{"repository":"ghcr.io/cloudnative-pg/postgresql","tag":"18.3-standard-trixie"}` | Default image |
|
||||||
| cluster.imagePullPolicy | string | `"IfNotPresent"` | Image pull policy. One of Always, Never or IfNotPresent. If not defined, it defaults to IfNotPresent. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images |
|
| cluster.imagePullPolicy | string | `"IfNotPresent"` | Image pull policy. One of Always, Never or IfNotPresent. If not defined, it defaults to IfNotPresent. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images |
|
||||||
| cluster.imagePullSecrets | list | `[]` | The list of pull secrets to be used to pull the images. See: https://cloudnative-pg.io/documentation/current/cloudnative-pg.v1/#postgresql-cnpg-io-v1-LocalObjectReference |
|
| cluster.imagePullSecrets | list | `[]` | The list of pull secrets to be used to pull the images. See: https://cloudnative-pg.io/documentation/current/cloudnative-pg.v1/#postgresql-cnpg-io-v1-LocalObjectReference |
|
||||||
| cluster.initdb | object | `{"database":"app","owner":"app"}` | Bootstrap is the configuration of the bootstrap process when initdb is used. See: https://cloudnative-pg.io/documentation/current/bootstrap/ See: https://cloudnative-pg.io/documentation/current/cloudnative-pg.v1/#postgresql-cnpg-io-v1-bootstrapinitdb |
|
| cluster.initdb | object | `{"database":"app","owner":"app"}` | Bootstrap is the configuration of the bootstrap process when initdb is used. See: https://cloudnative-pg.io/documentation/current/bootstrap/ See: https://cloudnative-pg.io/documentation/current/cloudnative-pg.v1/#postgresql-cnpg-io-v1-bootstrapinitdb |
|
||||||
|
|||||||
6
charts/valkey/Chart.lock
Normal file
6
charts/valkey/Chart.lock
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
dependencies:
|
||||||
|
- name: valkey
|
||||||
|
repository: https://valkey.io/valkey-helm/
|
||||||
|
version: 0.9.3
|
||||||
|
digest: sha256:705fdaa1d456e55dd1a8aba698e17b2309a336f614cba8fd3cdb7e072b323b36
|
||||||
|
generated: "2026-03-03T16:02:43.407652-06:00"
|
||||||
21
charts/valkey/Chart.yaml
Normal file
21
charts/valkey/Chart.yaml
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
apiVersion: v2
|
||||||
|
name: valkey
|
||||||
|
version: 0.1.0
|
||||||
|
description: Valkey chart with preconfigured settings
|
||||||
|
keywords:
|
||||||
|
- valkey
|
||||||
|
- redis
|
||||||
|
- storage
|
||||||
|
- kubernetes
|
||||||
|
sources:
|
||||||
|
- https://github.com/valkey-io/valkey
|
||||||
|
- https://github.com/valkey-io/valkey-helm
|
||||||
|
maintainers:
|
||||||
|
- name: alexlebens
|
||||||
|
dependencies:
|
||||||
|
- name: valkey
|
||||||
|
repository: https://valkey.io/valkey-helm/
|
||||||
|
version: 0.9.3
|
||||||
|
icon: https://dyltqmyl993wv.cloudfront.net/assets/stacks/valkey/img/valkey-stack-220x234.png
|
||||||
|
# renovate: datasource=github-releases depName=valkey-io/valkey
|
||||||
|
appVersion: 9.0.3
|
||||||
73
charts/valkey/README.md
Normal file
73
charts/valkey/README.md
Normal file
@@ -0,0 +1,73 @@
|
|||||||
|
# valkey
|
||||||
|
|
||||||
|
 
|
||||||
|
|
||||||
|
Valkey chart with preconfigured settings
|
||||||
|
|
||||||
|
## Maintainers
|
||||||
|
|
||||||
|
| Name | Email | Url |
|
||||||
|
| ---- | ------ | --- |
|
||||||
|
| alexlebens | | |
|
||||||
|
|
||||||
|
## Source Code
|
||||||
|
|
||||||
|
* <https://github.com/valkey-io/valkey>
|
||||||
|
* <https://github.com/valkey-io/valkey-helm>
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
| Repository | Name | Version |
|
||||||
|
|------------|------|---------|
|
||||||
|
| https://valkey.io/valkey-helm/ | valkey | 0.9.3 |
|
||||||
|
|
||||||
|
## Values
|
||||||
|
|
||||||
|
| Key | Type | Default | Description |
|
||||||
|
|-----|------|---------|-------------|
|
||||||
|
| valkey.dataStorage.accessModes[0] | string | `"ReadWriteOnce"` | |
|
||||||
|
| valkey.dataStorage.className | string | `"ceph-block"` | |
|
||||||
|
| valkey.dataStorage.enabled | bool | `true` | |
|
||||||
|
| valkey.dataStorage.keepPvc | bool | `false` | |
|
||||||
|
| valkey.dataStorage.requestedSize | string | `"1Gi"` | |
|
||||||
|
| valkey.image.registry | string | `"docker.io"` | |
|
||||||
|
| valkey.image.repository | string | `"valkey/valkey"` | |
|
||||||
|
| valkey.image.tag | string | `"9.0.3"` | |
|
||||||
|
| valkey.metrics.enabled | bool | `true` | |
|
||||||
|
| valkey.metrics.exporter.image.registry | string | `"ghcr.io"` | |
|
||||||
|
| valkey.metrics.exporter.image.repository | string | `"oliver006/redis_exporter"` | |
|
||||||
|
| valkey.metrics.exporter.image.tag | string | `"v1.79.0"` | |
|
||||||
|
| valkey.metrics.exporter.resources.requests.cpu | string | `"10m"` | |
|
||||||
|
| valkey.metrics.exporter.resources.requests.memory | string | `"64M"` | |
|
||||||
|
| valkey.metrics.podMonitor.enabled | bool | `true` | |
|
||||||
|
| valkey.metrics.prometheusRule.enabled | bool | `true` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[0].alert | string | `"ValkeyDown"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[0].annotations.description | string | `"Valkey instance {{ \"{{ $labels.instance }}\" }} is down."` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[0].annotations.summary | string | `"Valkey instance {{ \"{{ $labels.instance }}\" }} down"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[0].expr | string | `"redis_up{service=\"{{ include \"valkey.fullname\" . }}-metrics\"} == 0\n"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[0].for | string | `"2m"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[0].labels.severity | string | `"error"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[1].alert | string | `"ValkeyMemoryHigh"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[1].annotations.description | string | `"Valkey instance {{ \"{{ $labels.instance }}\" }} is using {{ \"{{ $value }}\" }}% of its available memory.\n"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[1].annotations.summary | string | `"Valkey instance {{ \"{{ $labels.instance }}\" }} is using too much memory"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[1].expr | string | `"redis_memory_used_bytes{service=\"{{ include \"valkey.fullname\" . }}-metrics\"} * 100\n/\nredis_memory_max_bytes{service=\"{{ include \"valkey.fullname\" . }}-metrics\"}\n> 90 <= 100\n"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[1].for | string | `"2m"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[1].labels.severity | string | `"error"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[2].alert | string | `"ValkeyKeyEviction"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[2].annotations.description | string | `"Valkey instance {{ \"{{ $labels.instance }}\" }} has evicted {{ \"{{ $value }}\" }} keys in the last 5 minutes.\n"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[2].annotations.summary | string | `"Valkey instance {{ \"{{ $labels.instance }}\" }} has evicted keys"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[2].expr | string | `"increase(redis_evicted_keys_total{service=\"{{ include \"valkey.fullname\" . }}-metrics\"}[5m]) > 0\n"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[2].for | string | `"1s"` | |
|
||||||
|
| valkey.metrics.prometheusRule.rules[2].labels.severity | string | `"error"` | |
|
||||||
|
| valkey.metrics.serviceMonitor.enabled | bool | `true` | |
|
||||||
|
| valkey.replica.enabled | bool | `true` | |
|
||||||
|
| valkey.replica.persistence.accessModes[0] | string | `"ReadWriteOnce"` | |
|
||||||
|
| valkey.replica.persistence.size | string | `"1Gi"` | |
|
||||||
|
| valkey.replica.persistence.storageClass | string | `"ceph-block"` | |
|
||||||
|
| valkey.replica.replicas | int | `2` | |
|
||||||
|
| valkey.resources.requests.cpu | string | `"10m"` | |
|
||||||
|
| valkey.resources.requests.memory | string | `"128Mi"` | |
|
||||||
|
| valkey.serviceAccount.create | bool | `true` | |
|
||||||
|
|
||||||
|
----------------------------------------------
|
||||||
|
Autogenerated from chart metadata using [helm-docs v1.14.2](https://github.com/norwoodj/helm-docs/releases/v1.14.2)
|
||||||
76
charts/valkey/values.yaml
Normal file
76
charts/valkey/values.yaml
Normal file
@@ -0,0 +1,76 @@
|
|||||||
|
valkey:
|
||||||
|
image:
|
||||||
|
registry: docker.io
|
||||||
|
repository: valkey/valkey
|
||||||
|
tag: 9.0.3
|
||||||
|
serviceAccount:
|
||||||
|
create: true
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
cpu: 10m
|
||||||
|
memory: 128Mi
|
||||||
|
dataStorage:
|
||||||
|
enabled: true
|
||||||
|
requestedSize: 1Gi
|
||||||
|
className: ceph-block
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
keepPvc: false
|
||||||
|
replica:
|
||||||
|
enabled: true
|
||||||
|
replicas: 2
|
||||||
|
persistence:
|
||||||
|
size: 1Gi
|
||||||
|
storageClass: ceph-block
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
metrics:
|
||||||
|
enabled: true
|
||||||
|
exporter:
|
||||||
|
image:
|
||||||
|
registry: ghcr.io
|
||||||
|
repository: oliver006/redis_exporter
|
||||||
|
tag: v1.79.0
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
cpu: 10m
|
||||||
|
memory: 64M
|
||||||
|
serviceMonitor:
|
||||||
|
enabled: true
|
||||||
|
podMonitor:
|
||||||
|
enabled: true
|
||||||
|
prometheusRule:
|
||||||
|
enabled: true
|
||||||
|
rules:
|
||||||
|
- alert: ValkeyDown
|
||||||
|
annotations:
|
||||||
|
summary: Valkey instance {{ "{{ $labels.instance }}" }} down
|
||||||
|
description: Valkey instance {{ "{{ $labels.instance }}" }} is down.
|
||||||
|
expr: |
|
||||||
|
redis_up{service="{{ include "valkey.fullname" . }}-metrics"} == 0
|
||||||
|
for: 2m
|
||||||
|
labels:
|
||||||
|
severity: error
|
||||||
|
- alert: ValkeyMemoryHigh
|
||||||
|
annotations:
|
||||||
|
summary: Valkey instance {{ "{{ $labels.instance }}" }} is using too much memory
|
||||||
|
description: |
|
||||||
|
Valkey instance {{ "{{ $labels.instance }}" }} is using {{ "{{ $value }}" }}% of its available memory.
|
||||||
|
expr: |
|
||||||
|
redis_memory_used_bytes{service="{{ include "valkey.fullname" . }}-metrics"} * 100
|
||||||
|
/
|
||||||
|
redis_memory_max_bytes{service="{{ include "valkey.fullname" . }}-metrics"}
|
||||||
|
> 90 <= 100
|
||||||
|
for: 2m
|
||||||
|
labels:
|
||||||
|
severity: error
|
||||||
|
- alert: ValkeyKeyEviction
|
||||||
|
annotations:
|
||||||
|
summary: Valkey instance {{ "{{ $labels.instance }}" }} has evicted keys
|
||||||
|
description: |
|
||||||
|
Valkey instance {{ "{{ $labels.instance }}" }} has evicted {{ "{{ $value }}" }} keys in the last 5 minutes.
|
||||||
|
expr: |
|
||||||
|
increase(redis_evicted_keys_total{service="{{ include "valkey.fullname" . }}-metrics"}[5m]) > 0
|
||||||
|
for: 1s
|
||||||
|
labels:
|
||||||
|
severity: error
|
||||||
Reference in New Issue
Block a user