myblog icon indicating copy to clipboard operation
myblog copied to clipboard

文章讨论:解析k8s中工作节点组件和集群通信原理

Open helios741 opened this issue 5 years ago • 2 comments

为什么RBAC没有system:nodes这个Group的资源的权限,kubelet还能watch Node等资源呢

Noooooorth avatar Jan 07 '20 02:01 Noooooorth

@Noooooorth 这个是因为在kube-apiserver中的--authorization-mode=Node,RBAC第一个Node这个参数就是专门为kubelet准备的,让kubelet能够绕过RBAC直接访问K8s的资源。其实在k8s中默认的已经有了system:node这个ClusterRole,也有了对应的ClusterRoleBinding(也叫system:node)。system:node这个ClusterRole已经有了kubelet的需要的所有权限,但是遗憾的是在system:node这个ClusterRoleBinding里面并没有绑定User。当让你如果想都用RBAC,你就把system:node这个ClusterRoleBinding的指定用户(system:nodes这个Group)加上就行。

helios741 avatar Jan 07 '20 02:01 helios741