Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

K8s/Deployment: Update cluster #29

Open
caoxianfei1 opened this issue Apr 11, 2023 · 7 comments
Open

K8s/Deployment: Update cluster #29

caoxianfei1 opened this issue Apr 11, 2023 · 7 comments
Assignees
Labels
activities enhancement New feature or request good first issue Good for newcomers

Comments

@caoxianfei1
Copy link
Collaborator

caoxianfei1 commented Apr 11, 2023

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.

@zhanghuidinah
Copy link
Member

@MateSousa
Copy link

can i try??

@caoxianfei1
Copy link
Collaborator Author

can i try??

ok, we will have a Summer Coding Camp, and you can choose the issue

@peaceLT
Copy link

peaceLT commented Aug 7, 2023

can i try?

@caoxianfei1
Copy link
Collaborator Author

can i try?

All right.

@peaceLT
Copy link

peaceLT commented Oct 26, 2023

hello,I am currently a third-year graduate student majoring in computer technology at the School of Information, Shanghai Ocean University. My main technology stack includes Golang, Kubernetes and Docker. I am very interested in the cloud native field. I chose this topic because it is related to technology and can help improve my technical skills. please assign this issue to me, thanks

@caoxianfei1
Copy link
Collaborator Author

hello,I am currently a third-year graduate student majoring in computer technology at the School of Information, Shanghai Ocean University. My main technology stack includes Golang, Kubernetes and Docker. I am very interested in the cloud native field. I chose this topic because it is related to technology and can help improve my technical skills. please assign this issue to me, thanks

welcome!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
activities enhancement New feature or request good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

4 participants