快速安装K8s集群-Sealos
- November 1, 2023
摘要
lomtom
在日常的开发和运维工作中,如果你需要快速搭建一个 Kubernetes 集群,但又不能使用容器云管理平台来轻松创建集群,手动搭建 Kubernetes 集群可能会变得非常繁琐。尤其是当你只需要一个用于测试和验证的集群,对于集群的稳定性要求不是很高时,你可以考虑使用 Sealos 来快速搭建一个可用的 Kubernetes 集群。
安装Sealos
Sealos 是一个用 Go 语言编写的二进制工具,你可以直接下载并复制到系统的 bin
目录中使用。你也可以从 release 页面 🔗 下载它。截止到目前(2023-11-1),Sealos
的最新稳定版本为 v4.3.7
,以下以安装版本 v4.3.7
为例。
首先,在 Master 机器中的一台机器上安装 Sealos,安装方法有多种,但这里我们选择使用官方预编译的二进制文件。
wget https://github.com/labring/sealos/releases/download/v4.3.7/sealos_4.3.7_linux_amd64.tar.gz \
&& tar -zxvf sealos_4.3.7_linux_amd64.tar.gz sealos && chmod +x sealos && mv sealos /usr/bin
然后,输入 sealos version
进行验证:
➜ ~ sealos version
SealosVersion:
buildDate: "2023-10-30T16:19:05Z"
compiler: gc
gitCommit: f39b2339
gitVersion: 4.3.7
goVersion: go1.20.10
platform: linux/amd64
更多的安装方法可以参考官方文档 🔗。
安装K8s集群
使用 Sealos 安装 Kubernetes 变得异常简单,只需要准备好目标机器,并且支持大多数 Linux 发行版,因此你不必担心操作系统的不兼容性问题。
以最新的 Kubernetes 版本 v1.27
为例,如果你想要创建一个包括三台 Master 节点和六台 Node 节点的集群,只需要一条命令:
sealos run labring/kubernetes:v1.27.0 labring/helm:v3.8.2 labring/calico:v3.24.1 \
--masters 10.137.200.01,10.137.200.02,10.137.200.03\
--nodes 10.137.200.04,10.137.200.05,10.137.200.06,10.137.200.07,10.137.200.08,10.137.200.09 \
-p [your-ssh-passwd]
# 国内用户
sealos run registry.cn-shanghai.aliyuncs.com/labring/kubernetes:v1.27.0 registry.cn-shanghai.aliyuncs.com/labring/helm:v3.8.2 registry.cn-shanghai.aliyuncs.com/labring/calico:v3.24.1 \
--masters 10.137.200.01,10.137.200.02,10.137.200.03\
--nodes 10.137.200.04,10.137.200.05,10.137.200.06,10.137.200.07,10.137.200.08,10.137.200.09 \
-p [your-ssh-passwd]
--masters
:Kubernetes Master 节点地址列表--nodes
:Kubernetes Node 节点地址列表-p
:SSH 登录密码
执行以上命令,稍等几分钟,当出现以下日志输出时代表集群已经安装完成:
2023-11-01T12:16:46 info succeeded in creating a new cluster, enjoy it!
2023-11-01T12:16:46 info
___ ___ ___ ___ ___ ___
/\ \ /\ \ /\ \ /\__\ /\ \ /\ \
/::\ \ /::\ \ /::\ \ /:/ / /::\ \ /::\ \
/:/\ \ \ /:/\:\ \ /:/\:\ \ /:/ / /:/\:\ \ /:/\ \ \
_\:\~\ \ \ /::\~\:\ \ /::\~\:\ \ /:/ / /:/ \:\ \ _\:\~\ \ \
/\ \:\ \ \__\ /:/\:\ \:\__\ /:/\:\ \:\__\ /:/__/ /:/__/ \:\__\ /\ \:\ \ \__\
\:\ \:\ \/__/ \:\~\:\ \/__/ \/__\:\/:/ / \:\ \ \:\ \ /:/ / \:\ \:\ \/__/
\:\ \:\__\ \:\ \:\__\ \::/ / \:\ \ \:\ /:/ / \:\ \:\__\
\:\/:/ / \:\ \/__/ /:/ / \:\ \ \:\/:/ / \:\/:/ /
\::/ / \:\__\ /:/ / \:\__\ \::/ / \::/ /
\/__/ \/__/ \/__/ \/__/ \/__/ \/__/
Website: https://www.sealos.io/
Address: github.com/labring/sealos
Version: 4.3.7-f39b2339
添加证书
在安装集群之后,如果需要为其他的IP或者域名添加证书,可以使用 sealos cert
命令:
sealos cert --alt-names=[your-ip]
验证集群
随后,你可以使用 kubectl get node
命令来查看集群的状态:
➜ ~ kubectl get node
NAME STATUS ROLES AGE VERSION
user-cluster-0001 Ready control-plane 104s v1.27.0
user-cluster-0002 Ready control-plane 32s v1.27.0
user-cluster-0003 Ready control-plane 66s v1.27.0
user-cluster-0004 Ready <none> 68s v1.27.0
user-cluster-0005 Ready <none> 88s v1.27.0
user-cluster-0006 Ready <none> 78s v1.27.0
user-cluster-0007 Ready <none> 69s v1.27.0
user-cluster-0008 Ready <none> 75s v1.27.0
user-cluster-0009 Ready <none> 67s v1.27.0
更多操作方法,例如添加节点、删除节点、离线安装见官方文档 🔗