Merge pull request #79752 from BenTheElder/kubeadm-ipv6-cleanup

cleanup bespoke ipv6 checking in kubeadm
This commit is contained in:
Kubernetes Prow Robot 2019-07-03 20:30:15 -07:00 committed by GitHub
commit f978c4cab5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 10 additions and 4 deletions

View File

@ -49,6 +49,7 @@ go_library(
"//vendor/github.com/mholt/caddy/caddyfile:go_default_library",
"//vendor/github.com/pkg/errors:go_default_library",
"//vendor/k8s.io/klog:go_default_library",
"//vendor/k8s.io/utils/net:go_default_library",
],
)

View File

@ -39,6 +39,7 @@ import (
"k8s.io/kubernetes/cmd/kubeadm/app/images"
kubeadmutil "k8s.io/kubernetes/cmd/kubeadm/app/util"
"k8s.io/kubernetes/cmd/kubeadm/app/util/apiclient"
utilsnet "k8s.io/utils/net"
)
const (
@ -95,7 +96,7 @@ func kubeDNSAddon(cfg *kubeadmapi.ClusterConfiguration, client clientset.Interfa
}
var dnsBindAddr, dnsProbeAddr string
if dnsip.To4() == nil {
if utilsnet.IsIPv6(dnsip) {
dnsBindAddr = "::1"
dnsProbeAddr = "[" + dnsBindAddr + "]"
} else {

View File

@ -46,6 +46,7 @@ go_library(
"//staging/src/k8s.io/apimachinery/pkg/util/version:go_default_library",
"//vendor/github.com/pkg/errors:go_default_library",
"//vendor/k8s.io/klog:go_default_library",
"//vendor/k8s.io/utils/net:go_default_library",
],
)

View File

@ -36,6 +36,7 @@ import (
kubeadmutil "k8s.io/kubernetes/cmd/kubeadm/app/util"
staticpodutil "k8s.io/kubernetes/cmd/kubeadm/app/util/staticpod"
authzmodes "k8s.io/kubernetes/pkg/kubeapiserver/authorizer/modes"
utilsnet "k8s.io/utils/net"
)
// CreateInitStaticPodManifestFiles will write all static pod manifest files needed to bring up the control plane.
@ -240,7 +241,7 @@ func getAuthzModes(authzModeExtraArgs string) string {
func calcNodeCidrSize(podSubnet string) string {
maskSize := "24"
if ip, podCidr, err := net.ParseCIDR(podSubnet); err == nil {
if ip.To4() == nil {
if utilsnet.IsIPv6(ip) {
var nodeCidrSize int
podNetSize, totalBits := podCidr.Mask.Size()
switch {

View File

@ -35,6 +35,7 @@ go_library(
"//vendor/github.com/pkg/errors:go_default_library",
"//vendor/k8s.io/klog:go_default_library",
"//vendor/k8s.io/utils/exec:go_default_library",
"//vendor/k8s.io/utils/net:go_default_library",
] + select({
"@io_bazel_rules_go//go/platform:linux": [
"//cmd/kubeadm/app/util:go_default_library",

View File

@ -51,6 +51,7 @@ import (
"k8s.io/kubernetes/pkg/registry/core/service/ipallocator"
ipvsutil "k8s.io/kubernetes/pkg/util/ipvs"
utilsexec "k8s.io/utils/exec"
utilsnet "k8s.io/utils/net"
)
const (
@ -920,7 +921,7 @@ func RunInitNodeChecks(execer utilsexec.Interface, cfg *kubeadmapi.InitConfigura
// Check if Bridge-netfilter and IPv6 relevant flags are set
if ip := net.ParseIP(cfg.LocalAPIEndpoint.AdvertiseAddress); ip != nil {
if ip.To4() == nil && ip.To16() != nil {
if utilsnet.IsIPv6(ip) {
checks = append(checks,
FileContentCheck{Path: bridgenf6, Content: []byte{'1'}},
FileContentCheck{Path: ipv6DefaultForwarding, Content: []byte{'1'}},
@ -986,7 +987,7 @@ func RunJoinNodeChecks(execer utilsexec.Interface, cfg *kubeadmapi.JoinConfigura
)
if !addIPv6Checks {
if ip := net.ParseIP(ipstr); ip != nil {
if ip.To4() == nil && ip.To16() != nil {
if utilsnet.IsIPv6(ip) {
addIPv6Checks = true
}
}