kubeadm 是Kubernetes官方提供的用于快速安装Kubernetes集群的工具,通过kubeadm的方式安装集群比二进制的方式安装高效不少。建议初次使用k8s使用此方式安装,二进制的方式会很快令人失去信心。
在开始之前,部署Kubernetes集群机器需要满足以下几个条件:
dnsmasq安装可参考我的另一篇 文章
ha1节点配置
ha2节点配置
在两台ha节点都执行
启动后查看ha的网卡信息(有一台可看到vip)
两台ha节点的配置均相同,配置中声明了后端代理的两个master节点服务器,指定了haproxy运行的端口为16443等,因此16443端口为集群的入口
两台ha都启动
检查端口
Kubernetes默认CRI(容器运行时)为Docker,因此先安装Docker。kubelet控制容器,kubeadm控制加入平面。
镜像加速
由于版本更新频繁,这里指定版本号部署:
在master1操作
按照提示配置环境变量,使用kubectl工具:
按照提示保存以下内容,一会要使用:
查看集群状态
从官方地址获取到flannel的yaml,在master1上执行
安装flannel网络
检查
从master1复制密钥及相关文件到master2
master3操作同上
执行在master1上init后输出的join命令,需要带上参数 --control-plane 表示把master控制节点加入集群
检查状态
在node1、2、3上执行
向集群添加新节点,执行在kubeadm init输出的kubeadm join命令:
检查状态
在Kubernetes集群中创建一个pod,验证是否正常运行:
访问地址: http://NodeIP:Port