使用Sealos 命令行工具快速构建Kubernetes

Sealos 介绍

Sealos是一个以Kubernetes为内核的云操作系统,提供高效、安全、低成本的云原生一站式开发与运维能力‌。该平台通过重构传统云计算架构,实现开发、测试、生产环境的无缝集成,支持弹性扩展、多租户隔离和团队协作等企业级功能

下载 Sealos 命令行工具

Sealos命令行工具快速部署Kubernetes集群,支持在线和离线安装,适用于amd64和arm64架构。轻松管理节点,安装分布式应用,支持Containerd和Docker运行时。

以下是一些基本的安装要求:

  • 每个集群节点应该有不同的主机名。主机名不要带下划线。
  • 所有节点的时间需要同步。
  • 需要在 K8s 集群的第一个 master 节点上运行 sealos run 命令,目前集群外的节点不支持集群安装。
  • 建议使用干净的操作系统来创建集群。不要自己装 Docker!
  • 支持大多数 Linux 发行版,例如:Ubuntu、CentOS、Rocky linux。
  • 支持 Docker Hub 中的所有 Kubernetes 版本。
  • 支持使用 Containerd 作为容器运行时。
  • 在公有云上安装请使用私有 IP。

首先我们查看当前Sealos版本号

  1. root@abcdocker:~# curl --silent "https://api.github.com/repos/labring/sealos/releases" | jq -r '.[].tag_name'
  2. v5.0.1
  3. v5.0.1-beta3
  4. v5.0.1-beta2
  5. v5.0.0
  6. v5.0.0-beta5
  7. v5.0.0-beta4
  8. v4.4.0-beta3
  9. v5.0.0-beta3
  10. v5.0.0-beta2
  11. v5.0.0-beta1
  12. v4.3.7
  13. v5.0.0-alpha2
  14. v4.3.7-rc1
  15. v4.3.6
  16. v4.4.0-beta2
  17. v4.4.0-beta1
  18. v4.3.5
  19. v4.3.4
  20. v4.4.0-alpha3
  21. v4.4.0-alpha1
  22. v4.3.3
  23. v4.3.2
  24. v4.3.1
  25. v4.3.1-rc2
  26. v4.3.1-rc1
  27. v4.3.0
  28. v4.3.0-rc1
  29. v4.2.3
  30. v4.2.2
  31. v5.0.0-alpha1

目前我们最新版本为v5.0.1,我们以为v5.0.1版本为主

下载Sealos工具

  1. #设置国内代理
  2. export PROXY_PREFIX=https://ghfast.top
  3. #版本手动修改为v5.0.1
  4. curl -sfL ${PROXY_PREFIX}/https://raw.githubusercontent.com/labring/sealos/main/scripts/install.sh | PROXY_PREFIX=${PROXY_PREFIX} sh -s v5.0.1 labring/sealos

使用Sealos 命令行工具快速构建Kubernetes

安装完毕可以查看版本号

  1. root@abcdocker:~# sealos version
  2. SealosVersion:
  3. buildDate: "2024-10-09T02:18:27Z"
  4. compiler: gc
  5. gitCommit: 2b74a1281
  6. gitVersion: 5.0.1
  7. goVersion: go1.20.14
  8. platform: linux/amd64

Kubernetes 节点安装

首先我们规划好IP及主机名

IP 主机名 节点
192.168.21.10 k8s-master-01 master
192.168.21.11 k8s-master-02 master
192.168.21.12 k8s-master-03 master
192.168.21.13 k8s-node-01 node
192.168.21.14 k8s-node-02 node
192.168.21.15 k8s-node-03 node

每台节点设置host域名解析

  1. cat >>/etc/hosts<<EOF
  2. 192.168.21.10 k8s-master-01
  3. 192.168.21.11 k8s-master-02
  4. 192.168.21.12 k8s-master-03
  5. 192.168.21.13 k8s-node-01
  6. 192.168.21.14 k8s-node-02
  7. 192.168.21.15 k8s-node-03
  8. EOF

每台节点设置时间同步

  1. timedatectl set-timezone Asia/Shanghai
  2. #将当前的 UTC 时间写入硬件时钟
  3. timedatectl set-local-rtc 0

所有节点还需要安装iptables

  1. apt-get install -y iptables

使用sealos安装k8s 1.29.9

  • --masters节点IP 192.168.21.10,192.168.21.11,192.168.21.12
  • --nodes节点IP 192.168.21.13,192.168.21.14,192.168.21.15
  • -p密码

其它默认即可

  1. 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 \
  2. --masters 192.168.21.10,192.168.21.11,192.168.21.12 \
  3. --nodes 192.168.21.13,192.168.21.14,192.168.21.15 -p 123456

使用Sealos 命令行工具快速构建Kubernetes

等待下载完毕
使用Sealos 命令行工具快速构建Kubernetes

已安装Pod如下

  1. root@k8s-master-01:~# kubectl get pod --all-namespaces
  2. NAMESPACE NAME READY STATUS RESTARTS AGE
  3. kube-system cilium-27j42 1/1 Running 0 7m
  4. kube-system cilium-8v2q4 1/1 Running 0 7m
  5. kube-system cilium-hvzmr 1/1 Running 0 7m
  6. kube-system cilium-operator-6946ccbcc5-rp8hz 1/1 Running 0 7m
  7. kube-system cilium-t9b5n 1/1 Running 0 7m
  8. kube-system cilium-w5fc7 1/1 Running 0 7m
  9. kube-system cilium-x6p9p 1/1 Running 0 7m
  10. kube-system coredns-76f75df574-8nvhs 1/1 Running 0 7m50s
  11. kube-system coredns-76f75df574-lgxdw 1/1 Running 0 7m50s
  12. kube-system etcd-k8s-master-01 1/1 Running 0 8m5s
  13. kube-system etcd-k8s-master-02 1/1 Running 0 7m39s
  14. kube-system etcd-k8s-master-03 1/1 Running 0 7m16s
  15. kube-system kube-apiserver-k8s-master-01 1/1 Running 0 8m5s
  16. kube-system kube-apiserver-k8s-master-02 1/1 Running 2 (5m26s ago) 7m39s
  17. kube-system kube-apiserver-k8s-master-03 1/1 Running 0 7m16s
  18. kube-system kube-controller-manager-k8s-master-01 1/1 Running 1 (6m17s ago) 8m5s
  19. kube-system kube-controller-manager-k8s-master-02 1/1 Running 0 7m38s
  20. kube-system kube-controller-manager-k8s-master-03 1/1 Running 0 7m16s
  21. kube-system kube-proxy-4gtt5 1/1 Running 0 7m11s
  22. kube-system kube-proxy-4m5xf 1/1 Running 0 7m41s
  23. kube-system kube-proxy-k54xf 1/1 Running 0 7m17s
  24. kube-system kube-proxy-rfsl6 1/1 Running 0 7m8s
  25. kube-system kube-proxy-z4pt7 1/1 Running 0 7m9s
  26. kube-system kube-proxy-zj8q6 1/1 Running 0 7m50s
  27. kube-system kube-scheduler-k8s-master-01 1/1 Running 1 (6m16s ago) 8m5s
  28. kube-system kube-scheduler-k8s-master-02 1/1 Running 0 7m39s
  29. kube-system kube-scheduler-k8s-master-03 1/1 Running 0 7m16s
  30. kube-system kube-sealos-lvscare-k8s-node-01 1/1 Running 0 6m50s
  31. kube-system kube-sealos-lvscare-k8s-node-02 1/1 Running 0 6m48s
  32. kube-system kube-sealos-lvscare-k8s-node-03 1/1 Running 0 6m51s
  • 参考文档https://sealos.run/docs/k8s/quick-start/deploy-kubernetes