Sealos 提供一套强大的工具,使得用户可以便利地管理整个集群的生命周期。
功能介绍
使用 Sealos,您可以安装一个不包含任何组件的裸 Kubernetes 集群。此外,Sealos 还可以在 Kubernetes 之上,通过集群镜像能力组装各种上层分布式应用,如数据库、消息队列等。
Sealos 不仅可以安装一个单节点的 Kubernetes 开发环境,还能构建数千节点的生产高可用集群。
Sealos 具有自由伸缩集群、备份恢复、释放集群等功能,即使在离线环境中,Sealos 也能提供出色的 Kubernetes 运行体验。
通过sealos CLI部署K8S集群
name | ip | 系统 | 配置 |
---|---|---|---|
k8s-master | 192.168.50.156 | Rockey8 | 4颗CPU 4G内存 |
k8s-node1 | 192.168.50.157 | Rockey8 | 4颗CPU 4G内存 |
k8s-node2 | 192.168.50.158 | Rockey8 | 4颗CPU 4G内存 |
master机器上配置hosts解析
192.168.50.156 k8s-master
192.168.50.157 k8s-node1
192.168.50.158 k8s-node2
copy到其他节点上
scp /etc/hosts 192.168.50.157:/etc/
scp /etc/hosts 192.168.50.158:/etc/
版本对应关系
集群镜像版本支持说明
支持 Containerd 的 K8s
推荐使用 Containerd 作为容器运行时 (CRI) 的集群镜像版本,Containerd 是一种轻量级、高性能的容
器运行时,与 Docker 兼容。使用 Containerd 的 Kubernetes 镜像可以提供更高的性能和资源利用率。
以下是支持 Containerd 的集群镜像版本支持说明:
K8s版本 | Sealos版本 | CR版本 | 集群镜像版本 |
---|---|---|---|
<1.25 | >=v4.0.0 | v1alpha2 | labring/kubernetes:v1.24.0 |
>=1.25 | >=v4.1.0 | v1alpha2 | labring/kubernetes:v1.25.0 |
>=1.26 | >=v4.1.4-rc3 | v1 | labring/kubernetes:v1.26.0 |
>=1.27 | >=v4.2.0-alpha3 | v1 | labring/kubernetes:v1.27.0 |
>=1.28 | >=v5.0.0 | v1 | labring/kubernetes:v1.28.0 |
根据 Kubernetes 版本的不同,您可以选择不同的 Sealos 版本和 CRI 版本。例如,如果您要使用
Kubernetes v1.26.0 版本,您可以选择 sealos v4.1.4-rc3 及更高版本,并使用 v1 CRI 版本。
支持 Docker 的 K8s
当然,你也可以选择使用 Docker 作为容器运行时,以下是支持 Docker 的集群镜像版本支持说明:
K8s版本 | Sealos版本 | CRI版本 | 集群镜像版本 |
---|---|---|---|
<1.25 | >=v4.0.0 | v1alpha2 | labring/kubernetes-docker:v1.24.0 |
>=1.25 | >=v4.1.0 | v1alpha2 | labring/kubernetes-docker:v1.25.0 |
>=1.26 | >=v4.1.4-rc3 | v1 | labring/kubernetes-docker:v1.26.0 |
>=1.27 | >=v4.2.0-alpha3 | v1 | labring/kubernetes-docker:v1.27.0 |
>=1.28 | >=v5.0.0 | v1 | labring/kubernetes-docker:v1.28.0 |
与支持 Containerd 的 Kubernetes 镜像类似,你可以根据 Kubernetes 版本的不同选择不同的 Sealos
版本和 CRI 版本。例如,如果您要使用 Kubernetes v1.26.0 版本,你可以选择 sealos v4.1.4-rc3 及更
高版本,并使用 v1 CRI 版本。
配置时间同步
yum install chrony -y
vim /etc/chrony.conf
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
pool 2.rocky.pool.ntp.org iburst
server ntp.aliyun.com iburst
#同步阿里云时间服务器
systemctl enable --now chronyd
systemctl start chronyd
#查看时钟源
chronyc sources
获取sealos cli工具
链接: github
下载该rpm包
以下操作均在master操作
下载lrzsz工具:
yum install lrzsz -y
将windos中下载完成的rpm包拖进家目录中
下载
[root@k8s-master01 ~]# yum install -y sealos_5.0.0_linux_amd64.rpm
使用sealos cli部署K8S集群
sealos run registry.cn-shanghai.aliyuncs.com/labring/kubernetes-docker:v1.28.9
registry.cn-shanghai.aliyuncs.com/labring/helm:v3.9.4 registry.cn-shanghai.aliyuncs.com/labring/calico:v3.24.1 \
--masters 192.168.50.156 \
--nodes 192.168.50.157,192.168.50.158 -p root
–masters 192.168.50.156 ##k8s master 节点地址列表
–nodes 192.168.50.157,192.168.50.158 ##k8s node 节点地址列表
–ssh-passwd [your-ssh-passwd] ##ssh 登录密码
kubernetes labring/kubernetes-docker:v1.28.9 ##k8s 集群镜像
在干净的服务器上直接执行上面命令,不要做任何多余操作即可安装一个高可用 K8s 集群。
注意:时间同步,kubernetes要求集群中的节点时间必须精确一致
安装成功查看集群状态
[root@k8s-master ~]# kubectl get node
NAME STATUS ROLES AGE VERSION
k8s-master Ready control-plane 55s v1.28.9
k8s-node1 Ready <none> 32s v1.28.9
k8s-node2 Ready <none> 33s v1.28.9
sealos相关命令
增加节点
1、增加 node 节点:
sealos add --nodes 192.168.50.159,XXX.XXX.XXX.XXX
2、增加 master 节点:
sealos add --masters 192.168.50.160,XXX.XXX.XXX.XXX
删除节点
1、删除 node 节点:
sealos delete --nodes 192.168.50.159,XXX.XXX.XXX.XXX
2、删除 master 节点:
sealos delete --masters 192.168.50.160,XXX.XXX.XXX.XXX
清理集群
$ sealos reset