使用sealoas快速拉起简易集群

发布于:2025-08-12 ⋅ 阅读:(18) ⋅ 点赞:(0)

环境:

sealoas官网:https://sealos.run/docs/k8s/quick-start/deploy-kubernetes
服务器系统 : Ubuntu2404
集群规模:单节点集群

步骤一,准备机器环境

1.基础环境

同步机器时间, 多台机器配置互相免密,关闭防火墙,selinux,swap分区,对机器进行初始优化

2.安装依赖软件

# Ubuntu/Debian
apt update && apt install -y curl jq ebtables socat iptables
# CentOS/Rocky
yum update && yum install -y curl jq ebtables socat iptables

3.配置本地解析

hostnamectl set-hostname master01  # 分别设置各节点主机名
root@ubuntu:~# cat /etc/hosts
127.0.0.1 localhost
192.168.31.139 master01

4.卸载docker/containerd(如果没有安装可跳至步骤二)

1.卸载containerd

# 停止服务
systemctl stop containerd
 
# 卸载 containerd
apt-get purge -y containerd.io
 
# 清理残留配置
rm -rf /etc/containerd /var/lib/containerd
rm /usr/bin/containerd
 
ps -ef|grep -i contain
#kill掉进程

2.卸载docker

systemctl stop docker.socket docker.service
 
apt-get purge -y docker-ce docker-ce-cli containerd.io  docker-buildx-plugin  docker-compose-plugin
 
apt-get autoremove -y --purge
 
sudo rm -rf /var/lib/docker  # 容器、镜像和卷数据
sudo rm -rf /var/lib/containerd  # containerd 运行时数据
sudo rm -rf /etc/docker  # 配置文件目录
sudo rm -f /var/run/docker.sock  # 套接字文件
rm /usr/bin/docker

步骤二,安装sealoas

获取版本列表
curl --silent "https://api.github.com/repos/labring/sealos/releases" | jq -r '.[].tag_name'

# 下载最新版(以 v5.0.1 amd64 为例)
wget https://github.com/labring/sealos/releases/download/v5.0.1/sealos_5.0.1_linux_amd64.tar.gz
# 解压并安装到系统路径
tar zxvf sealos_5.0.1_linux_amd64.tar.gz
chmod +x sealos && mv sealos /usr/bin

步骤三:部署k8s

单节点k8s

sealos run registry.cn-shanghai.aliyuncs.com/labring/kubernetes:v1.29.9 \
	registry.cn-shanghai.aliyuncs.com/labring/helm:v3.9.4 \
	registry.cn-shanghai.aliyuncs.com/labring/cilium:v1.13.4 \
	--single
注意​:--single 参数表示单节点模式,默认使用 Containerd 运行时和 Calico/Clilum CNI 网络插件。

K8s集群

sealos run registry.cn-shanghai.aliyuncs.com/labring/kubernetes:v1.29.9 registry.cn-shanghai.aliyuncs.com/labring/helm:v3.9.4 registry.cn-shanghai.aliyuncs.com/labring/cilium:v1.13.4 \
     --masters 192.168.31.139,192.168.31.140,192.168.31.141 \
     --nodes 192.168.31.146,192.168.31.145 \
     -p [your-ssh-passwd]
注意:labring/helm 应当在 labring/cilium 之前。
在干净的服务器上直接执行上面命令,不要做任何多余操作即可安装一个高可用 K8s 集群。
参数名 参数值 参数说明
master 192.168.31.139 k8s master节点地址列表
nodes 192.168.31.145 k8snode节点地址列表
–ssh-passwd [your-ssh-passwd] ssh 登录密码

增加 K8s 节点

增加 master 节点:

sealos add --masters 192.168.31.152,192.168.31.153 

增加 node 节点:

sealos add --nodes 192.168.31.159,192.168.31.158

删除 K8s 节点

删除 master 节点:

sealos delete --masters 192.168.31.152,192.168.31.153

删除 node 节点:

sealos delete --nodes 192.168.31.159,192.168.31.158 

清理 K8s 集群

重置 Kubernetes 集群
sealos reset 
sealos reset --force 
删除残留
rm -rf /etc/kubernetes  # 集群配置文件
rm -rf /var/lib/kubelet  # kubelet 数据
rm -rf /var/lib/etcd 

常见问题

使用sealoas快速拉区单节点集群后cni无法正常启动
拉区单节点集群后cni无法正常启动,查看是否因为yaml文件内自动识别的网卡与本本机网卡不一致

查看默认识别的网卡名
root@ubuntu:~# kubectl  -n calico-system get Installation default -o yaml |grep interface
      interface: bond.*|eth.*|en.*
        interface: bond.*|eth.*|en.*

如果因为网卡名与本机不一致需要进行修改      
root@ubuntu:~# kubectl  -n calico-system edit Installation default   
查询“interface”字段
根据自己设备网卡名进行修改
root@ubuntu:~# kubectl  -n calico-system get Installation default -o yaml |grep interface
      interface: bond.*|eth.*|en.*|w*|e*
        interface: bond.*|eth.*|en.*|w*|e*