1.22. 未使用放置规则选择本地集群的故障排除
受管集群使用放置规则选择,但不会选择 local-cluster (这也是管理的 hub 集群)。放置规则用户没有在 local-cluster 命名空间中获取 managedcluster 资源的权限。
1.22.1. 症状:不选择为受管集群对本地集群进行故障排除 复制链接链接已复制到粘贴板!
所有受管集群都使用放置规则选择,但 local-cluster 不是。放置规则用户没有在 local-cluster 命名空间中获取 managedcluster 资源的权限。
1.22.2. 解决问题: 未选择作为受管集群的故障排除本地集群 复制链接链接已复制到粘贴板!
已弃用: PlacementRule
要解决这个问题,您需要在 local-cluster 命名空间中授予 managedcluster 管理权限。完成以下步骤:
确认受管集群列表包含
local-cluster,并且放置规则的decisions列表不显示local-cluster。运行以下命令并查看结果:% oc get managedclusters请参阅
local-cluster被加入的示例输出,但它不在PlacementRule的 YAML 中:NAME HUB ACCEPTED MANAGED CLUSTER URLS JOINED AVAILABLE AGE local-cluster true True True 56d cluster1 true True True 16hapiVersion: apps.open-cluster-management.io/v1 kind: PlacementRule metadata: name: all-ready-clusters namespace: default spec: clusterSelector: {} status: decisions: - clusterName: cluster1 clusterNamespace: cluster1在 YAML 文件中创建一个
Role,以便在local-cluster命名空间中授予managedcluster管理权限。请参见以下示例:apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: managedcluster-admin-user-zisis namespace: local-cluster rules: - apiGroups: - cluster.open-cluster-management.io resources: - managedclusters verbs: - get创建
RoleBinding资源,向放置规则用户授予local-cluster命名空间的访问权限。请参见以下示例:apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: managedcluster-admin-user-zisis namespace: local-cluster roleRef: apiGroup: rbac.authorization.k8s.io kind: Role name: managedcluster-admin-user-zisis namespace: local-cluster subjects: - kind: User name: zisis apiGroup: rbac.authorization.k8s.io