Sealos 使用手册:一条命令搞定 Kubernetes 集群部署

一、背景:为什么需要 Sealos?

Kubernetes(K8s)已成为容器编排的事实标准,但其部署复杂度一直让很多人头疼。各组件之间的依赖关系、证书配置、高可用架构搭建等,对新用户来说门槛不低。为了应对这一现状,Sealos 应运而生。

Sealos 是一个基于 Golang 开发的轻量级 K8s 集群部署工具,由国人开发并开源。它基于 kubeadm 进行了封装和优化,以一条 sealos run 命令即可完成集群初始化,大幅降低了 Kubernetes 的部署门槛,实现“开箱即用”的体验。Sealos 是一款基于 Kubernetes 构建的云操作系统,也是一站式云原生操作平台,不仅能一键部署 K8s 集群,还能支持云应用打包分发、离线镜像管理、存储网络自动化部署等能力。

二、Sealos 的核心优势

在开始部署之前,先来了解为什么选择 Sealos:

  • 一键部署:一条 sealos run 命令就能完成完整 Kubernetes 集群的部署,无需手动安装 kubeadm、kubelet、etcd 等组件,5 分钟即可完成高可用集群搭建
  • 证书有效期长:修改了 kubeadm 源码,默认证书有效期延长至 99 年,彻底解决了证书续期的烦恼。
  • 国内镜像优化:Sealos 将所需的集群镜像同步到了阿里云上海地域的镜像仓库registry.cn-shanghai.aliyuncs.com/labring),国内用户无需翻墙即可稳定拉取,这也是 Sealos 区别于很多国外部署工具的一大优势。
  • 支持离线安装:工具与部署资源包分离,下载离线包后可在无公网环境完成集群部署,适用于对网络有限制的生产环境。
  • 跨平台与高可用:支持 amd64 和 arm64 架构,原生支持多节点高可用集群,通过内核 IPVS 实现本地负载均衡,稳定可靠。

三、环境准备

本节参考 Sealos 官方文档的环境要求。

3.1 硬件与操作系统要求

  • 至少 1 台 Linux 服务器(推荐 Ubuntu 20.04+、CentOS 7+ 或 Rocky Linux)
  • 各节点需分配不同主机名,主机名中不要包含下划线
  • 所有节点系统时间需同步(使用 NTP 或 chrony)
  • 服务器需开放关键端口:22(SSH)、6443(K8s API Server)、10250
  • 建议使用干净的操作系统来创建集群,不要在节点上预先安装 Docker 或其他容器运行时——Sealos 会自行安装并配置正确的容器运行时
  • 在公有云(阿里云、腾讯云等)环境中安装时,请使用节点的私有 IP 进行配置

3.2 节点规划示例

主机名IP 地址配置角色系统
master110.206.0.102C4GmasterRocky Linux 9
master210.206.0.172C4GmasterRocky Linux 9
master310.206.0.112C4GmasterRocky Linux 9
worker110.206.0.152C4GworkerRocky Linux 9

3.3 网络互通要求

  • 各节点间需通过 SSH 互通,可使用密码登录或配置密钥认证
  • 如需在公有云环境安装,请确保安全组开放上述端口

四、安装 Sealos 命令行工具

建议在 K8s 集群的第一台 master 节点上安装并执行初始化命令。

4.1 通过脚本自动安装

国内用户推荐使用代理加速下载(由于 GitHub 在国内访问受限,提前配置代理可大幅提升下载成功率):

export PROXY_PREFIX=https://ghfast.top
curl -sfL ${PROXY_PREFIX}/https://raw.githubusercontent.com/labring/sealos/main/scripts/install.sh | PROXY_PREFIX=${PROXY_PREFIX} sh -s v5.0.1 labring/sealos

安装完成后,验证版本:

sealos version

4.2 手动下载安装(适用于 GitHub 访问受限场景)

访问 GitHub Releases 获取对应版本的 Linux amd64 压缩包,上传服务器后执行:

tar zxvf sealos_5.0.1_linux_amd64.tar.gz
chmod +x sealos
mv sealos /usr/local/bin/

五、快速部署 Kubernetes 集群

5.1 单节点集群(适合测试环境)

如果想快速搭建一个单节点的 Kubernetes 集群用于开发测试,可直接执行以下命令(注意:--masters 中填写 master 节点的内网 IP 和 SSH 登录密码):

sealos run \
  --masters 192.168.0.2 \
  --ssh-passwd your-ssh-password \
  labring/kubernetes:v1.29.9

这里的 v1.29.9 是官方建议使用的 K8s 版本号,执行完成后单节点 K8s 集群即可投入使用。K8s 版本建议:小版本号越高集群越稳定。截至本文写作时,v1.29 最高版本号为 v1.29.9,v1.30 最高版本号为 v1.30.5,因此推荐使用 v1.29.9。

5.2 高可用集群(生产环境推荐)

在生产环境中,建议至少部署 3 个 master 节点以实现高可用。以下示例假设 3 个 master1 个 worker,请根据实际 IP 地址进行替换:

