API Reference Documentation

Complete API reference documentation for Redis Operator CRDs

API Reference

Packages

redis.redis.opstreelabs.in/v1beta2

Package v1beta2 contains common types used by Redis Operator APIs. These types are shared across different Redis resource types.

Resource Types

ACLConfig

Appears in:

Field Description Default Validation
secret SecretVolumeSource

AdditionalVolume

Additional Volume is provided by user that is mounted on the pods

Appears in:

Field Description Default Validation
volume Volume array
mountPath VolumeMount array

ClusterStorage

Node-conf needs to be added only in redis cluster

Appears in:

Field Description Default Validation
nodeConfVolume boolean false
nodeConfVolumeClaimTemplate PersistentVolumeClaim
keepAfterDelete boolean
volumeClaimTemplate PersistentVolumeClaim
volumeMount AdditionalVolume

ExistingPasswordSecret

ExistingPasswordSecret is the struct to access the existing secret

Appears in:

Field Description Default Validation
name string
key string

InitContainer

InitContainer for each Redis pods

Appears in:

Field Description Default Validation
enabled boolean
image string
imagePullPolicy PullPolicy
resources ResourceRequirements
env EnvVar
command string array
args string array
securityContext SecurityContext

KubernetesConfig

KubernetesConfig will be the JSON struct for Basic Redis Config

Appears in:

Field Description Default Validation
image string
imagePullPolicy PullPolicy
resources ResourceRequirements
redisSecret ExistingPasswordSecret
imagePullSecrets LocalObjectReference
updateStrategy StatefulSetUpdateStrategy
persistentVolumeClaimRetentionPolicy StatefulSetPersistentVolumeClaimRetentionPolicy
service ServiceConfig
ignoreAnnotations string array
minReadySeconds integer

Redis

Redis is the Schema for the redis API

Field Description Default Validation
apiVersion string redis.redis.opstreelabs.in/v1beta2
kind string Redis
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec RedisSpec

RedisCluster

RedisCluster is the Schema for the redisclusters API

Field Description Default Validation
apiVersion string redis.redis.opstreelabs.in/v1beta2
kind string RedisCluster
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec RedisClusterSpec

RedisClusterSpec

RedisClusterSpec defines the desired state of RedisCluster

Appears in:

Field Description Default Validation
clusterSize integer ClusterSize defines the default number of replicas for both leader and follower when not explicitly set
kubernetesConfig KubernetesConfig
hostNetwork boolean
port integer 6379
clusterVersion string v7
redisConfig RedisConfig
redisLeader RedisLeader
redisFollower RedisFollower
redisExporter RedisExporter
storage ClusterStorage
podSecurityContext PodSecurityContext
priorityClassName string
resources ResourceRequirements
TLS TLSConfig
acl ACLConfig
initContainer InitContainer
sidecars Sidecar
serviceAccountName string
persistenceEnabled boolean
env EnvVar
hostPort integer

RedisConfig

RedisConfig defines the external configuration of Redis

Appears in:

Field Description Default Validation
maxMemoryPercentOfLimit integer MaxMemoryPercentOfLimit is the percentage of redis container memory limit to be used as maxmemory. Maximum: 100
Minimum: 1
dynamicConfig string array
additionalRedisConfig string

RedisExporter

RedisExporter interface will have the information for redis exporter related stuff

Appears in:

Field Description Default Validation
enabled boolean
port integer 9121
image string
resources ResourceRequirements
imagePullPolicy PullPolicy
env EnvVar
securityContext SecurityContext

RedisFollower

RedisFollower interface will have the redis follower configuration

Appears in:

Field Description Default Validation
replicas integer Replicas overrides clusterSize for follower nodes count. If not set, uses clusterSize value
redisConfig RedisConfig
affinity Affinity
pdb RedisPodDisruptionBudget
readinessProbe Probe
livenessProbe Probe
tolerations Toleration
nodeSelector object (keys:string, values:string)
topologySpreadConstraints TopologySpreadConstraint array
securityContext SecurityContext
terminationGracePeriodSeconds integer
resources ResourceRequirements

RedisLeader

RedisLeader interface will have the redis leader configuration

Appears in:

Field Description Default Validation
replicas integer Replicas overrides clusterSize for leader nodes count. If not set, uses clusterSize value
redisConfig RedisConfig
affinity Affinity
pdb RedisPodDisruptionBudget
readinessProbe Probe
livenessProbe Probe
tolerations Toleration
nodeSelector object (keys:string, values:string)
topologySpreadConstraints TopologySpreadConstraint array
securityContext SecurityContext
terminationGracePeriodSeconds integer
resources ResourceRequirements

RedisPodDisruptionBudget

RedisPodDisruptionBudget configure a PodDisruptionBudget on the resource (leader/follower)

