Merge pull request #43265 from liggitt/node-proxy-role

Automatic merge from submit-queue

Give apiserver full access to kubelet API

the kubelet stats API calls use both GET and POST. POST calls proxied through the API server were getting forbidden because only `get` was allowed.

more broadly, the apiserver is responsible for proxying authorized API calls to the kubelet API... I think this means the apiserver should have access to all verbs on the kubelet subresources.

Fixes #42045
This commit is contained in:
Kubernetes Submit Queue 2017-03-17 17:11:05 -07:00 committed by GitHub
commit bb0c81a6d8
2 changed files with 6 additions and 10 deletions

View File

@ -1,14 +1,15 @@
# This binding gives the kube-apiserver user full access to the kubelet API
apiVersion: rbac.authorization.k8s.io/v1beta1 apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding kind: ClusterRoleBinding
metadata: metadata:
name: apiserver-node-proxy name: kube-apiserver-kubelet-api-admin
labels: labels:
kubernetes.io/cluster-service: "true" kubernetes.io/cluster-service: "true"
addonmanager.kubernetes.io/mode: Reconcile addonmanager.kubernetes.io/mode: Reconcile
roleRef: roleRef:
apiGroup: rbac.authorization.k8s.io apiGroup: rbac.authorization.k8s.io
kind: ClusterRole kind: ClusterRole
name: node-proxy name: kubelet-api-admin
subjects: subjects:
- apiGroup: rbac.authorization.k8s.io - apiGroup: rbac.authorization.k8s.io
kind: User kind: User

View File

@ -1,7 +1,8 @@
# This role allows full access to the kubelet API
apiVersion: rbac.authorization.k8s.io/v1beta1 apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
name: node-proxy name: kubelet-api-admin
labels: labels:
kubernetes.io/cluster-service: "true" kubernetes.io/cluster-service: "true"
addonmanager.kubernetes.io/mode: Reconcile addonmanager.kubernetes.io/mode: Reconcile
@ -10,15 +11,9 @@ rules:
- "" - ""
resources: resources:
- nodes/proxy - nodes/proxy
verbs:
- create
- get
- apiGroups:
- ""
resources:
- nodes/log - nodes/log
- nodes/stats - nodes/stats
- nodes/metrics - nodes/metrics
- nodes/spec - nodes/spec
verbs: verbs:
- get - "*"