This commit is contained in:
Philip Haupt
2025-05-17 22:25:56 +02:00
parent ebbe85ebca
commit d3bc960b55
4 changed files with 1156 additions and 0 deletions

6
redis/kustomization.yaml Normal file
View File

@@ -0,0 +1,6 @@
---
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- main.yaml

464
redis/main.yaml Normal file
View File

@@ -0,0 +1,464 @@
apiVersion: v1
automountServiceAccountToken: false
kind: ServiceAccount
metadata:
labels:
app.kubernetes.io/instance: redis
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: redis
app.kubernetes.io/version: 8.0.1
helm.sh/chart: redis-21.1.3
name: redis-master
namespace: redis
---
apiVersion: v1
data:
master.conf: |-
dir /data
# User-supplied master configuration:
rename-command FLUSHDB, ""
rename-command FLUSHALL ""
# End of master configuration
redis.conf: |-
# User-supplied common configuration:
# End of common configuration
replica.conf: |-
dir /data
# User-supplied replica configuration:
rename-command FLUSHDB, ""
rename-command FLUSHALL ""
# End of replica configuration
users.acl: ""
kind: ConfigMap
metadata:
labels:
app.kubernetes.io/instance: redis
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: redis
app.kubernetes.io/version: 8.0.1
helm.sh/chart: redis-21.1.3
name: redis-configuration
namespace: redis
---
apiVersion: v1
data:
ping_liveness_local.sh: |-
#!/bin/bash
[[ -f $REDIS_PASSWORD_FILE ]] && export REDIS_PASSWORD="$(< "${REDIS_PASSWORD_FILE}")"
[[ -n "$REDIS_PASSWORD" ]] && export REDISCLI_AUTH="$REDIS_PASSWORD"
response=$(
timeout -s 15 $1 \
redis-cli \
-h localhost \
-p $REDIS_PORT \
ping
)
if [ "$?" -eq "124" ]; then
echo "Timed out"
exit 1
fi
responseFirstWord=$(echo $response | head -n1 | awk '{print $1;}')
if [ "$response" != "PONG" ] && [ "$responseFirstWord" != "LOADING" ] && [ "$responseFirstWord" != "MASTERDOWN" ]; then
echo "$response"
exit 1
fi
ping_liveness_local_and_master.sh: |-
script_dir="$(dirname "$0")"
exit_status=0
"$script_dir/ping_liveness_local.sh" $1 || exit_status=$?
"$script_dir/ping_liveness_master.sh" $1 || exit_status=$?
exit $exit_status
ping_liveness_master.sh: |-
#!/bin/bash
[[ -f $REDIS_MASTER_PASSWORD_FILE ]] && export REDIS_MASTER_PASSWORD="$(< "${REDIS_MASTER_PASSWORD_FILE}")"
[[ -n "$REDIS_MASTER_PASSWORD" ]] && export REDISCLI_AUTH="$REDIS_MASTER_PASSWORD"
response=$(
timeout -s 15 $1 \
redis-cli \
-h $REDIS_MASTER_HOST \
-p $REDIS_MASTER_PORT_NUMBER \
ping
)
if [ "$?" -eq "124" ]; then
echo "Timed out"
exit 1
fi
responseFirstWord=$(echo $response | head -n1 | awk '{print $1;}')
if [ "$response" != "PONG" ] && [ "$responseFirstWord" != "LOADING" ]; then
echo "$response"
exit 1
fi
ping_readiness_local.sh: |-
#!/bin/bash
[[ -f $REDIS_PASSWORD_FILE ]] && export REDIS_PASSWORD="$(< "${REDIS_PASSWORD_FILE}")"
[[ -n "$REDIS_PASSWORD" ]] && export REDISCLI_AUTH="$REDIS_PASSWORD"
response=$(
timeout -s 15 $1 \
redis-cli \
-h localhost \
-p $REDIS_PORT \
ping
)
if [ "$?" -eq "124" ]; then
echo "Timed out"
exit 1
fi
if [ "$response" != "PONG" ]; then
echo "$response"
exit 1
fi
ping_readiness_local_and_master.sh: |-
script_dir="$(dirname "$0")"
exit_status=0
"$script_dir/ping_readiness_local.sh" $1 || exit_status=$?
"$script_dir/ping_readiness_master.sh" $1 || exit_status=$?
exit $exit_status
ping_readiness_master.sh: |-
#!/bin/bash
[[ -f $REDIS_MASTER_PASSWORD_FILE ]] && export REDIS_MASTER_PASSWORD="$(< "${REDIS_MASTER_PASSWORD_FILE}")"
[[ -n "$REDIS_MASTER_PASSWORD" ]] && export REDISCLI_AUTH="$REDIS_MASTER_PASSWORD"
response=$(
timeout -s 15 $1 \
redis-cli \
-h $REDIS_MASTER_HOST \
-p $REDIS_MASTER_PORT_NUMBER \
ping
)
if [ "$?" -eq "124" ]; then
echo "Timed out"
exit 1
fi
if [ "$response" != "PONG" ]; then
echo "$response"
exit 1
fi
kind: ConfigMap
metadata:
labels:
app.kubernetes.io/instance: redis
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: redis
app.kubernetes.io/version: 8.0.1
helm.sh/chart: redis-21.1.3
name: redis-health
namespace: redis
---
apiVersion: v1
data:
start-master.sh: |
#!/bin/bash
[[ -f $REDIS_PASSWORD_FILE ]] && export REDIS_PASSWORD="$(< "${REDIS_PASSWORD_FILE}")"
if [[ -f /opt/bitnami/redis/mounted-etc/master.conf ]];then
cp /opt/bitnami/redis/mounted-etc/master.conf /opt/bitnami/redis/etc/master.conf
fi
if [[ -f /opt/bitnami/redis/mounted-etc/redis.conf ]];then
cp /opt/bitnami/redis/mounted-etc/redis.conf /opt/bitnami/redis/etc/redis.conf
fi
if [[ -f /opt/bitnami/redis/mounted-etc/users.acl ]];then
cp /opt/bitnami/redis/mounted-etc/users.acl /opt/bitnami/redis/etc/users.acl
fi
ARGS=("--port" "${REDIS_PORT}")
ARGS+=("--requirepass" "${REDIS_PASSWORD}")
ARGS+=("--masterauth" "${REDIS_PASSWORD}")
ARGS+=("--include" "/opt/bitnami/redis/etc/redis.conf")
ARGS+=("--include" "/opt/bitnami/redis/etc/master.conf")
exec redis-server "${ARGS[@]}"
kind: ConfigMap
metadata:
labels:
app.kubernetes.io/instance: redis
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: redis
app.kubernetes.io/version: 8.0.1
helm.sh/chart: redis-21.1.3
name: redis-scripts
namespace: redis
---
apiVersion: v1
data:
redis-password: eldiZGZHdkNPTw==
kind: Secret
metadata:
labels:
app.kubernetes.io/instance: redis
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: redis
app.kubernetes.io/version: 8.0.1
helm.sh/chart: redis-21.1.3
name: redis
namespace: redis
type: Opaque
---
apiVersion: v1
kind: Service
metadata:
labels:
app.kubernetes.io/instance: redis
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: redis
app.kubernetes.io/version: 8.0.1
helm.sh/chart: redis-21.1.3
name: redis-headless
namespace: redis
spec:
clusterIP: None
ports:
- name: tcp-redis
port: 6379
targetPort: redis
selector:
app.kubernetes.io/instance: redis
app.kubernetes.io/name: redis
type: ClusterIP
---
apiVersion: v1
kind: Service
metadata:
labels:
app.kubernetes.io/component: master
app.kubernetes.io/instance: redis
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: redis
app.kubernetes.io/version: 8.0.1
helm.sh/chart: redis-21.1.3
name: redis-master
namespace: redis
spec:
internalTrafficPolicy: Cluster
ports:
- name: tcp-redis
nodePort: null
port: 6379
targetPort: redis
selector:
app.kubernetes.io/component: master
app.kubernetes.io/instance: redis
app.kubernetes.io/name: redis
sessionAffinity: None
type: ClusterIP
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
labels:
app.kubernetes.io/component: master
app.kubernetes.io/instance: redis
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: redis
app.kubernetes.io/version: 8.0.1
helm.sh/chart: redis-21.1.3
name: redis-master
namespace: redis
spec:
replicas: 1
revisionHistoryLimit: 10
selector:
matchLabels:
app.kubernetes.io/component: master
app.kubernetes.io/instance: redis
app.kubernetes.io/name: redis
serviceName: redis-headless
template:
metadata:
annotations:
checksum/configmap: cc399d966d7e7036f2d24fb4509c2befec453479d2a02dfd822d79317532066c
checksum/health: aff24913d801436ea469d8d374b2ddb3ec4c43ee7ab24663d5f8ff1a1b6991a9
checksum/scripts: 0717e77fd3bb941f602860e9be4f2ed87b481cddeadf37be463f8512ecde0c3e
checksum/secret: e47e562771439a02b8f91a71fd92b23647e63ff3dd023f60166c870f2a49574c
labels:
app.kubernetes.io/component: master
app.kubernetes.io/instance: redis
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: redis
app.kubernetes.io/version: 8.0.1
helm.sh/chart: redis-21.1.3
spec:
affinity:
nodeAffinity: null
podAffinity: null
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- podAffinityTerm:
labelSelector:
matchLabels:
app.kubernetes.io/component: master
app.kubernetes.io/instance: redis
app.kubernetes.io/name: redis
topologyKey: kubernetes.io/hostname
weight: 1
automountServiceAccountToken: false
containers:
- args:
- -ec
- /opt/bitnami/scripts/start-scripts/start-master.sh
command:
- /bin/bash
env:
- name: BITNAMI_DEBUG
value: "false"
- name: REDIS_REPLICATION_MODE
value: master
- name: ALLOW_EMPTY_PASSWORD
value: "no"
- name: REDIS_PASSWORD
valueFrom:
secretKeyRef:
key: redis-password
name: redis
- name: REDIS_TLS_ENABLED
value: "no"
- name: REDIS_PORT
value: "6379"
image: docker.io/bitnami/redis:8.0.1-debian-12-r1
imagePullPolicy: IfNotPresent
livenessProbe:
exec:
command:
- /bin/bash
- -ec
- /health/ping_liveness_local.sh 5
failureThreshold: 5
initialDelaySeconds: 20
periodSeconds: 5
successThreshold: 1
timeoutSeconds: 6
name: redis
ports:
- containerPort: 6379
name: redis
readinessProbe:
exec:
command:
- /bin/bash
- -ec
- /health/ping_readiness_local.sh 1
failureThreshold: 5
initialDelaySeconds: 20
periodSeconds: 5
successThreshold: 1
timeoutSeconds: 2
resources:
limits:
cpu: 150m
ephemeral-storage: 2Gi
memory: 192Mi
requests:
cpu: 100m
ephemeral-storage: 50Mi
memory: 128Mi
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
readOnlyRootFilesystem: true
runAsGroup: 1001
runAsNonRoot: true
runAsUser: 1001
seLinuxOptions: {}
seccompProfile:
type: RuntimeDefault
volumeMounts:
- mountPath: /opt/bitnami/scripts/start-scripts
name: start-scripts
- mountPath: /health
name: health
- mountPath: /data
name: redis-data
- mountPath: /opt/bitnami/redis/mounted-etc
name: config
- mountPath: /opt/bitnami/redis/etc/
name: empty-dir
subPath: app-conf-dir
- mountPath: /tmp
name: empty-dir
subPath: tmp-dir
enableServiceLinks: true
securityContext:
fsGroup: 1001
fsGroupChangePolicy: Always
supplementalGroups: []
sysctls: []
serviceAccountName: redis-master
terminationGracePeriodSeconds: 30
volumes:
- configMap:
defaultMode: 493
name: redis-scripts
name: start-scripts
- configMap:
defaultMode: 493
name: redis-health
name: health
- configMap:
name: redis-configuration
name: config
- emptyDir: {}
name: empty-dir
updateStrategy:
type: RollingUpdate
volumeClaimTemplates:
- apiVersion: v1
kind: PersistentVolumeClaim
metadata:
labels:
app.kubernetes.io/component: master
app.kubernetes.io/instance: redis
app.kubernetes.io/name: redis
name: redis-data
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 8Gi
---
apiVersion: policy/v1
kind: PodDisruptionBudget
metadata:
labels:
app.kubernetes.io/component: master
app.kubernetes.io/instance: redis
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: redis
app.kubernetes.io/version: 8.0.1
helm.sh/chart: redis-21.1.3
name: redis-master
namespace: redis
spec:
maxUnavailable: 1
selector:
matchLabels:
app.kubernetes.io/component: master
app.kubernetes.io/instance: redis
app.kubernetes.io/name: redis
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
labels:
app.kubernetes.io/instance: redis
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: redis
app.kubernetes.io/version: 8.0.1
helm.sh/chart: redis-21.1.3
name: redis
namespace: redis
spec:
egress:
- {}
ingress:
- ports:
- port: 6379
podSelector:
matchLabels:
app.kubernetes.io/instance: redis
app.kubernetes.io/name: redis
policyTypes:
- Ingress
- Egress

