/td-redis-operator

一款强大的云原生redis-operator,经过大规模生产级运行考验,支持分布式集群、支持主备切换等缓存集群解决方案…The powerful cloud-native redis-operator, which has passed the test of large-scale production-level operation, supports distributed clusters and active/standby switching ...

Primary LanguageGoApache License 2.0Apache-2.0

td-redis-operator

English Documents | 中文文档


Overview

As a leading third-party intelligent risk management and decision-making service provider in China, Tongdun Technology handles tens of billions of decision-making requests every day. Therefore, in Tongdun's main data storage infrastructure, Redis is widely used as a cache component. During the peak business period, the cluster actually deploys more than a thousand Redis instances, which is bound to bring great challenges to DBA operation and maintenance management and control. In 2018, we promoted the full containerization of stateless applications in the group, and created a cache cloud product that combines cloud-native technology!

The first version of td-redis-operator can be traced back to 2018. The external open source version is the second version. The development time has continued from July 2018 to the present. At present, the Redis clusters of the two centers in Tongdun are all deployed in On the ultra-large kubernetes cluster.

Current scale:

  • Redis instance 5000+
  • PB level data
  • Involving 1000+ real-time online business applications.

Introduction

  • Name: td-redis-operator
  • Language: Golang
  • Positioning: Completely based on cloud native technology to realize resource lifecycle management, fault self-healing, HA, etc.

Click here to view detailed information about Introduction.


Architecture

td-redis-operator

Principle description:

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

QuickStart

You can use the helm command to deploy:

$ helm repo add td-redis-operator https://tongdun.github.io/td-redis-operator/charts/td-redis-operator
$ helm repo update
$ helm install [RELEASE_NAME] td-redis-operator/td-redis-operator      

For details on the deployment process of helm, see helm deployment document .

In addition to deploying with helm, you can also deploy with kubectl command:

$ kubectl apply -f https://raw.githubusercontent.com/tongdun/td-redis-operator/main/deploy/deploy.yaml
$ kubectl apply -f https://raw.githubusercontent.com/tongdun/td-redis-operator/main/cr/redis_cluster.yaml
$ kubectl apply -f https://raw.githubusercontent.com/tongdun/td-redis-operator/main/cr/redis_standby.yaml

For more YAML files, see yaml deployment document .


AdminGuide

Click here to view detailed information about AdminGuide.


Roadmap for future plans

We will support the following features in the future:

  • Support customization of service exposure ServiceType parameter.
  • Cache node shrink scene logic optimization.
  • Supports customization of storage parameters.
  • Support all kinds of back-end storage (hostPath/NFS/Ceph rbd/cephfs/public cloud storage...).
  • Open source the supporting redis web management platform.
  • The web platform also supports monitoring curves.
  • ...

Community group

Welcome to our open source community WeChat group for detailed communication. Please scan the following QR code to join us:

td-redis-operator

(Fill in the "td-redis-operator" character when applying.)


Wiki

https://github.com/tongdun/td-redis-operator/wiki