diff --git a/translated/tech/20171212 How to enable Nested Virtualization in KVM on CentOS 7 - RHEL 7.md b/translated/tech/20171212 How to enable Nested Virtualization in KVM on CentOS 7 - RHEL 7.md index a43e2889ae..7d9e14b9e3 100644 --- a/translated/tech/20171212 How to enable Nested Virtualization in KVM on CentOS 7 - RHEL 7.md +++ b/translated/tech/20171212 How to enable Nested Virtualization in KVM on CentOS 7 - RHEL 7.md @@ -1,66 +1,65 @@ -zjon Translating 如何在 CentOS 7 / RHEL 7 的 KVM 上启用嵌套虚拟化 ====== -**嵌套虚拟化**意味着在虚拟机内配置虚拟化环境。换句话说,我们可以说嵌套虚拟化是虚拟机管理程序的一个特性,它允许我们通过**虚拟化管理程序**(主机)的硬件加速在虚拟服务器内安装核运行虚拟机。 -在这篇文章中,我们将讨论如何在 CentOS 7 / RHEL 7 的 KVM 上启用嵌套虚拟化。我假定您已经配置过 KVM 管理程序。如果您不熟悉如何安装和配置 KVM 管理程序,请参考一下文章。 +**嵌套虚拟化**意味着在虚拟机内配置虚拟化环境。换句话说,我们可以说嵌套虚拟化是虚拟机管理程序hypervisor的一个特性,它允许我们通过**虚拟化管理程序**(宿主机)的硬件加速在虚拟服务器内安装和运行虚拟机。 -让我们跳进虚拟化管理程序,验证您的 KVM 主机是否启用了嵌套虚拟化。 +在这篇文章中,我们将讨论如何在 CentOS 7 / RHEL 7 的 KVM 上启用嵌套虚拟化。我假定您已经配置过 KVM 管理程序。如果您不熟悉如何安装和配置 KVM 管理程序,请参考以下文章。 +### 在 CentOS 7.x 和 RHEL 7.x 安装 KVM 管理程序 + +让我们进入虚拟化管理程序,验证您的 KVM 宿主机是否启用了嵌套虚拟化。 + +基于 Intel 的处理器运行以下命令: -基于 Intel 的处理器运行以下命令, ``` [root@kvm-hypervisor ~]# cat /sys/module/kvm_intel/parameters/nested N -[root@kvm-hypervisor ~]# ``` -基于 AMD 的处理器运行以下命令, +基于 AMD 的处理器运行以下命令: ``` [root@kvm-hypervisor ~]# cat /sys/module/kvm_amd/parameters/nested N -[root@kvm-hypervisor ~]# ``` -一下命令输出 'N' 表示嵌套虚拟化是禁用的。如果我们得到的输出是 'Y' 则表示在您的主机已启用嵌套虚拟化 +上述命令输出 `N` 表示嵌套虚拟化是禁用的。如果我们得到的输出是 `Y` 则表示在您的宿主机已启用嵌套虚拟化。 + +现在启用嵌套虚拟化,使用以下内容创建一个文件名为 `/etc/modprobe.d/kvm-nested.conf` 的文件: -现在启用嵌套虚拟化,使用以下内容创建一个文件名为 "**/etc/modprobe.d/kvm-nested.conf**" 的文件 ``` [root@kvm-hypervisor ~]# vi /etc/modprobe.d/kvm-nested.conf +``` +``` options kvm-intel nested=1 options kvm-intel enable_shadow_vmcs=1 options kvm-intel enable_apicv=1 options kvm-intel ept=1 ``` -保存并退出文件 +保存并退出文件。 + +现在移除 `kvm_intel` 模块然后通过 `modprobe` 命令添加同样的模块。在移除模块之前,确保虚拟机已关机,否则我们会得到像 “modprobe: FATAL: Module kvm_intel is in use” 这样的错误信息。 -现在移除 '**kvm_intel**' 模块然后通过 modprobe 命令添加同样的模块。在移除模块之前,确保虚拟机已关机,否则我们会得到像 "**modprobe: FATAL: Module kvm_intel is in use**" 这样的错误信息。 ``` [root@kvm-hypervisor ~]# modprobe -r kvm_intel [root@kvm-hypervisor ~]# modprobe -a kvm_intel -[root@kvm-hypervisor ~]# ``` 现在验证嵌套虚拟化功能是否启用。 + ``` [root@kvm-hypervisor ~]# cat /sys/module/kvm_intel/parameters/nested Y -[root@kvm-hypervisor ~]# ``` -#### +### 测试嵌套虚拟化 -测试嵌套虚拟化 - -假设我们在 KVM 管理程序上有一台名为 "director" 的虚拟机,我已经启用了嵌套虚拟化。在测试之前,确保 CPU 模式为 "host-modle" 或 "host-passthrough" ,使用 Virt-Manager 或 virtsh 编译命令检查虚拟机 cpu 模式。 - -![cpu_mode_vm_kvm][1] +假设我们在 KVM 管理程序上有一台已经启用了嵌套虚拟化的名为 “director” 的虚拟机。在测试之前,确保 CPU 模式为 “host-modle” 或 “host-passthrough” ,使用 Virt-Manager 或 `virtsh` 编辑命令检查虚拟机的 CPU 模式。 ![cpu_mode_vm_kvm][2] -现在登录 director 这台虚拟机并运行 lscpu 和 lsmod 命令 +现在登录 director 这台虚拟机并运行 `lscpu` 和 `lsmod` 命令。 ``` [root@kvm-hypervisor ~]# ssh 192.168.126.1 -l root @@ -70,15 +69,15 @@ Last login: Sun Dec 10 07:05:59 2017 from 192.168.126.254 kvm_intel             170200  0 kvm                   566604  1 kvm_intel irqbypass              13503  1 kvm -[root@director ~]# +``` + +``` [root@director ~]# lscpu ``` -![lscpu_command_rhel7_centos7][1] - ![lscpu_command_rhel7_centos7][3] -让我们试着在 director 这台虚拟机的虚拟管理器 GUI 或 virt-install 创建一台虚拟机,在我的情况下我使用 virt-install 命令 +让我们试着在 director 这台虚拟机的虚拟管理器 GUI 或 `virt-install` 命令创建一台虚拟机,在我的情况下我使用 `virt-install` 命令。 ``` [root@director ~]# virt-install  -n Nested-VM  --description "Test Nested VM"  --os-type=Linux  --os-variant=rhel7  --ram=2048  --vcpus=2  --disk path=/var/lib/libvirt/images/nestedvm.img,bus=virtio,size=10  --graphics none  --location /var/lib/libvirt/images/CentOS-7-x86_64-DVD-1511.iso --extra-args console=ttyS0 @@ -96,7 +95,6 @@ Escape character is ^] ……………………………………………… ``` -![cli-installer-virt-install-command-kvm][1] ![cli-installer-virt-install-command-kvm][4] @@ -110,7 +108,7 @@ via: https://www.linuxtechi.com/enable-nested-virtualization-kvm-centos-7-rhel-7 作者:[Pradeep Kumar][a] 译者:[zjon](https://github.com/zjon) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出