Kubernetes 不支持的值:“0”;rbac.authorization.k8s.io“的;

Kubernetes 不支持的值:“0”;rbac.authorization.k8s.io“的;,kubernetes,Kubernetes,当我试图 kubectl create -f cloudflare-argo-rolebinding.yml 这个角色是什么 kind: RoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: cloudflare-argo-rolebinding namespace: default subjects: - kind: ServiceAccount name: cloudflare-argo a

当我试图

kubectl create -f cloudflare-argo-rolebinding.yml
这个角色是什么

kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: cloudflare-argo-rolebinding
  namespace: default
subjects:
- kind: ServiceAccount
  name: cloudflare-argo
  apiGroup: rbac.authorization.k8s.io
roleRef:
  kind: Role
  name: cloudflare-argo-role
  apiGroup: rbac.authorization.k8s.io
我得到这个错误:

The RoleBinding "cloudflare-argo-rolebinding" is invalid: subjects[0].apiGroup: Unsupported value: "rbac.authorization.k8s.io": supported values: ""

有什么想法吗?我在DigitalOcean上使用他们新的Kubernetes服务,如果有帮助的话。

服务帐户主题在v1 API中,即apiGroup”“

我认为问题在于使用错误的
apiGroup

kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: cloudflare-argo-rolebinding
  namespace: default
subjects:
- kind: ServiceAccount
  name: cloudflare-argo
  # apiGroup is ""(core/v1) for service_account
  apiGroup: ""
roleRef:
  kind: Role
  name: cloudflare-argo-role
  apiGroup: rbac.authorization.k8s.io

我认为这个答案是正确的。因为这是指默认的
servicecomport
,如果您没有更改它,您应该使用
名称空间:kube system
。@Crou我更新我的答案。我犯了一个错误,你已经证明了这一点。谢谢你。实际上,
namespace
字段的值应该是名为
cloudflare argo
sevicaccount
存在的值。这不仅仅是kube系统。如果未使用任何名称空间,则使用默认名称空间。