有人去过北京中科医院 http://pf.39.net/xwdt/170210/5218641.html
Kubernetes有着一套完整且复杂的认证授权控制机制,包括APIServer的认证、授权、准入控制等。这样做主要目的是为了安全。不管是初学者,还是老手都需要搞清楚证书认证、理清思路明白的认证过程。
本节提纲:
了解kubernetes的证书服务创建CA证书
图1:kubernetes之Log一、了解kubernetes的证书服务
1、获取证书的方式:
第三方机构证书:付费购买CA机构颁发的证书,具有真实性校验;自签发正式:自己生成的ssl证书不受浏览器信任,在内网使用,而且功能效果差。2、生成证书的方式:
Easy-Rsa:基于shell的简单CA实用程序;
Openssl:一套开源软件,SSL密码库工具,提供了一个通用、健壮、功能完备的工具套件,用以支持SSL/TLS协议的实现。
CFSSL:是CloudFlare开源的一款PKI/TLS工具。CFSSL包含一个命令行工具和一个用于签名,验证并且捆绑TLS证书的HTTPAPI服务。使用Go语言编写。
3、Kubernetes群集分为三大类:
ClientCertificate(客户端证书)、ServerCertificate(服务端证书)和PeerCertificate(双向证书)。
具体详细如下:
1、Etcd配套证书
2、Kube-APIserver配套证书
3、kube-scheduler配套证书
4、kube-controller-manager配套证书
5、kube-proxy配套证书
6、serviceaccount配套证书
7、admin配套证书
8、kubelet配套证书
注意:kubelet用到的证书都是独一无二的,使用TLSbootstrapping给kubelet单独签发的证书。
在这里,我们cfssl使用自签发私有证书,先把Kubernetes群集环境搭建起来,在后面的内容中会专门学习Kubernetes认证、授权、准入控制等机制。
二、创建CA证书
1、创建证书目录
[root
k8s-master~]#mkdir-p/usr/local/kubernetes/ssl[root
k8s-master~]#mkdir-p/var/lib/etcd/2、下载Cfssl工具
[root
k8s-master~]#wget