如何在现有的Google云VM实例上启用嵌套虚拟化?

时间:2018-12-26 11:20:10

标签: google-cloud-platform google-compute-engine

我正在尝试在现有VM实例上启用嵌套虚拟化。该VM在Intel Haswell CPU平台上,因此可以进行嵌套虚拟化。

现在,我已在Google上阅读以下支持文章:https://cloud.google.com/compute/docs/instances/enable-nested-virtualization-vm-instances

在第一部分在实例上启用嵌套虚拟化的内容如下:

  

从公共映像或具有以下内容的自定义映像创建启动盘:   操作系统。 或者,您可以跳过此步骤并应用   从您的一个VM实例获得对现有磁盘的许可。

但是我不知道如何将嵌套虚拟化许可证应用于现有的VM实例。所描述的唯一步骤是针对新磁盘的,我想将其应用于现有磁盘。

我的问题是:如何在现有的Google Cloud实例上启用嵌套虚拟化?

预先感谢, 雨果

1 个答案:

答案 0 :(得分:1)

我将与您分享有关如何在现有GCP VM实例上启用嵌套虚拟化的说明。 in the article you shared中描述了更详细的步骤。

  1. 在您现有的VM实例中,您should already have a boot disk在项目中。如果不是,则应从该VM实例创建启动磁盘。

  2. 使用该现有VM实例中的启动磁盘,请使用虚拟化所需的特殊许可证密钥创建一个自定义映像。

    a-如果使用gcloud命令行工具创建映像,请使用--licenses标志提供以下许可证URL:

    https://www.googleapis.com/compute/v1/projects/vm-options/global/licenses/enable-vmx

    例如,以下命令从名为nested-vm-image的示例磁盘创建名为disk1的映像:

    $ gcloud compute images create nested-vm-image \ --source-disk disk1 --source-disk-zone us-central1-b \ --licenses "https://www.googleapis.com/compute/v1/projects/vm-options/global/licenses/enable-vmx"

    b-如果您使用的是API,请在您的API请求中包括licenses属性:

    POST https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/global/images { "licenses": ["projects/vm-options/global/licenses/enable-vmx"], "name": "nested-vm-image", "sourceDisk": "zones/us-central1-b/disks/disk1" }

    其中[PROJECT_ID]是您的项目ID。