我创建了一个绑定到clusterRole的服务帐户。
这是clusterRole
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: devops-tools-role
namespace: devops-tools
rules:
- apiGroups:
- ""
- apps
- autoscaling
- batch
- extensions
- policy
- rbac.authorization.k8s.io
- networking.k8s.io
resources:
- pods
- componentstatuses
- configmaps
- daemonsets
- deployments
- events
- endpoints
- horizontalpodautoscalers
- ingress
- ingresses
- jobs
- limitranges
- namespaces
- nodes
- pods
- persistentvolumes
- persistentvolumeclaims
- resourcequotas
- replicasets
- replicationcontrollers
- serviceaccounts
- services
verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]我试着从豆荚里读取日志
kubectl -n dfg02 logs postgres-69c7bb5cf7-dstzt,然后得到:
Error from server (Forbidden): pods "postgres-69c7bb5cf7-dstzt" is forbidden: User "system:serviceaccount:devops-tools:bino" cannot get resource "pods/log" in API group "" in the namespace "dfg02"因此,我切换到'admin‘帐户,并尝试找到要添加到集群角色的资源。
✘ bino@corobalap ~/gitjece kubectl config use-context k0s-cluster
Switched to context "k0s-cluster".
bino@corobalap ~/gitjece kubectl api-resources |grep log却一无所获。
我的问题是如何在ClusterRole中添加“日志读取权限”。
由衷地
-比诺-
发布于 2022-10-19 08:11:37
日志是Pods的子资源,仅在资源部分指定荚是不够的。
因此,只需将以下内容添加到您的yaml中,它就会工作。
resources:
- pods
- pods/logPS:您已经在您的pods部分中指定了两次resources,并不是说它做了什么,而是想指出它。
https://stackoverflow.com/questions/74120333
复制相似问题