mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 19:56:01 +00:00
Remove kube-proxy 1.8 configmap and daemonset manifests in kubeadm.
This commit is contained in:
parent
6b03a43b76
commit
0de49c461f
@ -231,9 +231,6 @@ var (
|
|||||||
// MinimumKubeletVersion specifies the minimum version of kubelet which kubeadm supports
|
// MinimumKubeletVersion specifies the minimum version of kubelet which kubeadm supports
|
||||||
MinimumKubeletVersion = version.MustParseSemantic("v1.8.0")
|
MinimumKubeletVersion = version.MustParseSemantic("v1.8.0")
|
||||||
|
|
||||||
// MinimumKubeProxyComponentConfigVersion specifies the minimum version for the kubeProxyComponent
|
|
||||||
MinimumKubeProxyComponentConfigVersion = version.MustParseSemantic("v1.9.0-alpha.3")
|
|
||||||
|
|
||||||
// SupportedEtcdVersion lists officially supported etcd versions with corresponding kubernetes releases
|
// SupportedEtcdVersion lists officially supported etcd versions with corresponding kubernetes releases
|
||||||
SupportedEtcdVersion = map[uint8]string{
|
SupportedEtcdVersion = map[uint8]string{
|
||||||
8: "3.0.17",
|
8: "3.0.17",
|
||||||
|
@ -17,37 +17,6 @@ limitations under the License.
|
|||||||
package proxy
|
package proxy
|
||||||
|
|
||||||
const (
|
const (
|
||||||
// KubeProxyConfigMap18 is the proxy ConfigMap manifest for Kubernetes version 1.8
|
|
||||||
KubeProxyConfigMap18 = `
|
|
||||||
kind: ConfigMap
|
|
||||||
apiVersion: v1
|
|
||||||
metadata:
|
|
||||||
name: kube-proxy
|
|
||||||
namespace: kube-system
|
|
||||||
labels:
|
|
||||||
app: kube-proxy
|
|
||||||
data:
|
|
||||||
kubeconfig.conf: |
|
|
||||||
apiVersion: v1
|
|
||||||
kind: Config
|
|
||||||
clusters:
|
|
||||||
- cluster:
|
|
||||||
certificate-authority: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
|
|
||||||
server: {{ .MasterEndpoint }}
|
|
||||||
name: default
|
|
||||||
contexts:
|
|
||||||
- context:
|
|
||||||
cluster: default
|
|
||||||
namespace: default
|
|
||||||
user: default
|
|
||||||
name: default
|
|
||||||
current-context: default
|
|
||||||
users:
|
|
||||||
- name: default
|
|
||||||
user:
|
|
||||||
tokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
|
|
||||||
`
|
|
||||||
|
|
||||||
// KubeProxyConfigMap19 is the proxy ConfigMap manifest for Kubernetes 1.9 and above
|
// KubeProxyConfigMap19 is the proxy ConfigMap manifest for Kubernetes 1.9 and above
|
||||||
KubeProxyConfigMap19 = `
|
KubeProxyConfigMap19 = `
|
||||||
kind: ConfigMap
|
kind: ConfigMap
|
||||||
@ -79,65 +48,6 @@ data:
|
|||||||
tokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
|
tokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
|
||||||
config.conf: |-
|
config.conf: |-
|
||||||
{{ .ProxyConfig}}
|
{{ .ProxyConfig}}
|
||||||
`
|
|
||||||
// KubeProxyDaemonSet18 is the proxy DaemonSet manifest for Kubernetes version 1.8
|
|
||||||
KubeProxyDaemonSet18 = `
|
|
||||||
apiVersion: apps/v1beta2
|
|
||||||
kind: DaemonSet
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
k8s-app: kube-proxy
|
|
||||||
name: kube-proxy
|
|
||||||
namespace: kube-system
|
|
||||||
spec:
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
k8s-app: kube-proxy
|
|
||||||
updateStrategy:
|
|
||||||
type: RollingUpdate
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
k8s-app: kube-proxy
|
|
||||||
spec:
|
|
||||||
containers:
|
|
||||||
- name: kube-proxy
|
|
||||||
image: {{ if .ImageOverride }}{{ .ImageOverride }}{{ else }}{{ .ImageRepository }}/kube-proxy-{{ .Arch }}:{{ .Version }}{{ end }}
|
|
||||||
imagePullPolicy: IfNotPresent
|
|
||||||
command:
|
|
||||||
- /usr/local/bin/kube-proxy
|
|
||||||
- --kubeconfig=/var/lib/kube-proxy/kubeconfig.conf
|
|
||||||
{{ .ClusterCIDR }}
|
|
||||||
securityContext:
|
|
||||||
privileged: true
|
|
||||||
volumeMounts:
|
|
||||||
- mountPath: /var/lib/kube-proxy
|
|
||||||
name: kube-proxy
|
|
||||||
- mountPath: /run/xtables.lock
|
|
||||||
name: xtables-lock
|
|
||||||
readOnly: false
|
|
||||||
- mountPath: /lib/modules
|
|
||||||
name: lib-modules
|
|
||||||
readOnly: true
|
|
||||||
hostNetwork: true
|
|
||||||
serviceAccountName: kube-proxy
|
|
||||||
tolerations:
|
|
||||||
- key: {{ .MasterTaintKey }}
|
|
||||||
effect: NoSchedule
|
|
||||||
- key: {{ .CloudTaintKey }}
|
|
||||||
value: "true"
|
|
||||||
effect: NoSchedule
|
|
||||||
volumes:
|
|
||||||
- name: kube-proxy
|
|
||||||
configMap:
|
|
||||||
name: kube-proxy
|
|
||||||
- name: xtables-lock
|
|
||||||
hostPath:
|
|
||||||
path: /run/xtables.lock
|
|
||||||
type: FileOrCreate
|
|
||||||
- name: lib-modules
|
|
||||||
hostPath:
|
|
||||||
path: /lib/modules
|
|
||||||
`
|
`
|
||||||
|
|
||||||
// KubeProxyDaemonSet19 is the proxy DaemonSet manifest for Kubernetes 1.9 and above
|
// KubeProxyDaemonSet19 is the proxy DaemonSet manifest for Kubernetes 1.9 and above
|
||||||
|
@ -33,7 +33,6 @@ import (
|
|||||||
"k8s.io/kubernetes/pkg/api/legacyscheme"
|
"k8s.io/kubernetes/pkg/api/legacyscheme"
|
||||||
kubeproxyconfigscheme "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig/scheme"
|
kubeproxyconfigscheme "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig/scheme"
|
||||||
kubeproxyconfigv1alpha1 "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig/v1alpha1"
|
kubeproxyconfigv1alpha1 "k8s.io/kubernetes/pkg/proxy/apis/kubeproxyconfig/v1alpha1"
|
||||||
"k8s.io/kubernetes/pkg/util/version"
|
|
||||||
"k8s.io/kubernetes/plugin/pkg/scheduler/algorithm"
|
"k8s.io/kubernetes/plugin/pkg/scheduler/algorithm"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -63,58 +62,28 @@ func EnsureProxyAddon(cfg *kubeadmapi.MasterConfiguration, client clientset.Inte
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("error when marshaling: %v", err)
|
return fmt.Errorf("error when marshaling: %v", err)
|
||||||
}
|
}
|
||||||
// Parse the given kubernetes version
|
|
||||||
k8sVersion, err := version.ParseSemantic(cfg.KubernetesVersion)
|
|
||||||
if err != nil {
|
|
||||||
return fmt.Errorf("couldn't parse kubernetes version %q: %v", cfg.KubernetesVersion, err)
|
|
||||||
}
|
|
||||||
var proxyConfigMapBytes, proxyDaemonSetBytes []byte
|
var proxyConfigMapBytes, proxyDaemonSetBytes []byte
|
||||||
if k8sVersion.AtLeast(kubeadmconstants.MinimumKubeProxyComponentConfigVersion) {
|
proxyConfigMapBytes, err = kubeadmutil.ParseTemplate(KubeProxyConfigMap19,
|
||||||
proxyConfigMapBytes, err = kubeadmutil.ParseTemplate(KubeProxyConfigMap19,
|
struct {
|
||||||
struct {
|
MasterEndpoint string
|
||||||
MasterEndpoint string
|
ProxyConfig string
|
||||||
ProxyConfig string
|
}{
|
||||||
}{
|
MasterEndpoint: masterEndpoint,
|
||||||
MasterEndpoint: masterEndpoint,
|
ProxyConfig: proxyBytes,
|
||||||
ProxyConfig: proxyBytes,
|
|
||||||
})
|
|
||||||
if err != nil {
|
|
||||||
return fmt.Errorf("error when parsing kube-proxy configmap template: %v", err)
|
|
||||||
}
|
|
||||||
proxyDaemonSetBytes, err = kubeadmutil.ParseTemplate(KubeProxyDaemonSet19, struct{ ImageRepository, Arch, Version, ImageOverride, ClusterCIDR, MasterTaintKey, CloudTaintKey string }{
|
|
||||||
ImageRepository: cfg.GetControlPlaneImageRepository(),
|
|
||||||
Arch: runtime.GOARCH,
|
|
||||||
Version: kubeadmutil.KubernetesVersionToImageTag(cfg.KubernetesVersion),
|
|
||||||
ImageOverride: cfg.UnifiedControlPlaneImage,
|
|
||||||
MasterTaintKey: kubeadmconstants.LabelNodeRoleMaster,
|
|
||||||
CloudTaintKey: algorithm.TaintExternalCloudProvider,
|
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("error when parsing kube-proxy daemonset template: %v", err)
|
return fmt.Errorf("error when parsing kube-proxy configmap template: %v", err)
|
||||||
}
|
}
|
||||||
} else {
|
proxyDaemonSetBytes, err = kubeadmutil.ParseTemplate(KubeProxyDaemonSet19, struct{ ImageRepository, Arch, Version, ImageOverride, ClusterCIDR, MasterTaintKey, CloudTaintKey string }{
|
||||||
proxyConfigMapBytes, err = kubeadmutil.ParseTemplate(KubeProxyConfigMap18,
|
ImageRepository: cfg.GetControlPlaneImageRepository(),
|
||||||
struct {
|
Arch: runtime.GOARCH,
|
||||||
MasterEndpoint string
|
Version: kubeadmutil.KubernetesVersionToImageTag(cfg.KubernetesVersion),
|
||||||
}{
|
ImageOverride: cfg.UnifiedControlPlaneImage,
|
||||||
MasterEndpoint: masterEndpoint,
|
MasterTaintKey: kubeadmconstants.LabelNodeRoleMaster,
|
||||||
})
|
CloudTaintKey: algorithm.TaintExternalCloudProvider,
|
||||||
if err != nil {
|
})
|
||||||
return fmt.Errorf("error when parsing kube-proxy configmap template: %v", err)
|
if err != nil {
|
||||||
}
|
return fmt.Errorf("error when parsing kube-proxy daemonset template: %v", err)
|
||||||
|
|
||||||
proxyDaemonSetBytes, err = kubeadmutil.ParseTemplate(KubeProxyDaemonSet18, struct{ ImageRepository, Arch, Version, ImageOverride, ClusterCIDR, MasterTaintKey, CloudTaintKey string }{
|
|
||||||
ImageRepository: cfg.GetControlPlaneImageRepository(),
|
|
||||||
Arch: runtime.GOARCH,
|
|
||||||
Version: kubeadmutil.KubernetesVersionToImageTag(cfg.KubernetesVersion),
|
|
||||||
ImageOverride: cfg.UnifiedControlPlaneImage,
|
|
||||||
ClusterCIDR: getClusterCIDR(cfg.Networking.PodSubnet),
|
|
||||||
MasterTaintKey: kubeadmconstants.LabelNodeRoleMaster,
|
|
||||||
CloudTaintKey: algorithm.TaintExternalCloudProvider,
|
|
||||||
})
|
|
||||||
if err != nil {
|
|
||||||
return fmt.Errorf("error when parsing kube-proxy daemonset template: %v", err)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if err := createKubeProxyAddon(proxyConfigMapBytes, proxyDaemonSetBytes, client); err != nil {
|
if err := createKubeProxyAddon(proxyConfigMapBytes, proxyDaemonSetBytes, client); err != nil {
|
||||||
return err
|
return err
|
||||||
|
@ -113,15 +113,6 @@ func TestCompileManifests(t *testing.T) {
|
|||||||
data interface{}
|
data interface{}
|
||||||
expected bool
|
expected bool
|
||||||
}{
|
}{
|
||||||
{
|
|
||||||
manifest: KubeProxyConfigMap18,
|
|
||||||
data: struct {
|
|
||||||
MasterEndpoint, ProxyConfig string
|
|
||||||
}{
|
|
||||||
MasterEndpoint: "foo",
|
|
||||||
},
|
|
||||||
expected: true,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
manifest: KubeProxyConfigMap19,
|
manifest: KubeProxyConfigMap19,
|
||||||
data: struct {
|
data: struct {
|
||||||
@ -132,19 +123,6 @@ func TestCompileManifests(t *testing.T) {
|
|||||||
},
|
},
|
||||||
expected: true,
|
expected: true,
|
||||||
},
|
},
|
||||||
{
|
|
||||||
manifest: KubeProxyDaemonSet18,
|
|
||||||
data: struct{ ImageRepository, Arch, Version, ImageOverride, ClusterCIDR, MasterTaintKey, CloudTaintKey string }{
|
|
||||||
ImageRepository: "foo",
|
|
||||||
Arch: "foo",
|
|
||||||
Version: "foo",
|
|
||||||
ImageOverride: "foo",
|
|
||||||
ClusterCIDR: "foo",
|
|
||||||
MasterTaintKey: "foo",
|
|
||||||
CloudTaintKey: "foo",
|
|
||||||
},
|
|
||||||
expected: true,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
manifest: KubeProxyDaemonSet19,
|
manifest: KubeProxyDaemonSet19,
|
||||||
data: struct{ ImageRepository, Arch, Version, ImageOverride, MasterTaintKey, CloudTaintKey string }{
|
data: struct{ ImageRepository, Arch, Version, ImageOverride, MasterTaintKey, CloudTaintKey string }{
|
||||||
|
Loading…
Reference in New Issue
Block a user