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

📖 ✨ 🧑‍🤝‍🧑 add proposal for Node Bootstrapping working group #11407

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

t-lo
Copy link
Contributor

@t-lo t-lo commented Nov 12, 2024

What this PR does / why we need it:

Propose a working group for node bootstrapping and cluster provisioning.
The need for this working group originated from an ongoing discussion around separating cluster provisioning and node bootstrapping, as stated in the WG's User Story.

Which issue(s) this PR fixes

CC

Tags

/area provider/bootstrap-kubeadm
/area bootstrap

/kind documentation
/kind proposal

@k8s-ci-robot k8s-ci-robot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Nov 12, 2024
@k8s-ci-robot k8s-ci-robot added the do-not-merge/needs-area PR is missing an area label label Nov 12, 2024
@k8s-ci-robot
Copy link
Contributor

Hi @t-lo. Thanks for your PR.

I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@k8s-ci-robot k8s-ci-robot added needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Nov 12, 2024
@t-lo
Copy link
Contributor Author

t-lo commented Nov 12, 2024

"@elmiko" "@eljohnson92" I took the liberty to add you as co-stakeholders to the WG proposal - IIRC you expressed interest in participating. I hope that's OK?

@t-lo t-lo force-pushed the t-lo/propose-wg-node-provisioning branch 2 times, most recently from 49bf126 to bf5ce21 Compare November 12, 2024 16:46
@t-lo t-lo force-pushed the t-lo/propose-wg-node-provisioning branch from 22ad278 to 6353aad Compare November 13, 2024 07:29
@t-lo t-lo changed the title docs: add proposal for Node Bootstrapping working group 📖 ✨ 🧑‍🤝‍🧑 add proposal for Node Bootstrapping working group Nov 13, 2024
@t-lo t-lo force-pushed the t-lo/propose-wg-node-provisioning branch from 6353aad to f61f4ee Compare November 15, 2024 15:19
@t-lo
Copy link
Contributor Author

t-lo commented Nov 15, 2024

Thank you Johanan, Fabrizio, and Stefan for tuning in! This is immensely helpful.
I also love the fact that we're already iterating over design thoughts; this is exactly the momentum we were hoping for with the working group.

Made a few changes to the proposal; reworked the whole user story part to focus on goals instead of implementations, and rephrased the "problem statement" section a bit to not hint at a solution when describing the issue.

Added a new section on stability and compatibility - this really was the proverbial elephant in the room for me since in Flatcar, we put a massive (occasionally painful) focus on never breaking user workloads ever - kudos to Stefan for calling this out. I'll make sure to hold the working group proposals to an equally high standard.

I don't think we're quite there yet but we're definitely making progress. Ready for another round of feedback!

@t-lo t-lo force-pushed the t-lo/propose-wg-node-provisioning branch from f61f4ee to dbc9ed4 Compare November 15, 2024 15:31
@k8s-ci-robot k8s-ci-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Nov 15, 2024
@t-lo t-lo force-pushed the t-lo/propose-wg-node-provisioning branch from dbc9ed4 to 857dd3d Compare November 15, 2024 16:29
@t-lo
Copy link
Contributor Author

t-lo commented Nov 19, 2024

@sbueringer , @fabriziopandini what do you think? Could you give it another pass?

Copy link
Member

@johananl johananl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! Added a few comments.

@fabriziopandini
Copy link
Member

fabriziopandini commented Nov 21, 2024

I will try to come back to this after code freeze next week, I need to focus on stuff to get merged + CI signal and bandwidth is limited 😢

@chrischdi
Copy link
Member

Also showing up, I will need some more time to read myself into all of this but my focus now is first the upcoming CAPI release!

Copy link
Contributor

@elmiko elmiko left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

in general this makes sense to me, i think it would be nice to have a few more details in the proposal. i left a couple suggestions.

also, i'm just starting to read the comments here.

@johananl
Copy link
Member

/retest

@t-lo t-lo force-pushed the t-lo/propose-wg-node-provisioning branch from 77ca5e0 to 536ecda Compare December 18, 2024 18:16
@t-lo
Copy link
Contributor Author

t-lo commented Dec 18, 2024

/retest

Co-authored-by: Johanan Liebermann <[email protected]>
Co-authored-by: Jakob Schrettenbrunner <[email protected]>
Signed-off-by: Thilo Fromm <[email protected]>
@t-lo t-lo force-pushed the t-lo/propose-wg-node-provisioning branch from 536ecda to ba7442a Compare December 18, 2024 18:25
@schrej
Copy link
Member

schrej commented Dec 18, 2024

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Dec 18, 2024
@k8s-ci-robot
Copy link
Contributor

LGTM label has been added.

Git tree hash: 5aed488f3075793a52ddf47fa7eda64d36334ac0

@t-lo
Copy link
Contributor Author

t-lo commented Jan 17, 2025

@fabriziopandini @elmiko I think this can be merged now? The WG is well established, up and running. First stabs at implementations are in progress, and we also started related contributions to development docs (Johanan is working on a PR to dev docs on using KubeVirt as a dev environment).

Copy link
Contributor

@elmiko elmiko left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, i think so too @t-lo . thanks for the work here =)

/approve
/lgtm

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: elmiko
Once this PR has been reviewed and has the lgtm label, please assign sbueringer for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@johananl
Copy link
Member

/assign sbueringer

@sbueringer
Copy link
Member

/lgtm

Would be great if other maintainers can also take a (final) look

/assign @chrischdi @enxebre @fabriziopandini @vincepri

@fabriziopandini
Copy link
Member

/lgtm

@sbueringer
Copy link
Member

@t-lo I would recommend bringing this up one last time in the office hours and setting a lazy consensus of 1-2 weeks

@t-lo
Copy link
Contributor Author

t-lo commented Feb 5, 2025

@t-lo I would recommend bringing this up one last time in the office hours and setting a lazy consensus of 1-2 weeks

I'll bring it up in today's call, thanks @sbueringer .

Copy link
Contributor

@mboersma mboersma left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

@sbueringer
Copy link
Member

sbueringer commented Feb 6, 2025

As discussed in the office hours, lazy consensus until February 19

If any of the other maintainers / approvers wants to chime in, now would be the time

Just to clarify. In the office hours it was mentioned that the PR has 4 lgtms from maintainers. If I count correctly we are currently at 2 (of the affected areas / core CAPI overall). The list of maintainers can be found here: https://github.com/kubernetes-sigs/cluster-api/blob/main/OWNERS_ALIASES#L22-L27

(which is why I asked for additional feedback here: #11407 (comment))

bootstrap providers.
I would like to read and to follow documentation, guidelines, and specifications
on the above.
I would like to offer a choice of node bootstrapping configuration systems to users,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we include an illustrative example? e.g "I would like to enable the bootstrap API consumer to express intent to fine tune nodes by setting vm.dirty_ratio while not having to reimplement the logic to setup kubelet and let the machine become a Node" if that's a good representative?


**Problem statement / Example issues**

As there is currently no OS provisioning configuration abstraction, the kubeadm bootstrap provider
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's probably worth mentioning as part of the context that our API also has a knob that enables full customization via custom userdata secret

- "@johananl"
- "@tormath1"
- "@fabriziopandini"
- "@sbueringer"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

happy to be included as reviewer as well

@enxebre
Copy link
Member

enxebre commented Feb 13, 2025

I dropped some feedback, no blockers. lgtm.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/community-meeting Issues or PRs that should potentially be discussed in a Kubernetes community meeting. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.