sealos run \
  --masters 10.206.0.10,10.206.0.17,10.206.0.11 \
  --nodes 10.206.0.15 \
  --ssh-passwd your-ssh-password \
  labring/kubernetes:v1.29.9

执行后,Sealos 自动完成以下工作:

  • 检查各节点系统环境
  • 分发集群镜像到所有节点
  • 初始化第一个 master 节点
  • 将其它 master 节点加入集群
  • 将 worker 节点加入集群
  • 配置高可用负载均衡(基于内核 IPVS)

集群安装成功后,sealos run 命令会保存一份 Clusterfile 到本地,便于后续追溯和重新应用。也可以先通过 sealos gen 命令生成 Clusterfile 配置文件,再使用 sealos apply 进行部署——这种方法更适合需要定制集群配置的场景,便于版本管理与团队协作。

5.3 关于集群镜像

Sealos 将 Kubernetes 及其依赖组件封装为集群镜像(Cluster Image),所有镜像均可在 Docker Hub labring 仓库 或阿里云镜像仓库(registry.cn-shanghai.aliyuncs.com/labring/kubernetes)查看。使用 Registry Explorer 等工具可以查询不同版本的 Kubernetes 集群镜像。除集群镜像外,Sealos 还提供 Helm、Cilium、Minio 等常用组件的独立镜像,可通过 sealos run 一条命令完成安装。

六、日常运维管理

6.1 增加节点

增加新的 worker 节点:

sealos add --nodes 192.168.0.4 --ssh-passwd your-ssh-password

增加新的 master 节点:

sealos add --masters 192.168.0.5 --ssh-passwd your-ssh-password

6.2 删除节点

删除 worker 节点:

sealos delete --nodes 192.168.0.4 --ssh-passwd your-ssh-password

删除 master 节点:

sealos delete --masters 192.168.0.5 --ssh-passwd your-ssh-password

6.3 清理整个集群

如果需要完全销毁集群并清理所有相关数据:

sealos reset

七、安装分布式应用

Sealos 的优势不仅限于部署 K8s 集群,基于集群镜像机制,还可以一键安装各类分布式应用。例如安装 Minio(对象存储):

sealos run labring/minio:latest

Sealos 会自动处理所有依赖关系、镜像分发和配置管理,整个过程对用户透明。类似地,Prometheus、Cilium、Helm 等常见组件也都可以通过 Sealos 镜像一键部署。

八、常见问题与注意事项

Q1:国内环境安装失败怎么办?

建议使用阿里云镜像源进行安装。Sealos 官方已在阿里云上海地域维护了完整的镜像仓库(registry.cn-shanghai.aliyuncs.com/labring),部署 Kubernetes 所需的所有基础镜像均可通过该仓库获取,可完全规避 DockerHub 的访问限制问题。即在 sealos run 命令中指定阿里云镜像仓库地址即可。

Q2:节点 SSH 连接失败

  • 确保所有节点的 SSH 服务正常运行(systemctl status sshd
  • 检查节点间网络连通性
  • 确认 SSH 登录密码正确,或配置好密钥认证

Q3:主机名不规范导致安装失败

请确保各节点主机名唯一且不包含下划线。可使用 hostnamectl set-hostname 修改后重启节点。

Q4:时间不同步

建议在所有节点安装并配置 NTP 服务(如 chrony),确保节点时间差在合理范围内。

Q5:公有云环境如何安装?

在公有云安装时,--masters--nodes 参数中应填写节点的私有 IP,而非公网 IP。同时需确保安全组已放通相关端口。

Q6:节点上是否预先安装了 Docker 或其他容器运行时?

Sealos 官方文档特别建议使用干净的操作系统安装集群,不要在节点上提前安装 Docker 或其他容器运行时,Sealos 会自动安装并配置合适的运行时(如 containerd),预先安装反而会导致脚本执行出错。

九、小结与总结

Sealos 最大的价值在于大幅降低了 Kubernetes 的使用门槛,它将原本复杂的集群部署过程压缩到一条命令之内,让开发者和运维人员能够把精力聚焦在核心业务上,而非陷入集群部署的繁琐细节中。

从社区反馈来看,Sealos 对国内用户尤其友好——无需翻墙、镜像源稳定、离线部署能力完备,5 分钟即可完成一套高可用 K8s 集群的搭建,无论是测试环境还是正式生产环境均可胜任。当然,任何工具都不是万能的,如果你的使用场景有非常特殊的需求(如严格的内网安全管控或超大规模集群编排),仍建议结合官方工具链制定更精细化的部署方案。

最后附上 Sealos 官方文档地址供进一步参考:Sealos K8s 部署文档。如果部署过程中遇到问题,也欢迎在评论区留言交流。希望本文能帮助你更高效地管理 Kubernetes 集群。

正文到此结束
  • 本文作者:xinyu.he
  • 文章标题:Sealos :一条命令搞定 Kubernetes 集群部署
  • 本文地址:https://www.hxy.bj.cn/archives/820/
  • 版权说明:若无注明,本文皆Xinyu.he blog原创,转载请保留文章出处。
最后修改:2026 年 05 月 27 日
如果觉得我的文章对你有用,请随意赞赏