使用Sealos快速部署Kubernetes集群,支持在线和离线安装,适用于amd64和arm64架构。轻松管理节点,安装分布式应用,支持Containerd和Docker运行时。 官方文档:https://sealos.run/docs/k8s/quick-start/install-cli
一、Sealos 下载
- 文档地址:https://sealos.run/docs/k8s/quick-start/install-cli
- 按照上面的文档下载sealos的二进制可执行文件
wget https://github.com/labring/sealos/releases/download/v5.1.1/sealos_5.1.1_linux_amd64.tar.gz wget https://github.com/labring/sealos/releases/download/v5.1.1/sealos_5.1.1_linux_arm64.tar.gz - 并将sealos二进制文件copy到系统可执行文件目录下,如:/usr/bin/
二、准备离线包
这里使用docker作为K8S容器运行时,官网提供可支持docker作为容器运行时的具体k8s版本
https://sealos.run/docs/k8s/quick-start/deploy-kubernetes#%E6%94%AF%E6%8C%81-docker-%E7%9A%84-k8s

准备kubernetes离线包以及网络插件离线包
- k8s离线包
sealos pull registry.cn-shanghai.aliyuncs.com/labring/kubernetes-docker:v1.26.0 sealos save -o kubernetes-v1.26.0.tar registry.cn-shanghai.aliyuncs.com/labring/kubernetes-docker:v1.26.0 - cilium网络插件离线包
sealos pull registry.cn-shanghai.aliyuncs.com/labring/cilium:v1.13.4 sealos save -o cilium-v1.13.4.tar registry.cn-shanghai.aliyuncs.com/labring/cilium:v1.13.4
三、开始部署
部署环境说明
- 每个集群节点应该有不同的主机名。主机名不要带下划线。
- 所有节点的时间需要同步。
- 需要在 K8s 集群的第一个 master 节点上运行
sealos run命令,目前集群外的节点不支持集群安装。 - 建议使用干净的操作系统来创建集群。不要自己装 Docker!
- 支持大多数 Linux 发行版,例如:Ubuntu、CentOS、Rocky linux。
- 支持 Docker Hub 中的所有 Kubernetes 版本。
- 支持使用 Containerd 作为容器运行时。
- 在公有云上安装请使用私有 IP。
3.1 拷贝部署包
- sealos (二进制可执行文件)
- kubernetes-v1.26.0.tar(k8s部署包)
- cilium-v1.13.4.tar(网络插件)
3.2 Load部署包
sealos load -i kubernetes-v1.26.0.tar
sealos load -i cilium-v1.13.4.tar
3.3 开始部署
sealos run registry.cn-shanghai.aliyuncs.com/labring/kubernetes-docker:v1.26.0 registry.cn-shanghai.aliyuncs.com/labring/cilium:v1.13.4 --masters 10.23.8.250 --nodes 10.23.8.251 -p 'ssh密码' --env criData=/u01/docker
参数说明:
-masters K8s master 节点地址列表
--nodes K8s node 节点地址列表|
--ssh-passwd ssh 登录密码
registry.cn-shanghai.aliyuncs.com/labring/kubernetes-docker:v1.26.0 K8s 集群镜像
registry.cn-shanghai.aliyuncs.com/labring/cilium:v1.13.4 网络插件镜像
--env criData=/u01/docker 指定docker数据目录

四、高级配置
4.1 修改
修改集群参数。sealos修改参数采用修改配置文件的形式进行修改。如修改podcidr,nodeport端口范围等。具体配置文件生成方式:将3.3中命令的run修改为gen
sealos gen registry.cn-shanghai.aliyuncs.com/labring/kubernetes-docker:v1.26.0 registry.cn-shanghai.aliyuncs.com/labring/cilium:v1.13.4 --masters 10.23.8.250 --nodes 10.23.8.251 -p 'ssh密码' --env criData=/u01/docker
该命令会输出集群的配置,复制修改相关内容 如修改nodeport端口范围,podcir的等:
apiVersion: kubeadm.k8s.io/v1beta2
kind: ClusterConfiguration
networking:
podSubnet: 10.100.0.0/16 # 这里也要与你上面修改的 PodCIDR 保持一致
serviceSubnet: 10.96.0.0/12
apiServer:
extraArgs:
service-node-port-range: "1-32767" # <--- 在这里添加,设置你想要的端口范围
3.2 执行安装
修改完毕执行安装即可
sealos apply -f Clusterfile
# Clusterfile为配置文件保存的名称,可以自订
五、更换网络插件
sealos默认的网络插件为cilium.,如使用其他插件,部署前不指定cilium镜像即可
sealos run registry.cn-shanghai.aliyuncs.com/labring/kubernetes-docker:v1.26.0 --masters 10.23.8.250 --nodes 10.23.8.251 -p 'ssh密码' --env criData=/u01/docker
六、添加删除节点
6.1 添加删除master
sealos add --masters 192.168.64.21,192.168.64.19
sealos delete --masters 192.168.64.21,192.168.64.19
6.2 添加node
sealos add --nodes 192.168.64.21,192.168.64.19
sealos delete --nodes 192.168.64.21,192.168.64.19
七、清理集群
sealos reset
