【问题标题】:Can KVM be used inside a GCE instance?KVM 可以在 GCE 实例中使用吗?
【发布时间】:2014-11-03 20:27:24
【问题描述】:

是否可以在 Google Compute Engine 实例中运行 KVM 虚拟机?简而言之,嵌套虚拟化?

【问题讨论】:

    标签: virtualization google-compute-engine kvm


    【解决方案1】:

    截至目前,运行 GCE 实例的虚拟化环境不提供 KVM 运行所需的虚拟化扩展。在安装过程中它确实表明了这一点,并且正在运行:

    sudo /etc/init.d/qemu-kvm start
    

    [失败] 您的系统没有使用所需的 CPU 扩展 KVM。什么都不做。 ...失败了!

    PS - 即便如此,至少在理论上,没有什么可以阻止不依赖于这些扩展的虚拟化环境的执行:Docker、QEMU(独立)等......

    【讨论】:

    • 我没有收到FAIL 消息;我收到了[ ok ] Starting qemu-kvm (via systemctl): qemu-kvm.service. 这是否意味着已添加 KVM 支持?
    • 考虑到平台自成立以来的发展速度,我不会感到惊讶。只要你有一个积极的 KVM 支持输出,就在你阅读它的时候。 :-) 考虑一下答案的日期:从那以后发生了很多事情。
    【解决方案2】:

    是的,您可以在 GCE 环境中使用嵌套虚拟化。

    当你第一次问这个问题时,当@sammy-villoldo 第一次回答时你不能。

    但是September 28, 2017 Google announced:

    Google Compute Engine now supports nested virtualization in beta
    

    过去您需要小心,因为它仅限于基于 Haswell 或更新版本的 CPU 架构,而且这些架构并非随处可用。 Scanning the list 现在似乎每个 GCE 区域都默认使用 Haswell 或更新版本,所以这不是问题。

    他们的documentation 包含所有详细信息。

    即使在基于 GCE 的 CI 环境中,现在也可以进行嵌套虚拟化,Travis CI 使用他们的 ubuntu 仿生/语言通用(或 bash)图像来实现它。如果您愿意,可以创建一个免费的 github 或 gitlab 帐户并将一个 repo 连接到 Travis 以零成本使用它。

    这是一个示例配置https://travis-ci.org/ankidroid/Anki-Android/builds/607187626/config

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-19
      相关资源
      最近更新 更多