-
Notifications
You must be signed in to change notification settings - Fork 5.1k
minikube: add ip-family flags and core IPv6 config plumbing #22061
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
base: master
Are you sure you want to change the base?
Conversation
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: kartikjoshi21 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 |
|
Hi @kartikjoshi21. Thanks for your PR. I'm waiting for a github.com member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the 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. |
|
Can one of the admins verify this patch? |
|
Logs with basic flags plumbing and current behavior validation |
40967e8 to
1c88f6d
Compare
TestingAll tests were done with a locally built |
|
/ok-to-test |
|
kvm2 driver with docker runtime Times for minikube start: 42.5s 42.3s 41.7s 42.3s 40.1s Times for minikube ingress: 64.4s 24.8s 24.2s 24.8s 30.8s docker driver with docker runtime Times for minikube start: 22.9s 19.8s 20.2s 22.3s 23.2s Times for minikube ingress: 28.6s 27.6s 23.6s 21.6s 26.6s docker driver with containerd runtime Times for minikube start: 17.5s 18.3s 19.4s 19.3s 20.0s Times for minikube ingress: 60.1s 54.1s 58.1s 83.1s 65.1s |
|
@kartikjoshi21: The following tests failed, say
Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR. 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. I understand the commands that are listed here. |
|
Here are the number of top 10 failed tests in each environments with lowest flake rate.
Besides the following environments also have failed tests: To see the flake rates of all tests by environment, click here. |
This PR introduces the core configuration and CLI plumbing for IPv6 and dual-stack clusters in minikube. It does not change kubeadm/CNI templates or control-plane bindings yet; those come in follow-up PRs.
Concretely, it:
Adds an
--ip-familyflag tominikube start:ipv4(default, current behaviour)ipv6dualWires IPv6-aware CIDRs and addresses into
ClusterConfig/KubernetesConfig:--service-cluster-ip-range-v6→KubernetesConfig.ServiceCIDRv6--pod-cidr→KubernetesConfig.PodCIDR(IPv4)--pod-cidr-v6→KubernetesConfig.PodCIDRv6(IPv6)--subnet-v6→ClusterConfig.Subnetv6(KIC Docker/Podman network)--host-only-cidr-v6→ClusterConfig.HostOnlyCIDRv6(VirtualBox)--static-ipv6→ClusterConfig.StaticIPv6Extends
Nodewith an IPv6 field so later PRs can populate node IPs.Adds defaults for IPv6 CIDRs:
DefaultServiceCIDRv6 = "fd00::/108"DefaultPodCIDRv6 = "fd01::/64"Introduces
normalizeAndValidateIPFamily()which:ipv4/ipv6/dual(defaulting toipv4),cni.DefaultPodCIDR) foripv4/dual,--subnet-v6,--service-cluster-ip-range-v6,--pod-cidr,--pod-cidr-v6, and--static-ipv6.Adds guardrails for IPv6/dual on the Docker driver:
daemon.jsonif the daemon/network blocks IPv6 bridge networks.For
--ip-family=ipv4with no IPv6 flags, minikube behaves exactly as today (IPv4-only cluster, existing Service/Pod CIDR defaults, no CNI or kubeadm behaviour change).Fixes: #8535
Refer to #22061 (comment) comment for testing steps.
Tested and verified on: