在受限群集中创建 Kubernetes 仪表板,其中禁止您访问角色、角色绑定等,并且不能访问命名空间之外的内容,可以通过以下步骤实现:
- 首先,确保您已经具备以下条件:
- 拥有一个受限群集,该群集已经安装了 Kubernetes。
- 拥有管理员权限或具备足够的权限来创建和管理 Kubernetes 资源。
- 创建一个新的 ServiceAccount(服务账号)用于访问仪表板,并将其绑定到一个新的 Role(角色)上,该角色只允许访问仪表板所需的资源。可以使用以下命令创建 ServiceAccount 和 Role:
- 创建一个新的 ServiceAccount(服务账号)用于访问仪表板,并将其绑定到一个新的 Role(角色)上,该角色只允许访问仪表板所需的资源。可以使用以下命令创建 ServiceAccount 和 Role:
- 这将创建一个名为
dashboard-sa
的 ServiceAccount,并将其绑定到一个名为 dashboard-role
的 Role 上。 - 创建一个新的 ClusterRole(集群角色),该角色允许访问仪表板所需的资源,但限制了对角色和角色绑定的访问权限。可以使用以下命令创建 ClusterRole:
- 创建一个新的 ClusterRole(集群角色),该角色允许访问仪表板所需的资源,但限制了对角色和角色绑定的访问权限。可以使用以下命令创建 ClusterRole:
- 这将创建一个名为
dashboard-clusterrole
的 ClusterRole。 - 创建一个新的 ClusterRoleBinding(集群角色绑定),将上一步创建的 ClusterRole 绑定到 ServiceAccount 上。可以使用以下命令创建 ClusterRoleBinding:
- 创建一个新的 ClusterRoleBinding(集群角色绑定),将上一步创建的 ClusterRole 绑定到 ServiceAccount 上。可以使用以下命令创建 ClusterRoleBinding:
- 这将创建一个名为
dashboard-clusterrolebinding
的 ClusterRoleBinding,并将 ClusterRole 绑定到 ServiceAccount 上。 - 部署 Kubernetes 仪表板。可以使用以下命令部署仪表板:
- 部署 Kubernetes 仪表板。可以使用以下命令部署仪表板:
- 这将部署最新版本的 Kubernetes 仪表板。
- 获取访问仪表板的令牌。可以使用以下命令获取令牌:
- 获取访问仪表板的令牌。可以使用以下命令获取令牌:
- 这将返回一个令牌,用于访问 Kubernetes 仪表板。
- 启动代理以访问仪表板。可以使用以下命令启动代理:
- 启动代理以访问仪表板。可以使用以下命令启动代理:
- 这将在本地启动一个代理服务器。
- 在浏览器中访问仪表板。可以使用以下 URL 在浏览器中访问仪表板:
- 在浏览器中访问仪表板。可以使用以下 URL 在浏览器中访问仪表板:
- 将
<namespace>
替换为您部署仪表板的命名空间。
通过以上步骤,您将在受限群集中成功创建了一个 Kubernetes 仪表板,并限制了访问权限,确保无法访问角色、角色绑定以及命名空间之外的内容。