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

📖 CAEP: ControlPlane #1613

Merged
merged 1 commit into from
Nov 13, 2019

Conversation

detiber
Copy link
Member

@detiber detiber commented Oct 17, 2019

What this PR does / why we need it:

Adds a CAEP for ControlPlane Management

@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. labels Oct 17, 2019
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: detiber

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

The pull request process is described 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

@vincepri
Copy link
Member

/milestone v0.3.0

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Oct 17, 2019
@k8s-ci-robot k8s-ci-robot added this to the v0.3.0 milestone Oct 17, 2019
@k8s-ci-robot k8s-ci-robot requested review from ncdc and vincepri October 17, 2019 19:55
@detiber
Copy link
Member Author

detiber commented Oct 17, 2019

docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
Copy link
Contributor

@ncdc ncdc left a comment

Choose a reason for hiding this comment

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

EOD here, but I have a couple of initial comments. Will try to review more tomorrow.

docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
@detiber detiber force-pushed the controlPlaneCAEP branch 2 times, most recently from 73c86a8 to 940b5a3 Compare October 18, 2019 17:36
@vincepri vincepri changed the title 📖 Add ControlPlane CAEP 📖 CAEP: ControlPlane Oct 18, 2019
@vincepri
Copy link
Member

/kind proposal

@k8s-ci-robot k8s-ci-robot added the kind/proposal Issues or PRs related to proposals. label Oct 21, 2019
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
@detiber detiber force-pushed the controlPlaneCAEP branch 3 times, most recently from 2575b61 to de893a9 Compare October 21, 2019 16:43
Copy link
Member

@vincepri vincepri left a comment

Choose a reason for hiding this comment

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

Thank you for putting this proposal together, it's a great step in the right direction.

The comments outlined below are a mix of major and minor questions, given the amount of comments, we should probably go over them on Zoom later today, or it's also fine to address them async if you all prefer.

docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
Copy link
Member

@hardikdr hardikdr left a comment

Choose a reason for hiding this comment

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

Thanks for the proposal, really nice work.
One question though:
Should we explicitly define the minimal contract which xyz-control-plane-controller should adhere to, as part of this CAEP?

  • Eg, homogeneous status/or-something across XyzControlPlane CRDs, which should be initialized/maintained by respective control-plane-controllers.
  • This proposal does talk many details of kubeadm-cp-controller, but I was also hoping for one generic-behavioral contract.
  • Or is it already mentioned and I missed it?

docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
docs/proposals/20191017-control-plane.md Outdated Show resolved Hide resolved
@ncdc
Copy link
Contributor

ncdc commented Nov 7, 2019

@hardikdr to date, we have not done a very good job of writing any behavioral contracts. I have opened #1727 to do this for control plane providers.

@detiber
Copy link
Member Author

detiber commented Nov 8, 2019

@ncdc Added a current non-goal for the followup work related to stable api endpoints, we already have the current mechanism for using cluster.Status.APIEndpoints as part of the Constraints and Assumptions

@detiber
Copy link
Member Author

detiber commented Nov 8, 2019

@hardikdr I believe I've addressed your inline comments.

I've also updated the non-goals to identify that documenting the exact interoperability mechanism for additional control plane providers will be handled as followup work and tracked by the issue that @ncdc linked.

@detiber
Copy link
Member Author

detiber commented Nov 8, 2019

@chuckha @akutz @jaypipes @alexbrand @pablochacin @randomvariable @rsmitty @dlipovetsky @jzhoucliqr @sbueringer @CecileRobertMichon @hardikdr I believe all outstanding comments have been addressed. Please take a look, I'm hoping that we can go ahead and get this merged to unblock work to start on the initial implementation.

@ncdc
Copy link
Contributor

ncdc commented Nov 11, 2019

We would like to go with lazy consensus and plan to merge this on Wednesday as long as there are no blocking comments (will discuss at the community meeting)

@moshloop
Copy link
Contributor

Uniquely mark the existing replica machine through setting an annotation and persisting the change (cluster.x-k8s.io/control-plane/selected-for-upgrade)

My only comment is to change this from an annotation to a label, so that it can be used in labelSelector

@detiber
Copy link
Member Author

detiber commented Nov 13, 2019

Uniquely mark the existing replica machine through setting an annotation and persisting the change (cluster.x-k8s.io/control-plane/selected-for-upgrade)

My only comment is to change this from an annotation to a label, so that it can be used in labelSelector

Are you okay if we address this after merging as a followup issue?

@moshloop
Copy link
Contributor

Are you okay if we address this after merging as a followup issue?

Yes
/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Nov 13, 2019
@k8s-ci-robot k8s-ci-robot merged commit 409448c into kubernetes-sigs:master Nov 13, 2019
@detiber
Copy link
Member Author

detiber commented Nov 13, 2019

Created #1764 to address the feedback on the label vs annotation for upgrade selection.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/proposal Issues or PRs related to proposals. lgtm "Looks good to me", indicates that a PR is ready to be merged. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.