在以下清单yaml中:
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: prometheus-operator
rules:
- apiGroups: [apiextensions.k8s.io]
resources: [customresourcedefinitions]
verbs: ['*']
- apiGroups: [monitoring.coreos.com]
resources:
- alertmanagers
- prometheuses
- prometheuses/finalizers
- alertmanagers/finalizers
- servicemonitors
- prometheusrules
verbs: ['*']rules和apiGroups意味着什么?
发布于 2022-03-04 08:34:32
在Kubernetes中,资源可以是grouped resources或individual resources。
例子:
kubectl api-resources | grep 'crds\|pods\|NAME'
NAME SHORTNAMES APIVERSION NAMESPACED KIND
pods po v1 true Pod
customresourcedefinitions crd,crds apiextensions.k8s.io/v1 false CustomResourceDefinition在上面的输出中,pods apiVersion显示为v1,因此它是一个单独的资源。对于customresourcedefinitions,apiVersion显示为apiextensions.k8s.io/v1,这表明它是组apiextensions.k8s.io下的一个分组资源。
当我们为分组资源定义RBAC规则(角色/clusrerole)时,我们需要提到apiGroups和resources。
https://stackoverflow.com/questions/71348102
复制相似问题