gpt4 book ai didi

kubernetes - 无法将命名空间字段添加到 RoleBinding 中的 roleRef

转载 作者:行者123 更新时间:2023-12-01 11:15:30 27 4
gpt4 key购买 nike

我想在我的 MyRoleBinding.yaml 文件中添加来自命名空间 kube-system 的角色,如下所示:

kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: myrolebinding
namespace: default
subjects:
- kind: ServiceAccount
name: myservice
namespace: default
apiGroup: ""
roleRef:
kind: Role
name: system:controller:token-cleaner
namespace: kube-system
apiGroup: ""

但是当我运行 kubectl apply -f MyRoleBinding.yaml 时,我得到:

error: error validating "MyRoleBinding.yaml": error validating data: ValidationError(RoleBinding.roleRef): unknown field "namespace" in io.k8s.api.rbac.v1.RoleRef; if you choose to ignore these errors, turn validation off with --validate=false

我运行在default命名空间,是因为这个吗?
我试着运行:
kubectl apply -f MyRoleBinding.yaml --namespace=kube-system 但我遇到了同样的错误。

我还尝试使用以下方法在 defaul 命名空间中添加现有角色:

roleRef: 
kind: Role
name: read-pods
namespace: default
apiGroup: ""

我得到了同样的错误。

最佳答案

roleRef 字段不支持命名空间。您可以将 roleRef 与未命名空间的 ClusterRoles 一起使用,或者与始终必须与 RoleBinding 位于同一命名空间中的 Roles 一起使用。另见 reference .

关于kubernetes - 无法将命名空间字段添加到 RoleBinding 中的 roleRef,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51961432/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com