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

[sig-cloud-provider] Hybrid cloud native support. #124885

Open
sergelogvinov opened this issue May 15, 2024 · 4 comments
Open

[sig-cloud-provider] Hybrid cloud native support. #124885

sergelogvinov opened this issue May 15, 2024 · 4 comments
Labels
kind/feature Categorizes issue or PR as related to a new feature. sig/cloud-provider Categorizes an issue or PR as relevant to SIG Cloud Provider. triage/accepted Indicates an issue or PR is ready to be actively worked on.

Comments

@sergelogvinov
Copy link

sergelogvinov commented May 15, 2024

What would you like to be added?

CLI global flag --hybrid-cloud=true

Why is this needed?

It's possible to run multiple CCMs in one cluster, but it requires a deep understanding of how the cloud provider works. In some cases, we need to add a few checks or extra logic on the CCM side.

The node-controller functions properly; only one CCM can find and initialize the node, while others skip it with an error or log message.

With the node-lifecycle-controller, we need to incorporate more checks into each CCM because we cannot determine if an instance exists or not. For instance, Azure-CCM always responds that the instance exists and is not switched off if the ProviderID is not Azure. The CCM responsible for this cloud can make the correct decision. I believe these checks are better made on the cloud provider side.

When a CCM starts, it registers the name of the cloud using 'cloudprovider.RegisterCloudProvider'. This name usually exists in the ProviderID cloud-provider-name://. For example, we can add the CLI global flag --hybrid-cloud=true, which will use this name from RegisterCloudProvider to check the prefix in the ProviderID. If it does not match, the functions InstanceExists and InstanceShutdown will not be called.

/sig cloud-provider

@sergelogvinov sergelogvinov added the kind/feature Categorizes issue or PR as related to a new feature. label May 15, 2024
@k8s-ci-robot k8s-ci-robot added sig/cloud-provider Categorizes an issue or PR as relevant to SIG Cloud Provider. needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. labels May 15, 2024
@aryasoni98
Copy link

I would like to work on it . Can you please assign me this issue .

@sergelogvinov
Copy link
Author

I would like to work on it . Can you please assign me this issue .

Thank you @aryasoni98, but we need to wait triage first. I am not core developer, i cannot say is it fit or not.

@elmiko
Copy link
Contributor

elmiko commented May 22, 2024

we are discussing this in the sig cloud provider meeting today.

i'm personally very interested in this idea. i think hybrid cloud usage will be important in the future. i would like to see a KEP describing how this will work and also so that we can have a discussion about the design.

from our sig meeting:

  • should we have a new interface in the cloud provider to help with identifying ownership of a node in question
  • would be nice if we could label a node object with some cloud provider type info, this would help to get away from the provider identification problem

it sounds like we have consensus in the meeting about wanting a KEP, if there are any questions about getting started please reach out in the sig-cloud-provider slack channel or to @bridgetkromhout or@elmiko directly.

@elmiko
Copy link
Contributor

elmiko commented May 22, 2024

/triage accepted

@k8s-ci-robot k8s-ci-robot added triage/accepted Indicates an issue or PR is ready to be actively worked on. and removed needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. labels May 22, 2024
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. sig/cloud-provider Categorizes an issue or PR as relevant to SIG Cloud Provider. triage/accepted Indicates an issue or PR is ready to be actively worked on.
Projects
None yet
Development

No branches or pull requests

4 participants