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

Promote IPv4/IPv6 dual-stack support to Stable in 1.23 #29386

Merged
merged 1 commit into from
Nov 20, 2021

Conversation

bridgetkromhout
Copy link
Member

@bridgetkromhout bridgetkromhout commented Aug 13, 2021

We anticipate moving dual-stack to stable and removing the feature gate in 1.23.

Enhancements issue: kubernetes/enhancements#563
Kubernetes PR: kubernetes/kubernetes#104691

Signed-off-by: Bridget Kromhout [email protected]

@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/S Denotes a PR that changes 10-29 lines, ignoring generated files. language/en Issues or PRs related to English language labels Aug 13, 2021
@k8s-ci-robot k8s-ci-robot added the sig/docs Categorizes an issue or PR as relevant to SIG Docs. label Aug 13, 2021
@tengqm
Copy link
Contributor

tengqm commented Aug 15, 2021

/hold
This looks like a placeholder because the upstream change is not there yet.

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Aug 15, 2021
Copy link
Contributor

@sftim sftim left a comment

Choose a reason for hiding this comment

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

Hi. We'll also need to revise some more pages to get the documentation ready for dual-stack as a stable feature:

and possibly:

My view is that https://kubernetes.io/docs/concepts/services-networking/dual-stack/ (as a concept) should disappear, being superseded by a new task page about configuring dual-stack networking. We should reword https://kubernetes.io/docs/concepts/services-networking/ so that it mentions dual-stack in the page text, and also link to the page about configuring it.

We might also want a page about making sure that your cluster runs single stack networking, as you won't be able to use a feature gate any more to achieve that.

@sftim
Copy link
Contributor

sftim commented Aug 15, 2021

/sig network

@k8s-ci-robot k8s-ci-robot added the sig/network Categorizes an issue or PR as relevant to SIG Network. label Aug 15, 2021
@bridgetkromhout
Copy link
Member Author

My view is that https://kubernetes.io/docs/concepts/services-networking/dual-stack/ (as a concept) should disappear, being superseded by a new task page about configuring dual-stack networking.

We can definitely move many examples to the tasks page. We'll also want to keep a concept page, as there are details that may confuse people encountering this for the first time. I'll submit an update to this PR.

@sftim
Copy link
Contributor

sftim commented Aug 19, 2021

I'm imagining that at some point when you visit https://kubernetes.io/docs/concepts/services-networking/dual-stack/ you are redirected to https://kubernetes.io/docs/concepts/services-networking#dual-stack

I think we should then have pages in the reference section about networking that cover the 3 cases we support:

  • dual stack
  • IPv4-only
  • IPv6-only

and those can go into lots of detail. The reference section is the right home for that detail. Treating each of those 3 cases as equally valid feels important; people might well prefer to run a single-stack cluster and we shouldn't make them feel like second class readers; the same is true for people who want to run dual-stack.

I'm happy to help tidying up this effort; I've got general IPv6 experience dating back well over a decade. I've got pretty much zero experience of IPv6 with Kubernetes though.

@reylejano
Copy link
Member

/milestone 1.23
/cc @jlbutler

@k8s-ci-robot k8s-ci-robot requested a review from jlbutler August 24, 2021 22:04
@k8s-ci-robot k8s-ci-robot added this to the 1.23 milestone Aug 24, 2021
@jlbutler
Copy link
Contributor

/assign @nate-double-u

@sftim
Copy link
Contributor

sftim commented Sep 29, 2021

@kubernetes/sig-network-misc this looks fine to me in terms of there being no problematic omissions or inaccuracies - would someone from the SIG be willing to add a tech sign off to say you agree?

