找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

1863

积分

0

好友

249

主题
发表于 11 小时前 | 查看: 3| 回复: 0

最近,KubeClipper 项目正式发布了备受期待的 1.5.0 版本。这次更新将易用性提升到了新的水平,其最显著的变化是新增了 Web 工作负载管理界面,让用户能直接在浏览器中可视化地操作 Deployment 和 StatefulSet。同时,该版本也升级了对 Kubernetes 核心及其生态组件的支持,并修复了大量问题,旨在为运维/DevOps工程师提供更稳定、高效的多集群管理体验。

KubeClipper 是一个轻量便捷的 Kubernetes 多集群全生命周期管理工具。它的设计目标非常明确:提供一个易于使用、易于运维、极度轻量且达到生产级标准的服务,从而将运维人员从繁杂的配置和深奥的命令行中解放出来,实现跨区域、跨基础设施的 Kubernetes 集群一站式管理。对于希望简化 K8s 运维流程的团队和个人开发者而言,这无疑是一个值得关注的工具,你也可以在 云栈社区 了解更多此类云原生解决方案。

1. 🚀 5 分钟快速体验

如果你是第一次接触 KubeClipper,不必担心,它上手极其简单。通过以下步骤,你可以在几分钟内拥有一个可操作的 K8s 环境:

  1. 一键安装工具curl -sfL https://oss.kubeclipper.io/get-kubeclipper.sh | KC_REGION=cn bash -
  2. 部署服务kcctl deploy
  3. 创建集群kcctl create cluster --name demo --master YOUR_IP --untaint-master
  4. 访问界面:浏览器访问 http://YOUR_IP:8080,使用默认账号 admin 和密码 Thinkbig1 登录。

整个过程通常在 5 到 10 分钟内即可完成,让你快速获得一个功能完整的 Kubernetes 环境。

2. KubeClipper 1.5.0 新特性详解

相较于之前的版本,1.5.0 在功能和稳定性上都实现了显著跨越。除了对 Kubernetes 1.35.0 的官方支持外,全新的工作负载管理功能意味着你可以告别繁琐的 kubectl 命令,完全通过图形界面进行日常操作。

KubeClipper 的核心优势:

  • ✅ 易使用:提供直观的 Web 控制台,通过点击鼠标即可创建和管理 K8s 集群。
  • ✅ 极轻量:架构简洁,不依赖 Ansible,部署快速。
  • ✅ 生产级:支持在线、离线、代理等多种部署模式,提供多版本 K8s、CRI、CNI 选择。
  • ✅ 离线友好:完善的离线部署方案,对国内网络环境非常友好。

本次更新的主要亮点:

  • 🆕 工作负载 UI 管理:在 Web 界面直接管理 K8s 工作负载。
  • 🔄 版本升级:Kubernetes 版本更新至 1.35。
  • 🛠️ 技术改进:Go 版本升级、大量依赖库更新、CI/CD 流水线优化。
  • 🔧 稳定性提升:增强节点健康检查、优化系统服务管理、修复竞态条件。
  • 🔒 安全性增强:支持镜像仓库认证、优化 TLS 配置、改进权限管理。
  • 🐛 Bug 修复:包含大量稳定性改进和已知问题修复。

2.1 工作负载管理界面

这是 1.5.0 版本最具颠覆性的功能。过去,用户管理 Kubernetes 工作负载必须依赖命令行或其他第三方工具,而现在这一切都可以在 KubeClipper 的 Web UI 中可视化完成:

  • Workload 管理:涵盖创建、编辑、扩缩容、滚动更新等全生命周期操作。
  • 实时状态查看:便捷查看 Pod 状态、事件和日志。
  • 一键操作:重启、回滚、删除等高频操作变得异常简单。

2.2 组件版本升级

1.5.0 版本全面拥抱了生态的最新版本:

  • Kubernetes: 支持最新的 v1.35 版本。
  • CNI 插件: Calico v3.29.6。
  • 容器运行时: containerd 1.7.29。
  • 开发工具: Go 语言版本从 1.19 升级到 1.23。
  • 其他组件: 均同步更新至最新的兼容版本。

