VM Runtime on Google Distributed Cloud 概览

Google Distributed Cloud 上的虚拟机运行时是在 Google Distributed Cloud 中运行基于虚拟机的工作负载的关键组件。

什么是 GDC 上的虚拟机运行时?

GDC 上的 VM Runtime 是 Google Distributed Cloud 的一部分,可让您以与运行容器相同的方式在 Kubernetes 上运行虚拟机。借助 GDC 上的虚拟机运行时,您可以运行基于虚拟机的现有工作负载,同时开发和运行基于容器的新应用。GDC 上的虚拟机运行时类似于另一个虚拟化环境中的 Hypervisor。

借助 GDC 上的虚拟机运行时,您可以查看和管理虚拟机的状态,并收集审核或控制台日志。GDC 上的虚拟机运行时就像在其他虚拟化环境中使用的管理控制台工具一样。

您无需对基于虚拟机的现有工作负载进行现代化改造或升级,即可在 GDC 上使用虚拟机运行时。虚拟机像在其他虚拟化环境中一样运行,但在 GKE on Bare Metal 集群中,您的应用可以从一组工作流和进程中受益。准备就绪后,您可以将这些基于虚拟机的工作负载迁移到容器,并继续使用相同的 GKE Enterprise 管理工具。

优势

GDC 上的虚拟机运行时具有以下优势:

  • 能够以编程方式使用虚拟机资源,如同您使用容器一样。
  • 跨容器和虚拟机高效利用资源。
  • 对虚拟机和容器进行统一管理和操作。
  • 对新的容器化应用程序和基于虚拟机的旧版应用之间的流量进行统一的显示和控制。
  • 简化了迁移到云或容器化应用的体验。

GDC 上的虚拟机运行时可帮助您在 Google Distributed Cloud 的基础上迁移虚拟机或构建新虚拟机。

GDC 上的虚拟机运行时与 KubeVirt 上的不同

GDC 上的虚拟机运行时基于 KubeVirt 开源项目构建。Kubevirt 专门为 Kubernetes 构建,并跟随声明式 API 模型使用 Kubernetes 资源模型、自定义资源定义或运算符。GDC 上的 VM Runtime 将 Kubevirt 集成到 Google Distributed Cloud 中,以便为管理应用提供一致的方式。本部分概述了 GDC 上的虚拟机运行时的一些关键功能,这些功能在 KubeVirt 中不可用。

Lifecycle

GDC 上的 VM Runtime 基于 GKE Enterprise 平台的强大功能,已与 GKE Enterprise 平台完全集成。您可以使用 CLI 命令、API 或 Google Cloud 控制台在 GDC 上安装、升级和卸载虚拟机运行时。当与兼容的存储空间一起使用时,GKE Enterprise 集群升级包括在主机之间实时迁移虚拟机工作负载(预览版),以最大限度减少潜在的虚拟机工作负载中断。

云端支持的管理体验

GDC 上的虚拟机运行时为您的本地安装提供云般的体验。这种体验包括以下新的类似云的基本组件:

存储

GDC 上的 VM Runtime 会自动为集群中的每个 StorageClass 生成一个存储配置文件对象 StorageProfile。这个新配置文件对象可让您从一个位置为虚拟机配置 StorageClass 属性,包括 accessModevolumeMode

您可以将多个磁盘挂接到一个虚拟机。您可以挂接现有磁盘,也可以创建并挂接新磁盘。新的 VirtualMachineDisk 自定义资源允许您使用捆绑的容器化数据导入工具 (CDI) 创建空白磁盘或基于现有映像的磁盘。CDI 甚至可让您从受凭据保护的 Cloud Storage 中拉取映像

网络

GDC 上的虚拟机运行时扩展了 KubeVirt 的默认 pod-network 产品,以提供更适合生产虚拟机工作负载的网络选项。GDC 上的 VM Runtime 扩展了基于容器网络接口 (CNI) 框架的现有网络堆栈。GDC 上的 VM Runtime 添加一个 Network 对象,用于在 Kubernetes 中启用类似于虚拟开关的功能。虽然网络插件可用于 Kubernetes,但它们需要自己的安装、生命周期和管理。借助 GDC 上的虚拟机运行时,开箱即用的虚拟机可以与多个第 2 层网络接口交互,包括支持 VLAN 标记、外部 DHCP 等。GDC 上的 VM Runtime 还引入了接口对象,该对象支持 IP 和 MAC 地址粘性,即使虚拟机被重启、迁移或重新创建也是如此。新的网络栈还与 NetworkPolicy 集成,因此您可以使用 Kubernetes 基本组件来控制虚拟机之间的第 4 层流量。

可观测性

GDC 上的 VM Runtime 自动支持在 Google Cloud 控制台中实现虚拟机可观测性。除了 GKE 集群和虚拟机运行时 on GDC 日志记录之外,虚拟机串行控制台日志也会自动流式传输到 Cloud Logging。虚拟机日志以及容器日志可以在 Logs Explorer 中查看。您可以在 Google Cloud 控制台中查看虚拟机 CPU、内存、磁盘和网络指标。您还可以使用熟悉的 Google Cloud 服务来实现信息中心、提醒以及与通知集成。

管理

您可以通过命令行、API 和 Google Cloud 控制台使用 GDC 上的大多数虚拟机运行时功能。这种灵活的方法支持多种开发者和操作方式。利用 GKE Enterprise 堆栈的强大功能,Config Sync 和 Policy Controller 也可用于实现 GitOps 方法和精细的政策。最后,KubeVirt 工具(例如 virtctl)也进行了扩展,以支持在 GDC 功能上额外提供虚拟机运行时。

GPU 支持

借助 GDC 上的虚拟机运行时,您可以在虚拟机中启用支持的 NVIDIA GPU 卡,从而实现机器学习和其他专业工作负载。

开始

如需开始在 GDC 上使用虚拟机运行时,请参阅以下文档: