本文介绍的部署过程主要是为了让读者能够理解 K8S 的运行原理,为了简化流程,这里不涉及高可用、高性能等解决方案。
安装说明:
- 本文仅仅是在两个节点上部署所有的组件,如图所示包括 MASTER 和 NODE
- 所有的组件都安装在 /opt/{component} 的根目录下,包括二进制文件和配置文件
- 另外组件进程由 systemd 来管理,其配置文件在 /etc/systemd/system/{component}.service
本文所有的安装代码已经放在 https://github.com/bilc/kubernetes-deploy,供大家参考。
1.前期准备
配置环境变量文件 environment,如下,只修改 MASTER_IP 和 NODE_IP 即可。
export MASTER_IP=10.1.0.86
export NODE_IP=10.1.0.87
#service
export SERVICE_CIDR="10.254.0.0/16" #service使用的虚拟IP
export CLUSTER_KUBERNETES_SVC_IP="10.254.0.1" #apiserver的service,会被pod访问
export NODE_PORT_RANGE="30000-32767" #nodeport类型的service分配的端口
#for coredns & kubelet
export CLUSTER_DNS_DOMAIN="cluster.local" #域名后缀
export CLUSTER_DNS_SVC_IP="10.254.0.2" #dnsserver地址
#pod
export CLUSTER_CIDR="172.30.0.0/16" #pod网络分配的地址段
主要需要配置免密登录和下载二进制文件,这里的 download.sh 下载的文件可能需要翻墙解决。
ssh-keygen #生成免密登录的公私钥
. envrionment
./ssh-nopwd.sh #设置免密登录
cd cert
./download.sh #这里需要自行翻墙解决
./install.sh #在目标机上创建目录和上传文件
cd -
2.证书生成
首先介绍一下证书文件类型:
- ca.pem, ca-key.pem:证书颁发机构自己的证书和私钥
- *.pem, *-key.pem:该模块的证书和私钥 <