KubeVirt架构:自定义资源定义、控制器和守护进程

KubeVirt架构:自定义资源定义、控制器和守护进程

💡 原文英文,约900词,阅读约需4分钟。
📝

内容提要

本书摘自《在Kubernetes上运行虚拟机:企业迁移的实用路线图》第三章,介绍KubeVirt如何将虚拟机与容器结合,支持企业从传统虚拟化迁移至Kubernetes。KubeVirt扩展Kubernetes API,实现虚拟机与容器的共存,简化基础设施管理。

🎯

关键要点

  • 本书摘自《在Kubernetes上运行虚拟机:企业迁移的实用路线图》第三章,介绍KubeVirt如何将虚拟机与容器结合。
  • KubeVirt支持企业从传统虚拟化迁移至Kubernetes,简化基础设施管理。
  • KubeVirt作为基础技术,使得逐步迁移到Kubernetes成为可能。
  • KubeVirt通过扩展Kubernetes API,实现虚拟机作为本地资源的管理。
  • KubeVirt的核心是将虚拟机视为在标准Kubernetes pod中运行的进程。
  • KubeVirt引入了三种主要组件:自定义资源定义(CRDs)、控制器和守护进程。
  • VirtualMachine和VirtualMachineInstance(VMI)是用户交互的主要CRDs。
  • virt-api服务器作为所有虚拟化流程的HTTP API入口点。
  • virt-controller是集群范围内的控制器,负责监视新VMI对象的创建。
  • virt-handler是每个工作节点上运行的守护进程,负责管理VM进程。
  • virt-launcher是每个运行中的VM的专用pod,负责启动和管理虚拟机进程。
  • libvirtd是运行在virt-launcher容器内的虚拟机管理守护进程。
  • QEMU是由libvirtd调用的用户空间模拟器和虚拟化器,负责硬件环境的模拟。

延伸问答

KubeVirt是什么,它的主要功能是什么?

KubeVirt是一个将虚拟机与容器结合的技术,支持企业从传统虚拟化迁移至Kubernetes,简化基础设施管理。

KubeVirt如何扩展Kubernetes的功能?

KubeVirt通过扩展Kubernetes API,使虚拟机作为本地资源进行管理,允许虚拟机和容器在同一平台上共存。

KubeVirt的主要组件有哪些,它们的作用是什么?

KubeVirt的主要组件包括自定义资源定义(CRDs)、控制器和守护进程,分别负责定义虚拟机对象、管理生命周期和节点特定操作。

VirtualMachine和VirtualMachineInstance有什么区别?

VirtualMachine表示虚拟机的持久状态,而VirtualMachineInstance是实际运行的虚拟机实例,存在时间较短,依赖于其宿主pod。

KubeVirt如何支持企业迁移到Kubernetes?

KubeVirt作为基础技术,提供了一个统一的平台,使得企业能够逐步迁移传统虚拟化到Kubernetes,降低迁移风险。

KubeVirt中的virt-launcher组件有什么功能?

virt-launcher是每个运行中的虚拟机的专用pod,负责启动和管理虚拟机进程,并与virt-handler通信以执行操作。

➡️

继续阅读