2.3 技术改进和 Bug 修复

1.5.0 版本包含了深度的技术债务清理和稳定性加固。

核心功能改进

  • Kubernetes: 支持 v1.35,Calico、Containerd 等组件同步更新。
  • 容器运行时优化:修复 SystemdCgroup 配置,提升 containerd 兼容性。
  • 证书管理:将证书有效期延长至 10 年,减少因证书到期带来的运维困扰。

稳定性提升

  • 节点健康检查:使用 kube clientset 来更精确地检查节点和集群健康状态。
  • 错误处理优化:改进了命令执行失败时的标准错误输出,便于排障。
  • 系统服务管理:新增 systemctl 工具类,统一管理容器运行时和 kubelet 服务。
  • 竞态条件修复:解决了集群部署和节点添加过程中可能出现的并发问题。

安全性增强

  • 镜像仓库认证:支持 CRI registry 认证功能。
  • TLS 配置:改进了证书生成和验证机制。
  • 权限管理:优化了 kubeconfig 文件的生成逻辑。

开发工具链升级

  • Go 版本升级:从 1.19 升级到 1.23,享受新语言特性的同时提升性能。
  • 依赖库更新:大量第三方库版本得到升级,包含重要的安全补丁。
  • CI/CD 优化:新增代码格式化检查和更严格的构建检查,保障代码质量。

3. 安装部署 KubeClipper 1.5.0

3.1 环境要求

开始之前,请确保你的环境满足以下基本条件:

  • 操作系统: CentOS 7+ / Ubuntu 18.04+
  • 内核版本: 4.4+
  • 内存: 至少 4GB RAM
  • 存储: 至少 20GB 可用空间
  • 网络: 节点间网络互通

3.2 安装 kcctl 工具

通过官方脚本可以快速安装管理工具 kcctl

# 下载最新版本的 kcctl
curl -sfL https://oss.kubeclipper.io/get-kubeclipper.sh | KC_REGION=cn bash -

# 验证安装
kcctl version

正常输出如下:

root@lixd-dev-1:~# kcctl version
kcctl version: version.Info{Major:"1", Minor:"5", GitVersion:"v1.5.0", GitCommit:"0930af19ab9bddd4883f7a46ac91e67335fc1978", GitTreeState:"clean", BuildDate:"2026-02-26T05:25:31Z", GoVersion:"go1.23.0", Compiler:"gc", Platform:"linux/amd64"}

3.3 部署 KubeClipper

对于 All-in-One 测试环境,一条命令即可完成部署:

# 对于 aio 环境使用 kcctl deploy 即可完成部署
kcctl deploy

# 更多参数参考 kcctl deploy -h
# kcctl deploy --server $IPADDR_SERVER --agent $IPADDR_AGENT --pk-file /root/.ssh/id_rsa --pkg $PKG --ip-detect=interface=ens3 --v 5

当终端打印出 KubeClipper 的 ASCII Art Logo 后,即表示安装成功。

 _   __      _          _____ _ _
| | / /     | |        /  __ \ (_)
| |/ / _   _| |__   ___| /  \/ |_ _ __  _ __   ___ _ __
|    \| | | | '_ \ / _ \ |   | | | '_ \| '_ \ / _ \ '__|
| |\  \ |_| | |_) |  __/ \__/\ | | |_) | |_) |  __/ |
\_| \_/\__,_|_.__/ \___|\____/_|_| .__/| .__/ \___|_|
                                 | |   | |
                                 |_|   |_|

安装过程会从阿里云下载离线安装包,通常一分钟内即可完成。

3.4 访问 Web UI

安装完成后,在浏览器中访问 http://$SERVER_IP:8080 即可进入 KubeClipper 控制台。使用默认账号密码 admin / Thinkbig1 登录。

4. 快速上手体验

4.1 创建 K8s 集群

部署成功后,你可以通过 kcctl 工具Web 控制台 创建 Kubernetes 集群。这里我们演示如何使用命令行工具。

