iac/infrastructure/valkey/vk-prod/valkey.yaml

103 lines
2.3 KiB
YAML

apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: valkey
namespace: valkey
spec:
interval: 5m
timeout: 15m
chart:
spec:
chart: valkey
version: "0.1.0"
sourceRef:
kind: HelmRepository
name: yc-oci-charts
namespace: flux-system
interval: 10m
install:
remediation:
retries: 3
upgrade:
remediation:
retries: 0
remediateLastFailure: false
values:
fullnameOverride: valkey
global:
imagePullSecrets:
- regcred
security:
allowInsecureImages: true
architecture: replication
auth:
enabled: true
sentinel: true
commonConfiguration: |-
appendonly yes
save ""
maxmemory 6gb
aclfile /opt/bitnami/valkey/acl/users.acl
serviceAccount:
create: true
automountServiceAccountToken: true
rbac:
create: true
sentinel:
enabled: true
primarySet: mymaster
quorum: 2
downAfterMilliseconds: 10000
failoverTimeout: 60000
automateClusterRecovery: true
service:
createPrimary: true
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
memory: 256Mi
replica:
replicaCount: 3
automountServiceAccountToken: true
podAntiAffinityPreset: hard
nodeSelector:
dedicated: sts
tolerations:
- key: dedicated
operator: Equal
value: sts
effect: NoSchedule
topologySpreadConstraints:
- maxSkew: 1
topologyKey: topology.kubernetes.io/zone
whenUnsatisfiable: DoNotSchedule
labelSelector:
matchLabels:
app.kubernetes.io/name: valkey
app.kubernetes.io/instance: valkey
app.kubernetes.io/component: node
resources:
requests:
cpu: "2"
memory: 8Gi
limits:
cpu: "2"
memory: 8Gi
persistence:
enabled: true
size: 32Gi
storageClass: csi-ceph-ssd-retain
extraVolumes:
- name: users-acl
secret:
secretName: valkey-users-acl
defaultMode: 292
extraVolumeMounts:
- name: users-acl
mountPath: /opt/bitnami/valkey/acl
readOnly: true
metrics:
enabled: false