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

Move mgt-cluster into wl-cluster #122

Open
guettli opened this issue May 31, 2023 · 7 comments
Open

Move mgt-cluster into wl-cluster #122

guettli opened this issue May 31, 2023 · 7 comments
Labels
kind/feature Categorizes issue or PR as related to a new feature. triage/accepted Indicates an issue or PR is ready to be actively worked on.

Comments

@guettli
Copy link
Contributor

guettli commented May 31, 2023

User Story

As a operator of clusters I would like to move the mgt-cluster into the wl-cluster after the wl-cluster was successfuly created.

Up to now we rely on the clusterctl command.

Since we plan to use cluster-api-operator, would be great if the operator could move the mgt-cluster.

/kind feature

@k8s-ci-robot k8s-ci-robot added the kind/feature Categorizes issue or PR as related to a new feature. label May 31, 2023
@furkatgofurov7
Copy link
Member

@guettli thanks for the issue, this is interesting!

Based on the initial design document of the operator, the intention was, AFAIU, clusterctl move operation won't be taken care by the operator, since it is not a replacement for clusterctl in first place based on the Non-Goals section:

"As stated in the Goals/Non-Goals, the move operation will not be driven by the operator but rather remain within the CLI for now"

However on the other hand, I am not fully aware of what are the drawbacks/constraints of delegating it to operator itself, which would greatly ease the life of the cluster admins.

@Fedosin @alexander-demicev @JoelSpeed thoughts?

@JoelSpeed
Copy link
Contributor

I'm not against the idea but you'd need to come up with an API to control the movement, which, might prove tricky 🤔 What would an API to cause a migration look like?

@alexander-demicev
Copy link
Contributor

If my understanding is correct, the workflow should look like this:

  1. Deploy CAPI operator on the management cluster.
  2. Deploy CAPI providers.
  3. Create a workload cluster.
  4. Move the CAPI operator with providers to the workload cluster.

Does it make sense to make it possible for clusterctl to move the operator together with providers?

@guettli guettli changed the title Move mgt-cluster into wl-clouster Move mgt-cluster into wl-cluster Jun 1, 2023
@guettli
Copy link
Contributor Author

guettli commented Jun 1, 2023

I'm not against the idea but you'd need to come up with an API to control the movement, which, might prove tricky thinking What would an API to cause a migration look like?

@JoelSpeed I think a declarative solution would be nice. This means you define right from the start that as soon as the wl-cluster is ready for the move, the move should be done.

@schrej
Copy link
Member

schrej commented Jun 7, 2023

While this isn't what's requested in this issue, maybe a better alternative would be to support adopting existing CAPI setups. That way the workflow could be

  1. create kind cluster
  2. deploy capi with clusterctl
  3. deploy cluster to be used as mgmt cluster
  4. clusterctl move
  5. install operator
  6. adopt moved capi installation

Afterwards capi can be operated using the operator.

@alexander-demicev
Copy link
Contributor

/triage accepted

@k8s-ci-robot k8s-ci-robot added the triage/accepted Indicates an issue or PR is ready to be actively worked on. label Jul 21, 2023
@alexander-demicev
Copy link
Contributor

This can be a part of clusterctl plugin for operator kubernetes-sigs/cluster-api#8957

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature. triage/accepted Indicates an issue or PR is ready to be actively worked on.
Projects
None yet
Development

No branches or pull requests

6 participants