deepfabric / elasticell-operator

k8s operator for elasticell

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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


Languages

Language:Go 97.9%Language:Shell 1.5%Language:Smarty 0.4%Language:Dockerfile 0.1%