Data & Analytics

redis

Redis Operator for Kubernetes by OT-Container-Kit

@r8s/crds/redis

redis

Declared Operator

redis-operator

version 0.22.0

Components (2)

01

RedisCluster

Render a RedisCluster (redis.redis.opstreelabs.in/v1beta2) exactly as defined by its CRD.


import { RedisClusterComponent } from '@r8s/crds/redis'

<RedisClusterComponent
  metadata={{ name: 'cache', namespace: 'default' }}
  spec={{
    clusterSize: 3,
    kubernetesConfig: { image: 'quay.io/opstree/redis:v7.0.12' },
    storage: { volumeClaimTemplate: { spec: { resources: { requests: { storage: '5Gi' } } } } },
  }}
/>
"TLS"TLSOptional

TLS Configuration for redis instances

"acl"AclOptional
"clusterSize"numberRequired

ClusterSize defines the default number of replicas for both leader and follower when not explicitly set

"clusterVersion"stringOptional
"env"EnvItem[]Optional
"hostNetwork"booleanOptional
"hostPort"numberOptional
"initContainer"InitContainerOptional

InitContainer for each Redis pods

"kubernetesConfig"KubernetesConfigRequired

KubernetesConfig will be the JSON struct for Basic Redis Config

"persistenceEnabled"booleanOptional
"podSecurityContext"PodSecurityContextOptional

PodSecurityContext holds pod-level security attributes and common container settings. Some fields are also present in container.securityContext. Field values of container.securityContext take precedence over field values of PodSecurityContext.

"port"numberOptional
"priorityClassName"stringOptional
"redisConfig"RedisConfigOptional

RedisConfig defines the external configuration of Redis

"redisExporter"RedisExporterOptional

RedisExporter interface will have the information for redis exporter related stuff

"redisFollower"RedisFollowerOptional

RedisFollower interface will have the redis follower configuration

"redisLeader"RedisLeaderOptional

RedisLeader interface will have the redis leader configuration

"resources"ResourcesOptional

ResourceRequirements describes the compute resource requirements.

"serviceAccountName"stringOptional
"sidecars"SidecarsItem[]Optional
"storage"StorageOptional

Node-conf needs to be added only in redis cluster

02

RedisReplication

Render a RedisReplication (redis.redis.opstreelabs.in/v1beta2) exactly as defined by its CRD.

"TLS"TLSOptional

TLS Configuration for redis instances

"acl"AclOptional
"affinity"AffinityOptional

Affinity is a group of affinity scheduling rules.

"clusterSize"numberRequired
"env"EnvItem[]Optional
"hostPort"numberOptional
"initContainer"InitContainerOptional

InitContainer for each Redis pods

"kubernetesConfig"KubernetesConfigRequired

KubernetesConfig will be the JSON struct for Basic Redis Config

"livenessProbe"LivenessProbeOptional

Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic.

"nodeSelector"RecordOptional
"pdb"PdbOptional

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

"podSecurityContext"PodSecurityContextOptional

PodSecurityContext holds pod-level security attributes and common container settings. Some fields are also present in container.securityContext. Field values of container.securityContext take precedence over field values of PodSecurityContext.

"priorityClassName"stringOptional
"readinessProbe"ReadinessProbeOptional

Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic.

"redisConfig"RedisConfigOptional

RedisConfig defines the external configuration of Redis

"redisExporter"RedisExporterOptional

RedisExporter interface will have the information for redis exporter related stuff

"securityContext"SecurityContextOptional

SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext. When both are set, the values in SecurityContext take precedence.

"serviceAccountName"stringOptional
"sidecars"SidecarsItem[]Optional
"storage"Storage2Optional

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

"terminationGracePeriodSeconds"numberOptional
"tolerations"TolerationsItem[]Optional
"topologySpreadConstraints"TopologySpreadConstraintsItem[]Optional