首先,查看当前可用的 agent 节点:

root@lixd-dev-1:~# kcctl get node
+--------------------------------------+------------------------+---------+----------------+-------------+-----+--------+
|                  ID                  |        HOSTNAME        | REGION  |       IP       |   OS/ARCH   | CPU |  MEM   |
+--------------------------------------+------------------------+---------+----------------+-------------+-----+--------+
| bf989745-73c7-4582-ab3a-f8f6c96b9ae7 | lixd-dev-1.taiko.local | default | 172.16.131.134 | linux/amd64 |   4 | 7937Mi |
+--------------------------------------+------------------------+---------+----------------+-------------+-----+--------+

然后,使用以下命令创建集群(将 IP 替换为上一步查看到的节点 IP):

root@lixd-dev-1:~# kcctl create cluster --name demo --master 172.16.131.134 --untaint-master
[2026-03-02T06:33:45Z][INFO] use default containerd version 1.7.29
[2026-03-02T06:33:45Z][INFO] use default calico version v3.29.6
[2026-03-02T06:33:45Z][INFO] use default k8s version v1.35.0
+------+---------+--------------+--------------+------------+----------------------------+-------------------------------+
| NAME | REGION  | MASTER COUNT | WORKER COUNT |   STATUS   | APISERVER CERTS EXPIRATION |       CREATE TIMESTAMP        |
+------+---------+--------------+--------------+------------+----------------------------+-------------------------------+
| demo | default |            1 |            0 | Installing |                            | 2026-03-02 06:33:45 +0000 UTC |
+------+---------+--------------+--------------+------------+----------------------------+-------------------------------+

集群创建大约需要两分钟。你可以使用以下命令查看实时日志来跟踪进度:

root@lixd-dev-1:~# kcctl get operation --selector kubeclipper.io/cluster=demo
+--------------------------------------+---------+---------------+------------+---------------------+-------+
|                  ID                  | CLUSTER |     NAME      |   STATUS   |     CREATED AT      | STEPS |
+--------------------------------------+---------+---------------+------------+---------------------+-------+
| 118e57ec-c467-4e11-8436-2813ec9e3b51 | demo    | CreateCluster | successful | 2026-03-02 06:33:45 |    14 |
+--------------------------------------+---------+---------------+------------+---------------------+-------+

root@lixd-dev-1:~# kcctl logs 118e57ec-c467-4e11-8436-2813ec9e3b51 --summary --follow

===== Step: [2026-03-02 06:33:45] installRuntime (fd8ff5bb-dae1-481f-93a4-bfaeea44b402) [successful]
  Node: lixd-dev-1.taiko.local (172.16.131.134) bf989745-73c7-4582-ab3a-f8f6c96b9ae7 [successful] [4s]

===== Step: [2026-03-02 06:33:49] nodeEnvSetup (355a75de-6e39-44f0-b33b-05067c42e479) [successful]
  Node: lixd-dev-1.taiko.local (172.16.131.134) bf989745-73c7-4582-ab3a-f8f6c96b9ae7 [successful] [1s]

===== Step: [2026-03-02 06:33:49] installExtension (33bba175-5589-4ef6-889a-b99df53c4a6b) [successful]
  Node: lixd-dev-1.taiko.local (172.16.131.134) bf989745-73c7-4582-ab3a-f8f6c96b9ae7 [successful] [34s]

===== Step: [2026-03-02 06:34:23] installPackages (444027ce-66b3-4df6-8435-816bb8985bc7) [successful]
  Node: lixd-dev-1.taiko.local (172.16.131.134) bf989745-73c7-4582-ab3a-f8f6c96b9ae7 [successful] [41s]

===== Step: [2026-03-02 06:35:04] renderKubeadmConfig (d59b27e1-fdd6-4e02-8c63-4e21ee2c2d3d) [successful]
  Node: lixd-dev-1.taiko.local (172.16.131.134) bf989745-73c7-4582-ab3a-f8f6c96b9ae7 [successful] [1s]

