KubeVirt 架构设计与核心工作原理

整体架构设计

KubeVirt 采用服务导向架构(Service Oriented Architecture)和编排模式(Choreography Pattern)设计,作为 Kubernetes 的扩展,为其增加虚拟机管理能力。

架构层次

      +---------------------+
      | KubeVirt            |
    ~~+---------------------+~~
      | 编排层 (K8s)         |
      +---------------------+
      | 调度层 (K8s)         |
      +---------------------+
      | 容器运行时           |
    ~~+---------------------+~~
      | 操作系统             |
      +---------------------+
      | (虚拟层)            |
    ~~+---------------------+~~
      | 物理层              |
      +---------------------+

KubeVirt 将虚拟化功能委托给 Kubernetes 进行调度、网络和存储管理,同时提供专门的虚拟化功能。

核心组件架构

KubeVirt 通过以下三个关键要素扩展 Kubernetes:

  1. 自定义资源定义 (CRD): 向 Kubernetes API 添加新的资源类型
  2. 集群级控制器: 处理与这些新类型相关的集群范围逻辑
  3. 节点级守护进程: 处理与新类型相关的节点特定逻辑

这种架构使用户能够通过 Kubernetes API 管理虚拟机,同时保持与现有 Kubernetes 生态系统的兼容性。

组件交互流程

客户端                     K8s API     VMI CR  Virt Controller         VMI Handler
-------------------------- ----------- ------- ----------------------- ----------

                           监听 <----------- 监视 /virtualmachine

你可能感兴趣的:(KubeVirt,智算,Kubernetes,kubernetes,gpu算力,云计算)