Skip to content

基本介绍

gaoshengL edited this page Jan 5, 2022 · 6 revisions

项目介绍

名称:td-redis-operator

语言: 纯go开发

定位: 基于云原生技术,实现Redis主备/集群资源生命周期、HA、常规运维操作管理.

工作原理

原理描述:

1. 基于Operator开源产品,完全在Kubernetes上运维托管。 什么是Kubernetes Operator, 请点击

2. 支持两种Redis实例管理交付,即Redis主备和RedisCluster

td-redis-operator能解决什么?

1. Redis实例资源生命周期管理

    管理运维redis不同模式资源增删改整个上线下线流程

2. Operator实现故障自愈

    使用Operator的informer和reconcile机制,将DBA日常运维操作编码,实现云上的故障自愈,降低DBA心智成本

3. 云原生

    基于K8S和容器技术,整个完全托管运行在Kubernetes集群上而无需其他更多基建依赖,减少使用成本

关于Operator:

说明:

   a. CRD(Customer Resource Defination)定义了一个完成Redis Cluster/Standby资源对象的完整属性,所有的运维操作需要基于对该CR对象的修改

   b. 通过跟踪CR的变更事件来触发运维代码逻辑以及reconcile使资源状态不断向预期状态收敛

相关名词解释

CR核心对象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: ""

核心名词解释

  • Name:集群名称
  • App:关联应用
  • Dc:机房
  • Env: 部署环境
  • StorageClass: 存储类型
  • Size: 集群大小
  • Netmode: 网络访问方式
  • ProxyImage: proxy镜像

相关实现介绍

Clone this wiki locally