Appears in:

Field Description Default Validation
enabled boolean
minAvailable integer
maxUnavailable integer

RedisReplication

Redis is the Schema for the redis API

Field Description Default Validation
apiVersion string redis.redis.opstreelabs.in/v1beta2
kind string RedisReplication
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec RedisReplicationSpec

RedisReplicationSpec

Appears in:

Field Description Default Validation
clusterSize integer
kubernetesConfig KubernetesConfig
redisExporter RedisExporter
redisConfig RedisConfig
storage Storage
nodeSelector object (keys:string, values:string)
podSecurityContext PodSecurityContext
securityContext SecurityContext
priorityClassName string
affinity Affinity
tolerations Toleration
TLS TLSConfig
pdb RedisPodDisruptionBudget
acl ACLConfig
readinessProbe Probe
livenessProbe Probe
initContainer InitContainer
sidecars Sidecar
serviceAccountName string
terminationGracePeriodSeconds integer
env EnvVar
topologySpreadConstraints TopologySpreadConstraint array
hostPort integer

RedisSentinel

Redis is the Schema for the redis API

Field Description Default Validation
apiVersion string redis.redis.opstreelabs.in/v1beta2
kind string RedisSentinel
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec RedisSentinelSpec

RedisSentinelConfig

Appears in:

Field Description Default Validation
additionalSentinelConfig string
redisReplicationName string
redisReplicationPassword EnvVarSource
masterGroupName string myMaster
redisPort string 6379
quorum string 2
parallelSyncs string 1
failoverTimeout string 180000
downAfterMilliseconds string 30000
resolveHostnames string no
announceHostnames string no

RedisSentinelSpec

Appears in:

Field Description Default Validation
clusterSize integer 3 Minimum: 1
kubernetesConfig KubernetesConfig
redisExporter RedisExporter
redisSentinelConfig RedisSentinelConfig
nodeSelector object (keys:string, values:string)
podSecurityContext PodSecurityContext
securityContext SecurityContext
priorityClassName string
affinity Affinity
tolerations Toleration
TLS TLSConfig
pdb RedisPodDisruptionBudget
readinessProbe Probe
livenessProbe Probe
initContainer InitContainer
sidecars Sidecar
serviceAccountName string
terminationGracePeriodSeconds integer
env EnvVar
volumeMount AdditionalVolume
topologySpreadConstraints TopologySpreadConstraint array
hostPort integer

RedisSpec

RedisSpec defines the desired state of Redis

Appears in:

Field Description Default Validation
kubernetesConfig KubernetesConfig
redisExporter RedisExporter
redisConfig RedisConfig
storage Storage
nodeSelector object (keys:string, values:string)
podSecurityContext PodSecurityContext
securityContext SecurityContext
priorityClassName string
affinity Affinity
tolerations Toleration
TLS TLSConfig
acl ACLConfig
readinessProbe Probe
livenessProbe Probe
initContainer InitContainer
sidecars Sidecar
serviceAccountName string
terminationGracePeriodSeconds integer
env EnvVar
hostPort integer

Service

Service is the struct to define the service type and its annotations

Appears in:

Field Description Default Validation
type string ClusterIP Enum: [LoadBalancer NodePort ClusterIP]
additionalAnnotations object (keys:string, values:string)
includeBusPort boolean IncludeBusPort when set to true, it will add bus port to the service, such as 16379.
This field is only used for Redis cluster mode.
enabled boolean true

ServiceConfig

ServiceConfig define the type of service to be created and its annotations

Appears in:

Field Description Default Validation
serviceType string Enum: [LoadBalancer NodePort ClusterIP]
annotations object (keys:string, values:string)
includeBusPort boolean IncludeBusPort when set to true, it will add bus port to the service, such as 16379.
This field is only used for Redis cluster mode.
headless Service Headless config for which suffix is -headless service
additional Service Additional config for which suffix is -additional service

Sidecar

Sidecar for each Redis pods

Appears in:

Field Description Default Validation
name string
image string
imagePullPolicy PullPolicy
resources ResourceRequirements
env EnvVar
mountPath VolumeMount
command string array
ports ContainerPort
securityContext SecurityContext

Storage

Storage is the inteface to add pvc and pv support in redis

Appears in:

Field Description Default Validation
keepAfterDelete boolean
volumeClaimTemplate PersistentVolumeClaim
volumeMount AdditionalVolume

TLSConfig

TLS Configuration for redis instances

Appears in:

Field Description Default Validation
ca string
cert string
key string
secret SecretVolumeSource Reference to secret which contains the certificates

Last modified August 7, 2025: docs: Rename Size to ClusterSize in RedisClusterSpec and update related comments (#1475) (88d688a)