diff --git a/cluster/addons/rbac/legacy-kubelet-user-disable/kubelet-binding.yaml b/cluster/addons/rbac/legacy-kubelet-user-disable/kubelet-binding.yaml new file mode 100644 index 00000000000..8cb0dbea054 --- /dev/null +++ b/cluster/addons/rbac/legacy-kubelet-user-disable/kubelet-binding.yaml @@ -0,0 +1,14 @@ +# This is required so that old clusters don't remove required bindings for 1.5 +# kubelets to function. +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: kubelet-cluster-admin + labels: + kubernetes.io/cluster-service: "true" + addonmanager.kubernetes.io/mode: EnsureExists +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: system:node +subjects: diff --git a/cluster/gce/gci/configure-helper.sh b/cluster/gce/gci/configure-helper.sh index e23db09c14f..fb7b2ca669a 100644 --- a/cluster/gce/gci/configure-helper.sh +++ b/cluster/gce/gci/configure-helper.sh @@ -1743,7 +1743,13 @@ function start-kube-addons { local -r dst_dir="/etc/kubernetes/addons" # prep addition kube-up specific rbac objects - setup-addon-manifests "addons" "rbac" + setup-addon-manifests "addons" "rbac/kubelet-api-auth" + setup-addon-manifests "addons" "rbac/kubelet-cert-rotation" + if [[ "${REGISTER_MASTER_KUBELET:-false}" == "true" ]]; then + setup-addon-manifests "addons" "rbac/legacy-kubelet-user" + else + setup-addon-manifests "addons" "rbac/legacy-kubelet-user-disabled" + fi # Set up manifests of other addons. if [[ "${KUBE_PROXY_DAEMONSET:-}" == "true" ]]; then