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

[Question] Disabling nodelifecycle affects k8s cloud node #1001

Closed
fujitatomoya opened this issue Sep 13, 2022 · 6 comments
Closed

[Question] Disabling nodelifecycle affects k8s cloud node #1001

fujitatomoya opened this issue Sep 13, 2022 · 6 comments
Labels

Comments

@fujitatomoya
Copy link
Contributor

This is just a question that we like to bring up here.
We are not sure if this is constraint or limitation.

What happened:

Official install document requires to disable nodelifecycle feature for Yurt-Controller-Manager.
This can affect Kubernetes nodes management, if user wants to manage k8s nodes aligned with OpenYurt.

Detailed procedure: https://openyurt.io/docs/next/installation/openyurt-prepare/#2-kube-controller-manager-adjustment

What you expected to happen:

nodelifecycle should not be disabled, Yurt-Controller-Manager should be able to abstract and manage the OpenYurt cloud and edge nodes based on label or something else.
So that Kubernetes nodes can align with OpenYurt to keep Kuernetes Feature.

Environment:

others
/kind question

@fujitatomoya fujitatomoya added the kind/question kind/question label Sep 13, 2022
@Congrool
Copy link
Member

Congrool commented Sep 14, 2022

Well, we actually disable the native nodelifecycle controller, but it does not mean we will lose its capability, because we integrate nodelifecycle controller into yurt-controller-manager, you can find it here: https://github.com/openyurtio/openyurt/tree/master/pkg/controller/nodelifecycle.

The reason why we disable the native nodelifecycle controller and use the counter-part in yurt-controller-manager is that, as you said, "manage the OpenYurt cloud and edge nodes based on label or something else", which is annotation in fact. In join nodes, we will add annotation node.beta.openyurt.io/autonomy=true to edge nodes, and the nodelifecycle controller in yurt-controller-manager will take specific strategy to manage edge nodes according to the annotation, especially when they are offline. But the native nodelifecycle controller does not provide any interface to set its strategy, so we have to modify its code directly.

However, it seems to be a temporary solution. We have came out another way which can be compatible with native nodelifecycle controller, see #776.

@fujitatomoya
Copy link
Contributor Author

However, it seems to be a temporary solution. We have came out another way which can be compable with native nodelifecycle controller, see #776.

this makes more sense to me! thanks for the intel.

  • edge autonomy is the feature underneath OpenYurt.
  • Kubernetes native nodes can be consistent aligned with OpenYurt.

@fujitatomoya
Copy link
Contributor Author

@Congrool do you guys keep this open? now i know that there is an activity against this question, so i am good to close this question.

@Congrool
Copy link
Member

Sure, we can keep this issue open until #776 has been completed.

@stale
Copy link

stale bot commented Dec 13, 2022

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix label Dec 13, 2022
@fujitatomoya
Copy link
Contributor Author

Since this is a question, i think it has been answered with #776, we can track this feature with #776. so in favor of #776, i will go ahead to close this question.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants