

基于SealOS部署高可用的kubernetes集群
基于SealOS来部署高可用的kubernetes集群
views
| comments
配套Bilibili视频已经更新:点我观看 ↗
准备SealOS#
机器信息如下:
服务器名称 | IP | Role |
---|---|---|
ready-kubernetes-master1 | 10.1.11.100 | Control-Plane |
ready-kubernetes-master2 | 10.1.11.101 | Control-Plane |
ready-kubernetes-master3 | 10.1.11.102 | Control-Plane |
ready-kubernetes-node1 | 10.1.11.103 | Node |
ready-kubernetes-node2 | 10.1.11.104 | Node |
ready-kubernetes-node3 | 10.1.11.105 | Node |
通过SealOS部署的前提条件#
- 获取当前稳定版本的
SealOS
列表
# 获取非beta版本
curl --silent "https://api.github.com/repos/labring/sealos/releases" | jq -r 'map(select(.tag_name | test("beta"; "i") | not)) | .[].tag_name'
bash- 下载最新稳定版本的
SealOS
,版本号为v4.3.7
# 在一台主机上执行就行了
VERSION=v4.3.7
wget https://mirror.ghproxy.com/https://github.com/labring/sealos/releases/download/${VERSION}/sealos_${VERSION#v}_linux_amd64.tar.gz \
&& tar zxvf sealos_${VERSION#v}_linux_amd64.tar.gz sealos && chmod +x sealos && mv sealos /usr/bin
bash- 验证
SealOS
是否安装完成
[root@localhost ~]# sealos version
SealosVersion:
buildDate: "2023-10-30T16:19:05Z"
compiler: gc
gitCommit: f39b2339
gitVersion: 4.3.7
goVersion: go1.20.10
platform: linux/amd64
bash正常能显示出来版本号信息就表示安装正常。
快速部署高可用集群#
- 默认使用的容器运行时为
Containerd
- 开始使用
sealOS
来部署多节点集群
sealos run registry.cn-shanghai.aliyuncs.com/labring/kubernetes:v1.27.7 registry.cn-shanghai.aliyuncs.com/labring/helm:v3.9.4 registry.cn-shanghai.aliyuncs.com/labring/cilium:v1.13.4 \
--masters 10.1.11.100,10.1.11.101,10.1.11.102 \
--nodes 10.1.11.103,10.1.11.104,10.1.11.105 -p 123..com
bash--masters
: kubernetes-master的节点地址列表--nodes
: kubernetes-node的节点地址列表-p
: 远程主机的SSH登录密码
- 检查是否安装成功 出现如下内容表示安装成功
2024-04-11T15:20:01 info Executing pipeline RunGuest in CreateProcessor.
ℹ️ Using Cilium version 1.13.4
🔮 Auto-detected cluster name: kubernetes
🔮 Auto-detected datapath mode: tunnel
🔮 Auto-detected kube-proxy has been installed
2024-04-11T15:20:03 info succeeded in creating a new cluster, enjoy it!
2024-04-11T15:20:03 info
___ ___ ___ ___ ___ ___
/\ \ /\ \ /\ \ /\__\ /\ \ /\ \
/::\ \ /::\ \ /::\ \ /:/ / /::\ \ /::\ \
/:/\ \ \ /:/\:\ \ /:/\:\ \ /:/ / /:/\:\ \ /:/\ \ \
_\:\~\ \ \ /::\~\:\ \ /::\~\:\ \ /:/ / /:/ \:\ \ _\:\~\ \ \
/\ \:\ \ \__\ /:/\:\ \:\__\ /:/\:\ \:\__\ /:/__/ /:/__/ \:\__\ /\ \:\ \ \__\
\:\ \:\ \/__/ \:\~\:\ \/__/ \/__\:\/:/ / \:\ \ \:\ \ /:/ / \:\ \:\ \/__/
\:\ \:\__\ \:\ \:\__\ \::/ / \:\ \ \:\ /:/ / \:\ \:\__\
\:\/:/ / \:\ \/__/ /:/ / \:\ \ \:\/:/ / \:\/:/ /
\::/ / \:\__\ /:/ / \:\__\ \::/ / \::/ /
\/__/ \/__/ \/__/ \/__/ \/__/ \/__/
Website: https://www.sealos.io/
Address: github.com/labring/sealos
Version: 4.3.7-f39b2339
bash- 简单的验证一下
kubernetes
工作是否正常
[root@ready-kubernetes-master1 ~]# kubectl get nodes
NAME STATUS ROLES AGE VERSION
ready-kubernetes-master1 Ready control-plane 5m26s v1.27.7
ready-kubernetes-master2 Ready control-plane 4m50s v1.27.7
ready-kubernetes-master3 Ready control-plane 4m v1.27.7
ready-kubernetes-node1 Ready <none> 3m48s v1.27.7
ready-kubernetes-node2 Ready <none> 3m47s v1.27.7
ready-kubernetes-node3 Ready <none> 3m49s v1.27.7
bash