mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-28 05:57:25 +00:00
Merge pull request #65931 from neolit123/proxy-taint
Automatic merge from submit-queue (batch tested with PRs 65931, 65705, 66033). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. kubeadm: run kube-proxy on non-master tainted nodes **What this PR does / why we need it**: kube-proxy should be able to run on all nodes, independent on the taint of such nodes. This restriction was previously removed inbb28449e31
but then was brought back ind1949261ab
. /cc @kubernetes/sig-cluster-lifecycle-pr-reviews /cc @luxas @detiber @dixudx @discordianfish @mxey /kind bug /area kube-proxy /area kubeadm **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*: Fixes kubernetes/kubeadm#699 **Special notes for your reviewer**: we are removing the requirement again, but please have a look at all the implications here. hopefully we don't have to bring it again. **Release note**: ```release-note kubeadm: run kube-proxy on non-master tainted nodes ```
This commit is contained in:
commit
9e98f9a785
@ -35,7 +35,6 @@ go_library(
|
|||||||
deps = [
|
deps = [
|
||||||
"//cmd/kubeadm/app/apis/kubeadm:go_default_library",
|
"//cmd/kubeadm/app/apis/kubeadm:go_default_library",
|
||||||
"//cmd/kubeadm/app/componentconfigs:go_default_library",
|
"//cmd/kubeadm/app/componentconfigs:go_default_library",
|
||||||
"//cmd/kubeadm/app/constants:go_default_library",
|
|
||||||
"//cmd/kubeadm/app/util:go_default_library",
|
"//cmd/kubeadm/app/util:go_default_library",
|
||||||
"//cmd/kubeadm/app/util/apiclient:go_default_library",
|
"//cmd/kubeadm/app/util/apiclient:go_default_library",
|
||||||
"//staging/src/k8s.io/api/apps/v1:go_default_library",
|
"//staging/src/k8s.io/api/apps/v1:go_default_library",
|
||||||
|
@ -69,7 +69,10 @@ spec:
|
|||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
k8s-app: kube-proxy
|
k8s-app: kube-proxy
|
||||||
|
annotations:
|
||||||
|
scheduler.alpha.kubernetes.io/critical-pod: ""
|
||||||
spec:
|
spec:
|
||||||
|
priorityClassName: system-node-critical
|
||||||
containers:
|
containers:
|
||||||
- name: kube-proxy
|
- name: kube-proxy
|
||||||
image: {{ if .ImageOverride }}{{ .ImageOverride }}{{ else }}{{ .ImageRepository }}/kube-proxy-{{ .Arch }}:{{ .Version }}{{ end }}
|
image: {{ if .ImageOverride }}{{ .ImageOverride }}{{ else }}{{ .ImageRepository }}/kube-proxy-{{ .Arch }}:{{ .Version }}{{ end }}
|
||||||
@ -104,8 +107,7 @@ spec:
|
|||||||
tolerations:
|
tolerations:
|
||||||
- key: CriticalAddonsOnly
|
- key: CriticalAddonsOnly
|
||||||
operator: Exists
|
operator: Exists
|
||||||
- key: {{ .MasterTaintKey }}
|
- operator: Exists
|
||||||
effect: NoSchedule
|
|
||||||
nodeSelector:
|
nodeSelector:
|
||||||
beta.kubernetes.io/arch: {{ .Arch }}
|
beta.kubernetes.io/arch: {{ .Arch }}
|
||||||
`
|
`
|
||||||
|
@ -30,7 +30,6 @@ import (
|
|||||||
clientsetscheme "k8s.io/client-go/kubernetes/scheme"
|
clientsetscheme "k8s.io/client-go/kubernetes/scheme"
|
||||||
kubeadmapi "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
|
kubeadmapi "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
|
||||||
"k8s.io/kubernetes/cmd/kubeadm/app/componentconfigs"
|
"k8s.io/kubernetes/cmd/kubeadm/app/componentconfigs"
|
||||||
kubeadmconstants "k8s.io/kubernetes/cmd/kubeadm/app/constants"
|
|
||||||
kubeadmutil "k8s.io/kubernetes/cmd/kubeadm/app/util"
|
kubeadmutil "k8s.io/kubernetes/cmd/kubeadm/app/util"
|
||||||
"k8s.io/kubernetes/cmd/kubeadm/app/util/apiclient"
|
"k8s.io/kubernetes/cmd/kubeadm/app/util/apiclient"
|
||||||
)
|
)
|
||||||
@ -74,12 +73,11 @@ func EnsureProxyAddon(cfg *kubeadmapi.InitConfiguration, client clientset.Interf
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("error when parsing kube-proxy configmap template: %v", err)
|
return fmt.Errorf("error when parsing kube-proxy configmap template: %v", err)
|
||||||
}
|
}
|
||||||
proxyDaemonSetBytes, err = kubeadmutil.ParseTemplate(KubeProxyDaemonSet19, struct{ ImageRepository, Arch, Version, ImageOverride, MasterTaintKey string }{
|
proxyDaemonSetBytes, err = kubeadmutil.ParseTemplate(KubeProxyDaemonSet19, struct{ ImageRepository, Arch, Version, ImageOverride string }{
|
||||||
ImageRepository: cfg.GetControlPlaneImageRepository(),
|
ImageRepository: cfg.GetControlPlaneImageRepository(),
|
||||||
Arch: runtime.GOARCH,
|
Arch: runtime.GOARCH,
|
||||||
Version: kubeadmutil.KubernetesVersionToImageTag(cfg.KubernetesVersion),
|
Version: kubeadmutil.KubernetesVersionToImageTag(cfg.KubernetesVersion),
|
||||||
ImageOverride: cfg.UnifiedControlPlaneImage,
|
ImageOverride: cfg.UnifiedControlPlaneImage,
|
||||||
MasterTaintKey: kubeadmconstants.LabelNodeRoleMaster,
|
|
||||||
})
|
})
|
||||||
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 daemonset template: %v", err)
|
||||||
|
Loading…
Reference in New Issue
Block a user