fal*_*ets 40 rbac kubernetes kubectl
我正在尝试在kubernetes集群上安装一个helm软件包,该集群据称已禁用RBAC.我收到了一个权限错误提示clusterroles.rbac.authorization.k8s.io,如果启用了 RBAC,这就是我所期望的.
有没有办法检查kubectlRBAC是否真的被禁用?
我尝试过的:
kubectl describe nodes --all-namespaces | grep -i rbac :什么都没有出现kubectl describe rbac --all-namespaces | grep -i rbac :什么都没有出现kubectl config get-contexts | grep -i rbac :什么都没有出现k get clusterroles它说"找不到资源",而不是错误信息.这是否意味着,RBAC 被启用?kuebctl describe cluster 不是一件事我知道这可能是xy问题,因为我正在安装的helm软件包可能需要启用RBAC.但是,我仍然想知道如何检查它是否启用/禁用.
dan*_*cic 57
您可以通过执行命令来检查kubectl api-versions; 如果启用了RBAC,您应该看到API版本.rbac.authorization.k8s.io/v1.
在AKS中,最好的方法是在resources.azure.com上检查集群的资源详细信息.如果可以发现"enableRBAC": true,则群集已启用RBAC.请注意,现有的非RBAC启用的AKS群集目前无法更新以供RBAC使用.(感谢@DennisAmeling的澄清)
Mic*_*las 13
我希望有更好的方法,但我使用的是:
$ kubectl cluster-info dump | grep authorization-mode
Run Code Online (Sandbox Code Playgroud)
如果你可以执行它,你应该看到RBAC在那里列出或不在那里,如果你没有权限这样做,那么很可能RBAC已启用.
对于Azure(AKS)来说,这有点棘手.虽然kubectl api-versions命令确实返回rbac.authorization.k8s.io/v1,该kubectl get clusterroles命令不返回默认system:前缀角色.
检查AKS的最佳方法是检查群集的资源详细信息,例如在resources.azure.com上.如果"enableRBAC": true,您的群集已启用RBAC.现有的非RBAC启用的AKS群集当前无法更新以供RBAC使用.因此,如果要在AKS上启用RBAC,则必须创建新群集.
对于Azure(AKS),我认为Azure CLI可以很好地工作。
az resource show -g <resource group name> -n <cluster name> --resource-type Microsoft.ContainerService/ManagedClusters --query properties.enableRBAC
Run Code Online (Sandbox Code Playgroud)
与使用resources.azure.com基本相同,但是我发现使用Azure CLI更快
| 归档时间: |
|
| 查看次数: |
15221 次 |
| 最近记录: |