使用Sealos离线安装K8S

使用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 Pasted image 20260319121353.png

准备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数据目录 Pasted image 20260319123816.png

四、高级配置

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

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

Captcha Code