Devops搭建记录—Kubectl多用户
学弟们也想用minikube跑东西,那就用起来呗(为什么没有学妹呢?好气哦
计划
- 创建命名空间
- 创建账户
- 赋予权限
- 创建并使用新context
命名空间
| 1
 | kubectl create ns playground
 | 
创建账户
| 1
 | kubectl create sa -n playground player
 | 
赋予权限
k8s自带一个admin的role还是很好使的,直接绑定即可
| 1
 | kubectl create rolebinding playground-admin --clusterrole=admin --serviceaccount=playground:player --namespace=playground
 | 
kubectl create rolebinding devops-cluster-admin —clusterrole=cluster-admin —serviceaccount=devops:default —namespace=devops
创建Context
获取secret名称
| 1
 | kubectl describe sa -n playground player | grep Token
 | 
会得到如下所示的结果,即为Secret的名称
| 1
 | Tokens:              player-token-abcdefg
 | 
获取Token
| 1
 | kubectl describe secret -n playground <SECRET_NAME>
 | 
结果如下
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 
 | Name:         player-token-abcdefgNamespace:    playground
 Labels:       <none>
 Annotations:  kubernetes.io/service-account.name: player
 kubernetes.io/service-account.uid: ccfc6b21-5b2d-450b-a343-744f815ab175
 
 Type:  kubernetes.io/service-account-token
 
 Data
 ====
 ca.crt:     1111 bytes
 namespace:  10 bytes
 token:      <TOKEN>
 
 | 
添加用户配置
在kubectl的config中,以该Token增加用户即可
| 1
 | kubectl config set-credentials player --namespace=playground --token=<TOKEN>
 | 
添加Context配置
| 1
 | kubectl config set-context player --user=player --cluster=<API_SERVER> --namespace=playground
 | 
使用新context
| 1
 | kubectl config use-context player
 |