===== Step: [2026-03-02 06:35:04] initControlPlane (d7b8db58-9169-420f-b1da-7a4cb80c1dc9) [successful]
  Node: lixd-dev-1.taiko.local (172.16.131.134) bf989745-73c7-4582-ab3a-f8f6c96b9ae7 [successful] [14s]

===== Step: [2026-03-02 06:35:18] cniImageLoader (0b3d3c34-80df-4b36-ac2c-6f007d11d681) [successful]
  Node: lixd-dev-1.taiko.local (172.16.131.134) bf989745-73c7-4582-ab3a-f8f6c96b9ae7 [successful] [44s]

....

你也可以使用简单命令查看集群状态:kcctl get cluster -o yaml|grep status -A5,或直接进入控制台查看更直观的实时日志。

当集群状态变为 Running,即表示安装完成。此时,你可以使用 kubectl 命令来验证集群的健康状况:

root@lixd-dev-1:~# kubectl get cs
NAME                 STATUS    MESSAGE   ERROR
scheduler            Healthy   ok
controller-manager   Healthy   ok
etcd-0               Healthy   ok
root@lixd-dev-1:~# kubectl get node
NAME                     STATUS   ROLES           AGE     VERSION
lixd-dev-1.taiko.local   Ready    control-plane   2m55s   v1.35.0

至此,一个单节点的 Kubernetes 集群就通过几条简单的命令快速创建出来了。

4.2 工作负载体验

进入工作负载界面

登录 Web UI 后,在集群管理页面找到你创建的集群,点击其“更多”操作按钮,然后选择 工作负载 即可跳转到全新的工作负载管理界面。

KubeClipper集群管理页面

工作负载界面展示

在新界面中,你可以清晰地看到集群的节点资源信息。

KubeClipper集群节点管理页面

更重要的是,你可以直接在此界面管理 Deployment,进行创建、编辑、扩缩容、查看YAML等一系列操作,无需再切换至命令行。

KubeClipper无状态负载(Deployment)管理页面

更多的功能,如 StatefulSet 管理、DaemonSet 查看等,就留给大家自行探索了。

像素风格雪花图案

5. 小结

KubeClipper 1.5.0 版本的发布,无疑是该项目迈向成熟与易用的重要里程碑。这次更新不仅在用户体验上带来了直观的飞跃——尤其是工作负载的 Web 化管理,更在技术底层完成了现代化升级,为未来的持续发展夯实了基础。

技术深度升级:

  • ✅ 现代化技术栈: 升级至 Go 1.23,全面更新依赖库,确保项目的可维护性和长期活力。
  • ✅ 广泛版本支持: 原生支持最新的 Kubernetes v1.35,覆盖从测试到生产的不同需求。
  • ✅ 生产级稳定性: 引入了更完善的健康检查、错误处理和服务管理机制。
  • ✅ 安全性增强: 在镜像仓库认证、TLS 配置等层面进行了多重加固。

用户体验提升:

  • ✅ 简化操作: 工作负载 UI 将复杂的命令行操作图形化,大幅降低了学习和使用门槛。
  • ✅ 全面兼容: 保持与 Kubernetes 最新生态的同步,减少兼容性烦恼。
  • ✅ 稳定可靠: 经过大量测试和 Bug 修复,稳定性值得信赖。
  • ✅ 开源免费: 完全开源,拥有活跃的社区,是学习和商用开源实战项目的优秀选择。

对于正在寻找一款简单、高效、可靠的 Kubernetes 集群管理平台的团队或个人开发者而言,KubeClipper 1.5.0 提供了一个非常有力的选项。无论是想要快速搭建实验环境的新手,还是需要管理大规模生产集群的资深运维,都能从这个新版本中发现其独特的价值。

像素风格风筝插画




上一篇:Linux tr 命令详解:字符转换、删除与压缩的终端实战指南
下一篇:仿生柔性机器人公司擎羽科技获数千万元天使融资,专注非标准化环境人机协作
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-3-5 19:13 , Processed in 0.424139 second(s), 43 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表