目录
一、常见的K8S按照部署方式
- Mini kube
Minikube是一个工具,可以在本地快速运行一个单节点微型K8S,仅用于学习、预览K8S的一些特性使用 - Kubeadmin
Kubeadmin也是一个工具,提供kubeadm init和kubeadm join,用于快速部署K8S集群,相对简单。 - 二进制安装部署
生产首选,从官方下载发行版的二进制包,手动部署每个组件和自签TLS证书,组成K8S集群,新手推荐。
二、Kubernetes二进制部署
1.部署 etcd 集群
etcd是Core0S团队于2013年6月发起的开源项目,它的目标是构建一个高可用的分布式键值(key-value) 数据库。etcd内部采用raft协议
作为一致性算法,etcd是go语言编写的。
etcd目前默认使用2379端口提供HTTP API服务,
2380端口和peer通信(这两个端口已经被IANA(互联网数字分配机构)官方预留给etcd)。
即etcd默认使用2379端口对外为客户端提供通讯,使用端口2380来进行服务器间内部通讯。
etcd在生产环境中一般推 荐集群方式部署。由于etcd的leader选举机制,要求至少为3台或以上的奇数台。
2.准备签发证书环境
CFSSL是CloudFlare 公司开源的一款PKI/TLS 工具。CFSSL包含一个命令行工具和一个用于签名、验证和捆绑TLS证书的HTTP API服务。使用Go语言编写。
CFSSL使用配置文件生成证书,因此自签之前,需要生成它识别的json格式的配置文件,CFSSL提供了方便的命令行生成配置文件。
三、在 master01 节点上操作下载证书制作工具
1.下载证书制作工具
2.创建k8s工作目录
启动etcd服务
部署 Master 组件
四、部署docker引擎
所有node’节点部署docker引擎
部署 Worker Node 组件
五、部署网络组件