Skip to content

Introduction

house edited this page Dec 19, 2022 · 17 revisions
  • Name: td-redis-operator
  • Language: pure go development
  • Positioning: Completely based on cloud native technology to realize resource lifecycle management, fault self-healing, HA, etc.

Architecture

td-redis-operator

Principle description:

  • Based on Operator open source products, it is completely operated and maintained on Kubernate.
  • Support two kinds of Redis instance management delivery, namely Redis active and standby and RedisCluster.

What can td-redis-operator solve?

  • Redis instance resource lifecycle management
        Management, operation and maintenance of different modes of redis, adding, deleting and modifying the entire online and offline process.
  • Operator realizes fault self-healing
        Use Operator's informer and reconcile mechanism to code DBA daily operation and maintenance operations, realize self-healing of faults on the cloud, and reduce DBA mental costs.
  • Cloud native concept
        Based on K8S and container technology, the entire fully managed and run on the Kubernate cluster without the need for more infrastructure dependencies, reducing usage costs.

About Operator:

td-redis-operator

illustrate:

  • CRD (Customer Resource Defination) defines a complete attribute to complete the Redis Cluster/Standby resource object. All operation and maintenance operations need to be based on the modification of the CR object.
  • Trigger the operation and maintenance code logic and reconcile by tracking the change event of CR to make the resource state converge to the expected state continuously.

Explanation of related terms

CR core object demo

apiVersion: cache.tongdun.net/v1alpha1
  kind: RedisCluster
  metadata:
    name: redis-cluster-rat
    namespace: redis-cluster
  spec:
    app: cluster-rat
    capacity: 32768
    dc: hz
    env: production
    image: tongduncloud/redis-cluster:0.2
    monitorimage: tongduncloud/redis-exporter:1.0
    netmode: ClusterIP
    proxyimage: tongduncloud/predixy:1.0
    proxysecret: abc
    realname: dba
    secret: abc
    size: 3
    storageclass: ""
    vip: ""

Core term explanation

  • Name: cluster name
  • App: associated application
  • Dc: computer room
  • Env: deployment environment
  • StorageClass: storage type
  • Size: cluster size
  • Netmode: Network access method
  • ProxyImage: proxy mirror

Related Principles

Clone this wiki locally