Alpha · Apache 2.0 · 自托管

KubeVirt Shepherd

面向 KubeVirt 团队的 VM 申请、审批与审计

KubeVirt Shepherd(kv-shepherd)为团队提供统一入口,申请和管理虚拟机、执行访问策略,并查看平台操作记录。

适合向内部用户提供 KubeVirt 虚拟机的平台团队。

浏览器演示 · 无需账号 · 模拟数据

KubeVirt Shepherd 仪表盘中的平台与虚拟机信息
Shepherd 仪表盘界面。浏览器演示使用模拟数据。

从提交 VM 申请到查看执行结果

以需要审批的虚拟机创建申请为例,了解申请人、审批人和后台任务分别做什么。

  1. 申请人

    描述所需的虚拟机

    选择服务、模板和实例规格,填写目标环境并提交虚拟机申请。

  2. 审批人

    审核申请与放置目标

    查看请求的资源,在符合条件的目标集群中选择放置位置,再批准或拒绝申请。

  3. 后台任务

    执行并报告进度

    通过审批的操作进入任务队列,由后台任务向目标集群提交变更,并报告执行状态或失败信息。

  4. 团队成员

    跟踪结果与操作记录

    查看申请和虚拟机状态,并通过审计记录了解操作者、动作及所涉及的资源。

审批要求可按操作和环境配置。提交申请并不保证虚拟机能够成功调度。

围绕日常 VM 工作提供的工具

管理共享虚拟机服务所需的资源、权限与操作上下文。

资源目录

管理命名空间、模板和实例规格,通过系统与服务组织虚拟机的归属。

作用域权限

组合平台角色与系统、服务、虚拟机成员关系,并支持按环境绑定角色。

多集群管理

注册 Kubernetes/KubeVirt 集群,在统一界面中管理申请放置和资源可见性。

生命周期操作

申请创建、修改、电源操作和删除,是否进入审批由配置的策略决定。

控制台入口

在自托管安装中,通过平台访问控制进入 VNC 或串行控制台。

运维可见性

查看审计历史与管理员指标;配置 OpenTelemetry 后端后可使用 API Trace。

产品提供中英文界面,并提供认证提供者 SDK,用于接入 LDAP、OIDC 或自定义认证。

结合自己的环境评估

KubeVirt 继续负责虚拟化。Shepherd 管理虚拟机周围的申请、权限和操作记录。

KubeVirt Shepherd 的公开 GitHub 组织是 kv-shepherd。

应用源码(main)
Go 后端和产品 Web 界面的开发源码。
Helm Chart
用于安装到 Kubernetes 的 Chart 源码和配置。
部署指南(main)
main 分支中的环境要求与安装方式说明。

main 分支的代码和文档可能领先于发布版本。安装前请核对发布说明,并使用所选版本对应的文档。

  • 连接自己的集群

    实际安装需要可访问的 Kubernetes/KubeVirt 集群,以及相应的存储、网络和集群凭据。

  • 从 Alpha 评估开始

    先阅读发布说明,在接入共享工作负载前验证兼容性、升级、认证和权限。

  • 区分演示与实际运行

    公开演示在浏览器中使用模拟数据,不创建虚拟机,也不连接真实控制台。

Shepherd 在环境中的位置

Web UI 调用 Go API;PostgreSQL 保存应用数据和排队任务;KubeVirt 运行虚拟机。

Shepherd 默认应用栈使用 PostgreSQL,无需 Redis 或独立消息队列。集群服务和可选的可观测后端需另行配置。

查看架构与 API 文档

Web UI

React · Next.js

Go API 与后台任务

Gin · River Queue

PostgreSQL 18

应用数据 · 审计 · 任务

你的 KubeVirt 集群

虚拟机工作负载

选择一种方式评估 Shepherd

先了解工作流程,或在自己的基础设施上安装实际平台。

了解界面与流程

浏览器演示

使用模拟数据体验申请、审批与角色切换。无需账号或配置集群。

打开演示
安装到集群

Helm on Kubernetes

使用维护中的 Helm Chart,并按自己的环境检查 Chart 配置、数据库持久化、TLS 和受管集群权限。

阅读 Helm 指南
安装到主机

Docker Compose

通过 Docker Compose 运行已发布的服务端和 Web 镜像,可使用内置 PostgreSQL 或配置外部数据库。

阅读 Compose 指南

真实虚拟机操作需要已配置的 KubeVirt 环境。部署文档也包含源码构建和本地开发说明。

完整部署指南

开始之前,你可能想了解

关于 KubeVirt、审批策略、模拟演示和 Alpha 评估的几个问题。

kv-shepherd 和 KubeVirt Shepherd 是同一个项目吗?

是的。KubeVirt Shepherd 是项目全称,kv-shepherd 是其简称,也是公开 GitHub 组织的名称。该组织下的 shepherd 仓库保存应用源码。本官网介绍这个项目,并提供文档、发布版本和模拟演示的入口。

Shepherd 会替代 KubeVirt 吗?

KubeVirt 负责在 Kubernetes 上运行虚拟机。KubeVirt Shepherd 在其上提供 VM 申请、审核、作用域权限和审计记录的共享应用。自托管安装需要连接已部署 KubeVirt 的 Kubernetes 集群。

每个操作都需要审批吗?

审批要求取决于操作类型和环境策略。需要审核的申请会在执行前交给审批人处理;不需要审批的操作仍受角色与资源权限控制。

在线演示会创建真实虚拟机吗?

浏览器演示使用模拟数据和操作。无需账号即可切换角色、体验申请审批并重置会话。真实集群、VNC、串行控制台和外部认证需要自托管安装。

Alpha 阶段应该重点验证什么?

先查看发布说明,再测试自己的 KubeVirt 版本、存储、网络和认证配置。在接入共享工作负载前,按实际环境配置集群权限、TLS、密钥和数据库备份。

如何部署或参与项目?

可以通过维护中的 Helm Chart 安装到 Kubernetes,也可以使用发布镜像通过 Docker Compose 部署到主机。项目采用 Apache 2.0 协议,部署文档、源码和贡献指南均在 GitHub 公开。

一起完善下一个版本

Shepherd 以 Apache 2.0 协议公开开发,目前处于 Alpha 阶段。源码、变更和发布说明都可在 GitHub 查看。

欢迎来自实际环境的反馈:描述所需流程、KubeVirt 版本,以及能够复现问题的步骤。

源码与发布记录