View File

@@ -0,0 +1,12 @@
---
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
helmCharts:
- name: redis
repo: https://charts.bitnami.com/bitnami
version: 21.1.3
releaseName: redis
includeCRDs: true
namespace: redis
valuesFile: values.yaml

674
redis/src/values.yaml Normal file
View File

@@ -0,0 +1,674 @@
pdb: {}
tls:
enabled: false
authClients: true
certFilename: ""
autoGenerated: false
certCAFilename: ""
existingSecret: ""
certKeyFilename: ""
dhParamsFilename: ""
certificatesSecret: ""
auth:
acl:
users: []
enabled: false
enabled: true
password: ""
sentinel: true
existingSecret: ""
usePasswordFiles: false
existingSecretPasswordKey: ""
usePasswordFileFromSecret: true
rbac:
rules: []
create: false
image:
debug: false
digest: ""
#registry: registry-1.docker.io
pullPolicy: IfNotPresent
repository: bitnami/redis
pullSecrets: []
global:
redis:
password: ""
storageClass: ""
compatibility:
openshift:
adaptSecurityContext: auto
imageRegistry: ""
imagePullSecrets: []
defaultStorageClass: ""
master:
pdb:
create: true
args: []
kind: StatefulSet
count: 1
command: []
service:
type: ClusterIP
ports:
redis: 6379
clusterIP: ""
nodePorts:
redis: ""
portNames:
redis: "tcp-redis"
extraPorts: []
annotations: {}
externalIPs: []
loadBalancerIP: ""
sessionAffinity: None
loadBalancerClass: ""
externalTrafficPolicy: Cluster
internalTrafficPolicy: Cluster
sessionAffinityConfig: {}
loadBalancerSourceRanges: []
affinity: {}
sidecars: []
dnsConfig: {}
dnsPolicy: ""
podLabels: {}
resources: {}
extraFlags: []
hostAliases: []
persistence:
path: /data
size: 8Gi
labels: {}
medium: ""
enabled: true
subPath: ""
selector: {}
sizeLimit: ""
dataSource: {}
accessModes:
- ReadWriteOnce
annotations: {}
subPathExpr: ""
storageClass: ""
existingClaim: ""
preExecCmds: []
tolerations: []
extraEnvVars: []
extraVolumes: []
nodeSelector: {}
startupProbe:
enabled: false
periodSeconds: 5
timeoutSeconds: 5
failureThreshold: 5
successThreshold: 1
initialDelaySeconds: 20
configuration: ""
livenessProbe:
enabled: true
periodSeconds: 5
timeoutSeconds: 5
failureThreshold: 5
successThreshold: 1
initialDelaySeconds: 20
schedulerName: ""
containerPorts:
redis: 6379
extraEnvVarsCM: ""
initContainers: []
lifecycleHooks: {}
podAnnotations: {}
readinessProbe:
enabled: true
periodSeconds: 5
timeoutSeconds: 1
failureThreshold: 5
successThreshold: 1
initialDelaySeconds: 20
serviceAccount:
name: ""
create: true
annotations: {}
automountServiceAccountToken: false
updateStrategy:
type: RollingUpdate
disableCommands:
- FLUSHDB,
- FLUSHALL
resourcesPreset: nano
extraVolumeMounts: []
podAffinityPreset: ""
priorityClassName: ""
customStartupProbe: {}
enableServiceLinks: true
extraEnvVarsSecret: ""
nodeAffinityPreset:
key: ""
type: ""
values: []
podSecurityContext:
enabled: true
fsGroup: 1001
sysctls: []
supplementalGroups: []
fsGroupChangePolicy: Always
customLivenessProbe: {}
customReadinessProbe: {}
revisionHistoryLimit: 10
podAntiAffinityPreset: soft
shareProcessNamespace: false
containerSecurityContext:
enabled: true
runAsUser: 1001
runAsGroup: 1001
capabilities:
drop:
- ALL
runAsNonRoot: true
seccompProfile:
type: RuntimeDefault
readOnlyRootFilesystem: true
allowPrivilegeEscalation: false
topologySpreadConstraints: []
automountServiceAccountToken: false
terminationGracePeriodSeconds: 30
persistentVolumeClaimRetentionPolicy:
enabled: false
whenScaled: Retain
whenDeleted: Retain
sysctl:
image:
digest: ""
#registry: registry-1.docker.io
pullPolicy: IfNotPresent
repository: "bitnami/os-shell"
pullSecrets: []
command: []
enabled: false
resources: {}
mountHostSys: false
resourcesPreset: nano
kubectl:
image:
digest: ""
#registry: registry-1.docker.io
pullPolicy: IfNotPresent
repository: bitnami/kubectl
pullSecrets: []
command:
- /opt/bitnami/scripts/kubectl-scripts/update-master-label.sh
resources:
limits: {}
requests: {}
containerSecurityContext:
enabled: true
runAsUser: 1001
runAsGroup: 1001
capabilities:
drop:
- ALL
runAsNonRoot: true
seccompProfile:
type: RuntimeDefault
readOnlyRootFilesystem: true
allowPrivilegeEscalation: false
metrics:
image:
digest: ""
#registry: registry-1.docker.io
pullPolicy: IfNotPresent
repository: "bitnami/redis-exporter"
pullSecrets: []
command: []
enabled: false
service:
type: ClusterIP
ports:
http: 9121
enabled: true
clusterIP: ""
extraPorts: []
annotations: {}
loadBalancerIP: ""
loadBalancerClass: ""
externalTrafficPolicy: Cluster
loadBalancerSourceRanges: []
extraArgs: {}
podLabels: {}
resources: {}
podMonitor:
port: metrics
enabled: false
interval: 30s
namespace: ""
honorLabels: false
relabelings: []
sampleLimit: false
targetLimit: false
scrapeTimeout: ""
podTargetLabels: []
additionalLabels: {}
metricRelabelings: []
additionalEndpoints: []
extraEnvVars: []
extraVolumes: []
startupProbe:
enabled: false
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 5
successThreshold: 1
initialDelaySeconds: 10
livenessProbe:
enabled: true
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 5
successThreshold: 1
initialDelaySeconds: 10
containerPorts:
http: 9121
prometheusRule:
rules: []
enabled: false
namespace: ""
additionalLabels: {}
readinessProbe:
enabled: true
periodSeconds: 10
timeoutSeconds: 1
failureThreshold: 3
successThreshold: 1
initialDelaySeconds: 5
serviceMonitor:
port: "http-metrics"
enabled: false
interval: 30s
namespace: ""
honorLabels: false
relabelings: []
sampleLimit: false
targetLimit: false
scrapeTimeout: ""
podTargetLabels: []
additionalLabels: {}
metricRelabelings: []
additionalEndpoints: []
redisTargetHost: localhost
resourcesPreset: nano
extraVolumeMounts: []
customStartupProbe: {}
customLivenessProbe: {}
customReadinessProbe: {}
containerSecurityContext:
enabled: true
runAsUser: 1001
runAsGroup: 1001
capabilities:
drop:
- ALL
runAsNonRoot: true
seccompProfile:
type: RuntimeDefault
readOnlyRootFilesystem: true
allowPrivilegeEscalation: false
replica:
pdb:
create: true
args: []
kind: StatefulSet
command: []
service:
type: ClusterIP
ports:
redis: 6379
clusterIP: ""
nodePorts:
redis: ""
extraPorts: []
annotations: {}
loadBalancerIP: ""
sessionAffinity: None
loadBalancerClass: ""
externalTrafficPolicy: Cluster
internalTrafficPolicy: Cluster
sessionAffinityConfig: {}
loadBalancerSourceRanges: []
affinity: {}
sidecars: []
dnsConfig: {}
dnsPolicy: ""
podLabels: {}
resources: {}
extraFlags: []
autoscaling:
enabled: false
targetCPU: ""
maxReplicas: 11
minReplicas: 1
targetMemory: ""
hostAliases: []
persistence:
path: /data
size: 8Gi
labels: {}
medium: ""
enabled: true
subPath: ""
selector: {}
sizeLimit: ""
dataSource: {}
accessModes:
- ReadWriteOnce
annotations: {}
subPathExpr: ""
storageClass: ""
existingClaim: ""
preExecCmds: []
tolerations: []
extraEnvVars: []
extraVolumes: []
nodeSelector: {}
replicaCount: 3
startupProbe:
enabled: true
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 22
successThreshold: 1
initialDelaySeconds: 10
configuration: ""
livenessProbe:
enabled: true
periodSeconds: 5
timeoutSeconds: 5
failureThreshold: 5
successThreshold: 1
initialDelaySeconds: 20
schedulerName: ""
containerPorts:
redis: 6379
externalMaster:
host: ""
port: 6379
enabled: false
extraEnvVarsCM: ""
initContainers: []
lifecycleHooks: {}
podAnnotations: {}
readinessProbe:
enabled: true
periodSeconds: 5
timeoutSeconds: 1
failureThreshold: 5
successThreshold: 1
initialDelaySeconds: 20
serviceAccount:
name: ""
create: true
annotations: {}
automountServiceAccountToken: false
updateStrategy:
type: RollingUpdate
disableCommands:
- FLUSHDB,
- FLUSHALL
resourcesPreset: nano
extraVolumeMounts: []
podAffinityPreset: ""
priorityClassName: ""
customStartupProbe: {}
enableServiceLinks: true
extraEnvVarsSecret: ""
nodeAffinityPreset:
key: ""
type: ""
values: []
podSecurityContext:
enabled: true
fsGroup: 1001
sysctls: []
supplementalGroups: []
fsGroupChangePolicy: Always
customLivenessProbe: {}
podManagementPolicy: ""
customReadinessProbe: {}
revisionHistoryLimit: 10
podAntiAffinityPreset: soft
shareProcessNamespace: false
containerSecurityContext:
enabled: true
runAsUser: 1001
runAsGroup: 1001
capabilities:
drop:
- ALL
runAsNonRoot: true
seccompProfile:
type: RuntimeDefault
readOnlyRootFilesystem: true
allowPrivilegeEscalation: false
topologySpreadConstraints: []
automountServiceAccountToken: false
terminationGracePeriodSeconds: 30
persistentVolumeClaimRetentionPolicy:
enabled: false
whenScaled: Retain
whenDeleted: Retain
sentinel:
args: []
image:
debug: false
digest: ""
#registry: registry-1.docker.io
pullPolicy: IfNotPresent
repository: "bitnami/redis-sentinel"
pullSecrets: []
quorum: 2
command: []
enabled: false
service:
type: ClusterIP
ports:
redis: 6379
sentinel: 26379
headless:
extraPorts: []
annotations: {}
clusterIP: ""
nodePorts:
redis: ""
sentinel: ""
extraPorts: []
annotations: {}
createMaster: false
loadBalancerIP: ""
sessionAffinity: None
loadBalancerClass: ""
externalTrafficPolicy: Cluster
sessionAffinityConfig: {}
loadBalancerSourceRanges: []
masterSet: mymaster
resources: {}
annotations: {}
persistence:
size: 100Mi
labels: {}
medium: ""
enabled: false
selector: {}
sizeLimit: ""
dataSource: {}
accessModes:
- ReadWriteOnce
annotations: {}
storageClass: ""
preExecCmds: []
extraEnvVars: []
extraVolumes: []
startupProbe:
enabled: true
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 22
successThreshold: 1
initialDelaySeconds: 10
configuration: ""
livenessProbe:
enabled: true
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 6
successThreshold: 1
initialDelaySeconds: 20
masterService:
type: ClusterIP
ports:
redis: 6379
enabled: false
clusterIP: ""
nodePorts:
redis: ""
extraPorts: []
annotations: {}
loadBalancerIP: ""
sessionAffinity: None
loadBalancerClass: ""
externalTrafficPolicy: ""
sessionAffinityConfig: {}
loadBalancerSourceRanges: []
parallelSyncs: 1
containerPorts:
sentinel: 26379
externalMaster:
host: ""
port: 6379
enabled: false
extraEnvVarsCM: ""
lifecycleHooks: {}
readinessProbe:
enabled: true
periodSeconds: 5
timeoutSeconds: 1
failureThreshold: 6
successThreshold: 1
initialDelaySeconds: 20
failoverTimeout: 180000
resourcesPreset: nano
getMasterTimeout: 90
extraVolumeMounts: []
customStartupProbe: {}
enableServiceLinks: true
extraEnvVarsSecret: ""
customLivenessProbe: {}
customReadinessProbe: {}
downAfterMilliseconds: 60000
automateClusterRecovery: false
containerSecurityContext:
enabled: true
runAsUser: 1001
runAsGroup: 1001
capabilities:
drop:
- ALL
runAsNonRoot: true
seccompProfile:
type: RuntimeDefault
readOnlyRootFilesystem: true
allowPrivilegeEscalation: false
redisShutdownWaitFailover: true
terminationGracePeriodSeconds: 30
persistentVolumeClaimRetentionPolicy:
enabled: false
whenScaled: Retain
whenDeleted: Retain
extraDeploy: []
kubeVersion: ""
architecture: standalone
commonLabels: {}
nameOverride: ""
useHostnames: true
clusterDomain: cluster.local
networkPolicy:
enabled: true
metrics:
allowExternal: true
ingressNSMatchLabels: {}
ingressNSPodMatchLabels: {}
extraEgress: []
extraIngress: []
allowExternal: true
allowExternalEgress: true
ingressNSMatchLabels: {}
ingressNSPodMatchLabels: {}
diagnosticMode:
args:
- infinity
command:
- sleep
enabled: false
serviceAccount:
name: ""
create: true
annotations: {}
automountServiceAccountToken: false
useExternalDNS:
suffix: ""
enabled: false
annotationKey: "external-dns.alpha.kubernetes.io/"
additionalAnnotations: {}
serviceBindings:
enabled: false
fullnameOverride: ""
commonAnnotations: {}
existingConfigmap: ""
namespaceOverride: ""
podSecurityPolicy:
create: false
enabled: false
secretAnnotations: {}
volumePermissions:
image:
digest: ""
#registry: registry-1.docker.io
pullPolicy: IfNotPresent
repository: "bitnami/os-shell"
pullSecrets: []
enabled: false
resources: {}
resourcesPreset: nano
commonConfiguration: ""
nameResolutionTimeout: 5
nameResolutionThreshold: 5