(As far as I'm concerned, we can get that signoff in place even if the hold remains).

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 10, 2021
@netlify
Copy link

netlify bot commented Nov 17, 2021

👷 Deploy Preview for kubernetes-io-vnext-staging processing.

🔨 Explore the source changes: a209e3d

🔍 Inspect the deploy log: https://app.netlify.com/sites/kubernetes-io-vnext-staging/deploys/6199281e715fcf00080505f5

@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 17, 2021
@bridgetkromhout
Copy link
Member Author

I was first writing a release blog, and now I'm getting back to this PR. Updates will come in short order.

@bridgetkromhout
Copy link
Member Author

/hold cancel

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Nov 18, 2021
@bridgetkromhout
Copy link
Member Author

While @sftim has excellent ideas for docs refactoring, those may not fit in the desired timeframe - while this PR is an attempt to make the docs for 1.23 as accurate as is feasible.

@bridgetkromhout
Copy link
Member Author

/assign @jimangel

@bridgetkromhout
Copy link
Member Author

Hi @jlbutler @jimangel @nate-double-u and all of the docs team - while we can continue to improve the docs, what we have in place in this PR is factually accurate and as ready for merge as it can be. Thanks!

@k8s-ci-robot
Copy link
Contributor

LGTM label has been added.

Git tree hash: fcd1b31e6973cc7464eb29c6316dacd577b0cd2a

@bridgetkromhout
Copy link
Member Author

Alternately we can slap a squash label on the PR.

@jimangel let's go with this, since it's way too late at night for me to resolve conflicts in the feature-gate list, and I don't want to hold things up. Thanks!

@sftim
Copy link
Contributor

sftim commented Nov 19, 2021

@bridgetkromhout if you're happy for me to, I can force-push a squashed version (that would retain LGTM).

Copy link
Contributor

@sftim sftim left a comment

Choose a reason for hiding this comment

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

I suggest we also update https://kubernetes.io/docs/tasks/network/validate-dual-stack/ to change the min-kubernetes-server-version, and add a text explanation (ie: you can validate with an earlier version but the feature was only GA and officially supported since v1.23) after the version-check shortcode.

Do we also need to update https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/ ?

@bridgetkromhout
Copy link
Member Author

@sftim You have the advantage time-zone wise! I'm happy to have you do whatever works best; sounds like we aren't quite ready to squash anyhow, because of these:

I suggest we also update https://kubernetes.io/docs/tasks/network/validate-dual-stack/ to change the min-kubernetes-server-version, and add a text explanation (ie: you can validate with an earlier version but the feature was only GA and officially supported since v1.23) after the version-check shortcode.

Do we also need to update https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/dual-stack-support/ ?

I'll look today.

@sftim
Copy link
Contributor

sftim commented Nov 19, 2021

Thanks. This PR is in good shape to meet the ready-for-review deadline: it's already there, and now we're looking at snags.

@k8s-ci-robot k8s-ci-robot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed lgtm "Looks good to me", indicates that a PR is ready to be merged. size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels Nov 19, 2021
@bridgetkromhout
Copy link
Member Author

Thanks. This PR is in good shape to meet the ready-for-review deadline: it's already there, and now we're looking at snags.

@sftim Thanks! I pushed a PR to address the two things you mentioned today - please take a look - hopefully we can get to squash-and-LGTM-again later today.

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 20, 2021
Co-Authored-By: Tim Bannister <[email protected]>
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 20, 2021
Copy link
Contributor

@sftim sftim left a comment

Choose a reason for hiding this comment

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

I spotted one more thing.

We should reword:

Currently, the kube-controller-manager flags --node-cidr-mask-size-ipv4|--node-cidr-mask-size-ipv6 are being left with default values. See enable IPv4/IPv6 dual stack.

  • remove “Currently”
  • reword if technically incorrect for v1.23

Let's address that in a separate PR.

/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 20, 2021
@k8s-ci-robot
Copy link
Contributor

LGTM label has been added.

Git tree hash: 5ab85d7957c5e3b16e8ad47b3eba2bfff066f72e

@sftim
Copy link
Contributor

sftim commented Nov 20, 2021

@khenidak if you re-add LGTM, I can also approve this (I'd rather not both approve and LGTM commits that I pushed).

@sftim
Copy link
Contributor

sftim commented Nov 20, 2021

Also relevant to:
/sig cluster-lifecycle

@k8s-ci-robot k8s-ci-robot added the sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. label Nov 20, 2021
@jlbutler
Copy link
Contributor

I've been monitoring this and looks ok to approve. But looks like you're asking for additional review so you can approve @sftim. Ok by me, just let me know if you'd rather I just merge it. Thanks.

@jlbutler
Copy link
Contributor

Chatted with TIm on Slack, thanks for everyone's work on this!

/approve

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: jlbutler, khenidak

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

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Nov 20, 2021
@k8s-ci-robot k8s-ci-robot merged commit b6ae6e7 into kubernetes:dev-1.23 Nov 20, 2021
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. language/en Issues or PRs related to English language lgtm "Looks good to me", indicates that a PR is ready to be merged. sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. sig/docs Categorizes an issue or PR as relevant to SIG Docs. sig/network Categorizes an issue or PR as relevant to SIG Network. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants