k8s集群限制不同用户操作
目录
一、部署
1、在/etc/kubernetes/pki下生成cr证书
2、在kubeconfig集群中新创建一个lucky这个用户
3、在kubeconfig集群下创建加一个lucky这个账号
4、创建lucky用户管理的命名空间
5、把lucky这个用户通过rolebinding绑定到clusterrole上,授予权限,权限只是在lucky这个名称空间有效
二、验证lucky用户权限
1、切换到lucky用户
2、查看default命名空间;无权限
3、查看lucky命名空间
三、创建系统用户lucky
创建一个系统用户lucky,这样在调用lucky用户时,系统用户也映射为lucky用户,而不是root用户。
1、创建系统用户lucky
2、将root/.kube/文件拷贝一份到 /home/lucky/
3、赋予.kube 文件用户属主属组为lucky
4、修改.kube下的config配置文件
5、将kubernetes账户条目删除并修改当前上下文
四、验证
1、切换到lucky系统用户
2、查看default命名空间;无权限
3、查看lucky命名空间
一、部署
1、在/etc/kubernetes/pki下生成cr证书
(1)cd /etc/kubernetes/pki
(2)设置umask为077
(3)生成用户lucky的key(lucky.key)用来申请证书
openssl genrsa -out lucky.key 2048
(4)生成lucky用户的证书请求luck.csr
openssl req -new -key lucky.key -out lucky.csr -subj "/CN=lucky"
(5)生成lucky.crt证书
openssl x509 -req -in lucky.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out lucky.crt -days 3650
2、在kubeconfig集群中新创建一个lucky这个用户
kubectl config set-credentials lucky --client-certificate=./lucky.crt --client-key=./lucky.key --embed-certs=true
3、在kubeconfig集群下创建加一个lucky这个账号
kubectl config set-context lucky@kubernetes --cluster=kubernetes --user=lucky
4、创建lucky用户管理的命名空间
kubectl create namespace lucky
5、把lucky这个用户通过rolebinding绑定到clusterrole上,授予权限,权限只是在lucky这个名称空间有效
kubectl create rolebinding lucky -n lucky --clusterrole=cluster-admin --user=lucky
二、验证lucky用户权限
1、切换到lucky用户
kubectl config use-context lucky@kubernetes
2、查看default命名空间;无权限
3、查看lucky命名空间
三、创建系统用户lucky
创建一个系统用户lucky,这样在调用lucky用户时,系统用户也映射为lucky用户,而不是root用户。
1、创建系统用户lucky
useradd lucky
2、将root/.kube/文件拷贝一份到 /home/lucky/
cp -ar /root/.kube/ /home/lucky/
3、赋予.kube 文件用户属主属组为lucky
chown -R lucky:lucky /home/lucky/
4、修改.kube下的config配置文件
vim /home/lucky/.kube/config
5、将kubernetes账户条目删除并修改当前上下文
四、验证
1、切换到lucky系统用户
su - lucky