-
Notifications
You must be signed in to change notification settings - Fork 21
Description
Is your feature request related to a problem? (你需要的功能是否与某个问题有关?)
For the way we use Kubernetes API objects, we generally write YAML files corresponding to API objects and hand them over to Kubernetes, which is called declarative API. For declarative APIs, we can change the definition of yaml objects to modify CRD.
Now curve-operator does not support updating Cluster. For example, when we want to add a disk device to the cluster, we will modify the yaml configuration, and then kubectl apply -f cluster.yaml
, but it does not support it now. Our operation for apply is in the program will return directly, do not process.
Of course, when other daemon processes change, such as modifying the deployment node of MDS, you need to delete the service on the previous node and restart an MDS process on the new node.
There are several specific scenarios to consider:
1. Cluster image upgrade (image update).
2. Add Disk or delete disk(Add one Chunkserver service or delete one Chunkserver service).
For new drive letters, in this case, all existing services do not need to be processed, only additional chunkserver nodes
need to be added, and for deleting nodes, only the corresponding chunkserver services need to be deleted.
3. Consider adding a new node to deal with ETCD, MDS SnapshotServer offline.
Describe the solution you'd like (描述你期望的解决方法)
We want the operator to have the ability to update the cluster and you can handle it when API Server detects configuration yaml file changed instead of leaving it alone.
Requirement(要求)
1. A design document is needed then to development phase.
2. Code implementation.