《Kubernetes部署篇:基于x86_64+aarch64架构CPU+containerd一键离线部署容器版K8S1.35.0高可用集群》
《Kubernetes部署篇:基于x86_64+aarch64架构CPU+containerd一键离线部署容器版K8S1.35.0高可用集群》
总结:整理不易,如果对你有帮助,可否点赞关注一下?
更多详细内容请参考:企业级K8s集群运维实战
一、部署背景
基containerd的 Kubernetes 1.35.0集群离线部署工具——支持一键适配多客户环境,无需外网依赖,实现分钟级集群交付。 该工具完整展示了自动化部署脚本的设计思路,适合想深入了解K8S部署原理的开发者。点击下方链接获取工具包。
二、工具下载
基于x86_64+aarch64架构CPU+containerd一键离线部署容器版K8S1.35.0高可用集群工具
如下图所示:

主控脚本部分内容如下:
三、工具介绍
本工具提供基于 containerd 的 Kubernetes 1.35.0 集群一键离线部署能力,适配多种客户环境,具有以下核心特性:
1、多操作系统支持:兼容 Ubuntu 22.04 和 Ubuntu 24.04。
2、多架构支持:同时支持 X86_64 和 aarch64 架构。
3、灵活的部署模式: 单机模式、一主多从(单主 HA)、三主多从(高可用集群), 证书有效期长达 9 年,减少续期烦恼。
4、丰富的集群管理功能:: 一键部署、集群健康检查、集群一键移除。
5、弹性节点管理:支持对一主多从、三主多从集群中的 Worker 节点进行一键扩容与移除,轻松调整集群规模。
工具完全离线部署,不依赖外网,让 Kubernetes 集群交付更简单、更高效。
四、工具使用
说明:由于篇幅有限,这里以三主多从架构为例,像大家介绍K8S1.35.0高可用集群部署步骤!
1、查看帮助命令
如下图所示:
部署命令可参考如下:
a、单机部署
./kube_tools.sh deploy single-node
b、一主多从部署
# 1、master节点部署
./kube_tools.sh deploy one-master
# 2、worker节点部署
./kube_tools.sh deploy one-master --join-as-worker
c、三主多从部署
# 1、master节点部署
./kube_tools.sh deploy three-master
./kube_tools.sh deploy three-master --join-as-master
./kube_tools.sh deploy three-master --join-as-master
# 2、worker节点部署
./kubernetes_tools.sh deploy three-master --join-as-worker
4.1、部署第一个master节点
1、编辑变量文件
root@ecs-a899-0001:/opt/kubernetes-tools-v1.35.0# cp three-master.conf.tpl three-master.conf
root@ecs-a899-0001:/opt/kubernetes-tools-v1.35.0# vim three-master.conf
如下图所示:
2、执行部署
root@kube-master-241:/opt/kubernetes-tools-v1.35.0# ./kube_tools.sh deploy three-master
执行结果,如下图所示:


3、第一个master节点部署完成后,将部署包分别拷贝到其它master节点和worker节点。
root@kube-master-241:/opt# scp -r kubernetes-tools-v1.35.0 root@172.18.1.242:/opt
root@kube-master-241:/opt# scp -r kubernetes-tools-v1.35.0 root@172.18.1.243:/opt
root@kube-master-241:/opt# scp -r kubernetes-tools-v1.35.0 root@172.18.1.244:/opt
4.2、部署第二个master节点
说明:第二个master节点的部署只需要修改three-master.conf文件中的NODE_IP、NODE_NAME、LOCAL_API_SERVER_HOST_IP、``变量,其它变量无需修改。
1、修改three-master.conf文件
root@ecs-a899-0002:/opt/kubernetes-tools-v1.35.0# vim three-master.conf
如下图所示:
2、执行部署
root@ecs-a899-0002:/opt/kubernetes-tools-v1.35.0# ./kube_tools.sh deploy three-master --join-as-master
执行结果,如下图所示:


4.2、部署第三个master节点
说明:第三个master节点的部署只需要修改three-master.conf文件中的NODE_IP、NODE_NAME、LOCAL_API_SERVER_HOST_IP、``变量,其它变量无需修改。
1、修改three-master.conf文件
root@ecs-a899-0003:/opt/kubernetes-tools-v1.35.0# vim three-master.conf
如下图所示:
2、执行部署
root@ecs-a899-0003:/opt/kubernetes-tools-v1.35.0# ./kube_tools.sh deploy three-master --join-as-master
执行结果,如下图所示:


4.4、部署workerr节点
说明:依次类推,其它worker节点的部署只需要修改three-master.conf文件中的NODE_IP和NODE_NAME变量,LOCAL_API_SERVER_HOST_IP和LOCAL_API_SERVER_HOST_PORT这两个变量必须为空,无需填写,其它变量无需修改。
1、修改three-master.conf文件
root@ecs-a899-0004:/opt/kubernetes-tools-v1.35.0# vim three-master.conf
如下图所示:
2、执行部署
root@ecs-a899-0004:/opt/kubernetes-tools-v1.35.0# ./kube_tools.sh deploy three-master --join-as-worker
执行结果,如下图所示:

3、重启k8s主机
说明:集群部署完后,无论是master节点还是worker节点均需重启。
reboot
5、集群功能测试
1、检查集群状态
如下图所示:
2、检查证书有效时间
root@kube-master-241:/opt/kubernetes-tools-v1.35.0# kubeadm certs check-expiration
如下图所示:
3、集群DNS测试
说明:worker节点导入测试容器镜像。
1、worker节点导入测试容器镜像
root@ecs-a899-0004:/opt/kubernetes-tools-v1.35.0/test/x86_64# ./load_images.sh
2、master节点执行如下命令,这里默认在kube-master-241节点
root@kube-master-241:/opt/kubernetes-tools-v1.35.0# kubectl run busybox --image busybox:1.34 --restart=Never --rm -it busybox -- sh
如下图所示:
4、集群功能测试
说明:master节点执行如下命令,这里默认在k8s-master-58节点
root@kube-master-241:/opt/kubernetes-tools-v1.35.0/test/x86_64# kubectl apply -f nginx.yaml
如下图所示:
在浏览器上访问Nginx,如下所示:
总结:整理不易,如果对你有帮助,可否点赞关注一下?
更多详细内容请参考:企业级K8s集群运维实战
更多推荐

所有评论(0)