多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[TOC] ## 事件缘由 我在两台机器上装好k8s并且master和salve已经配置好。查看节点状态正常。查看pod状态 ``` $ sudo kubectl get pod -n kube-system NAME READY STATUS RESTARTS AGE coredns-7ff77c879f-775zh 0/1 ContainerCreating 0 15m coredns-7ff77c879f-hxgxp 0/1 ContainerCreating 0 16m etcd-catrefine-master 1/1 Running 0 39m kube-apiserver-catrefine-master 1/1 Running 0 39m kube-controller-manager-catrefine-master 1/1 Running 0 39m kube-proxy-klfnt 1/1 Running 0 37m kube-proxy-t8s7v 1/1 Running 0 39m kube-scheduler-catrefine-master 1/1 Running 0 39m ``` 两个coredns不正常,查看日志 ``` $ sudo kubectl logs -f coredns-7ff77c879f-775zh -n kube-system Error from server (Forbidden): pods "coredns-7ff77c879f-775zh" is forbidden: User "system:node:catrefine-master" cannot get resource "pods/log" in API group "" in the namespace "kube-system" ``` 没有权限查看该pod日志。这才有了下面的故事 ## 使用 RBAC 鉴权 基于角色(Role)的访问控制(RBAC)是一种基于企业中用户的角色来调节控制对计算机或网络资源的访问方法。 `RBAC`使用`rbac.authorization.k8s.io`[API 组](https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-groups)来驱动鉴权操作,允许管理员通过 Kubernetes API 动态配置策略。 在 1.8 版本中,RBAC 模式是稳定的并通过 rbac.authorization.k8s.io/v1 API 提供支持。 要启用 RBAC,在启动 API 服务器时添加`--authorization-mode=RBAC`参数 未完待续