Skip to content

deepfabric/elasticell-operator

Repository files navigation

Cell Operator

Cell Operator manages elasticell clusters on Kubernetes and automates tasks which is corresponding to operate a Cell cluster, such as deploy, provision, scale, upgrade. It makes elasticell a truly cloud-native distributed data store.

Caveat: Currently, Cell-Operator must be used under some constraints, we will fix it in the future:

  1. PD's replica nums can't be changed after cluster deploy.

  2. Only scale-out is supproted by store, but scale-in.

  3. Rolling upgrade proxy is safely and will not interupt online service. However, the upgrade of store and pd may cause some read/write out of time because of raft learship change.

  4. Only one cell-cluster can be deployed into a k8s namespace.

Features

  • Atuomtic deployment wiht Kubernetes package manager Helm

​ helm install cell-operator --name=cell-operator --namespace=cell-admin

​ helm install ./cell-cluster -n cell --namespace=cell

​ kubectl -n cell get all:

image-20190408140814719

  • Safely scaling the Cell cluster

    Cell Operator empowers elasticell with horizontal scalability on the cloud.

    Now cell's scalabily is under some constraints:

      1. PD can't scale after cell cluster initialize.
      2. Store can only scale out but scale in.
      3. Proxy can scale out or scale in.        
    
  • Rolling upgrade the Cell cluster

    You can roll upgrade Pd/Proxy online. You can upgrade Store when there is no IO through put.

  • Kubernetes package manager support

    By embracing Kubernetes package manager Helm, users can easily deploy Elasticell clusters with only one command.

If you are already familiar with Kubernetes, the following docs can be helpful for managing Cell clusters with Cell Operator

Acknowledgments

  • Thanks tidb-operator for providing various member manager method.

About

k8s operator for elasticell

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages