Kubernetes之九:API Server访问控制

Kubernetes API Server通过一个名为kube-apiserver的进程提供服务,该进程运行在Master节点上。我们可以启动HTTPS安全端口(--secure=6443)来启动安全机制,加强REST API访问的安全性。

下面是实践过程

1,生成证书

openssl genrsa -out linux.key 2048

openssl req -new -key linux.key -out ilinux.csr  "/CN=ilinux/O=kubeusers"

openssl x509 -req  -in ilinux.csr  -CA ./ca.crt  -CAkey  ./ca.key  -CAcreateserial -out linux.crt -days 36

2,设置新集群(mykube),指明apiserver地址、k8s证书路径

kubectl config set-cluster mykube --server="https://192.168.0.4:6443" --certificate-authority=/etc/kubernetes/pki/ca.crt --embed-certs=true

可以用kubectl config get-cluster进行查看

3,需要配置新集群权限,其自定义权限名为linux,username需要和linux.csr的CN保持一致

kubectl config set-context ilinux@mykube --cluster=mykube --user=linux

4,配置context上下文,并绑定上面设置的新集群名、用户名和自定义权限名

kubectl config set-credentials ilinux --client-certificate=/etc/kubernetes/pki/linux.crt --client-key=/etc/kubernetes/pki/ilinux.key --username=linux --embed-certs=true

5,可以用下面语句切换

kubectl config use-context linux@mykube

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容