Kubernetes 创建 AI 和 Dev 空间的只读账号并生成 Token
Kubernetes 创建 AI 和 Dev 空间的只读账号并生成 Token
本指南详细介绍如何在 Kubernetes 中创建 AI 和 Dev 命名空间的只读账号,并生成相应的 Token。这些 Token 可以用于 Kubernetes Dashboard,实现只读访问权限。
1. 创建 AI 和 Dev 命名空间
kubectl create namespace ai
kubectl create namespace dev
2. 创建只读角色和绑定
在 AI 命名空间下创建只读角色和绑定:
# 只读角色
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
namespace: ai
name: readonly
rules:
- apiGroups: ['','extensions','apps']
resources: ['pods', 'replicationcontrollers', 'services', 'deployments', 'ingresses']
verbs: ['get', 'watch', 'list']
# 绑定
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: readonly-binding
namespace: ai
subjects:
- kind: User
name: readonly
apiGroup: rbac.authorization.k8s.io
roleRef:
kind: Role
name: readonly
apiGroup: rbac.authorization.k8s.io
在 Dev 命名空间下同样需要创建只读角色和绑定,步骤与 AI 命名空间相同。
3. 生成 Token
kubectl create serviceaccount readonly -n ai
kubectl create serviceaccount readonly -n dev
kubectl create clusterrolebinding readonly-binding --clusterrole=view --serviceaccount=ai:readonly
kubectl create clusterrolebinding readonly-binding --clusterrole=view --serviceaccount=dev:readonly
kubectl get secret $(kubectl get serviceaccount readonly -n ai -o jsonpath='{.secrets[0].name}') -n ai -o jsonpath='{.data.token}' | base64 -d
kubectl get secret $(kubectl get serviceaccount readonly -n dev -o jsonpath='{.secrets[0].name}') -n dev -o jsonpath='{.data.token}' | base64 -d
4. 将生成的 Token 提供给 Kubernetes Dashboard
在 Kubernetes Dashboard 中选择 Token 登录方式,将生成的 Token 输入即可登录。
原文地址: http://www.cveoy.top/t/topic/kTjA 著作权归作者所有。请勿转载和采集!