如何在 CentOS 7 / RHEL 7 的 KVM 上启用嵌套虚拟化
2017-12-31 20:40
1041 查看
嵌套虚拟化意味着在虚拟机内配置虚拟化环境。换句话说,我们可以说嵌套虚拟化是虚拟机管理程序hypervisor的一个特性,它允许我们通过虚拟化管理程序(宿主机)的硬件加速在虚拟服务器内安装和运行虚拟机。
在这篇文章中,我们将讨论如何在 CentOS 7 / RHEL 7 的 KVM 上启用嵌套虚拟化。我假定您已经配置过 KVM 管理程序。如果您不熟悉如何安装和配置 KVM 管理程序,请参考以下文章。
基于 Intel 的处理器运行以下命令:
现在启用嵌套虚拟化,使用以下内容创建一个文件名为
现在移除
现在登录 director 这台虚拟机并运行
让我们试着在 director 这台虚拟机的虚拟管理器 GUI 或
这证实了嵌套虚拟化已成功启用,因为我们能在虚拟机内创建虚拟机。
这篇文章到此结束,请分享您的反馈和意见。
via: https://www.linuxtechi.com/enable-nested-virtualization-kvm-centos-7-rhel-7/
在这篇文章中,我们将讨论如何在 CentOS 7 / RHEL 7 的 KVM 上启用嵌套虚拟化。我假定您已经配置过 KVM 管理程序。如果您不熟悉如何安装和配置 KVM 管理程序,请参考以下文章。
在 CentOS 7.x 和 RHEL 7.x 安装 KVM 管理程序
让我们进入虚拟化管理程序,验证您的 KVM 宿主机是否启用了嵌套虚拟化。基于 Intel 的处理器运行以下命令:
基于 AMD 的处理器运行以下命令:[root@kvm-hypervisor ~]# cat /sys/module/kvm_intel/parameters/nestedN
上述命令输出[root@kvm-hypervisor ~]# cat /sys/module/kvm_amd/parameters/nestedN
N表示嵌套虚拟化是禁用的。如果我们得到的输出是
Y则表示在您的宿主机已启用嵌套虚拟化。
现在启用嵌套虚拟化,使用以下内容创建一个文件名为
/etc/modprobe.d/kvm-nested.conf的文件:
[root@kvm-hypervisor ~]# vi /etc/modprobe.d/kvm-nested.conf
保存并退出文件。options kvm-intel nested=1options kvm-intel enable_shadow_vmcs=1options kvm-intel enable_apicv=1options kvm-intel ept=1
现在移除
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 ~]# cat /sys/module/kvm_intel/parameters/nestedY
测试嵌套虚拟化
假设我们在 KVM 管理程序上有一台已经启用了嵌套虚拟化的名为 “director” 的虚拟机。在测试之前,确保 CPU 模式为 “host-modle” 或 “host-passthrough” ,使用 Virt-Manager 或virtsh编辑命令检查虚拟机的 CPU 模式。
现在登录 director 这台虚拟机并运行
lscpu和
lsmod命令。
[root@kvm-hypervisor ~]# ssh 192.168.126.1 -l rootroot@192.168.126.1's password:Last login: Sun Dec 10 07:05:59 2017 from 192.168.126.254[root@director ~]# lsmod | grep kvmkvm_intel 170200 0kvm 566604 1 kvm_intelirqbypass 13503 1 kvm
[root@director ~]# lscpu
让我们试着在 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=ttyS0Starting install...Retrieving file .treeinfo... | 1.1 kB 00:00:00Retrieving file vmlinuz... | 4.9 MB 00:00:00Retrieving file initrd.img... | 37 MB 00:00:00Allocating 'nestedvm.img' | 10 GB 00:00:00Connected to domain Nested-VMEscape character is ^][ 0.000000] Initializing cgroup subsys cpuset[ 0.000000] Initializing cgroup subsys cpu[ 0.000000] Initializing cgroup subsys cpuacct[ 0.000000] Linux version 3.10.0-327.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC) ) #1 SMP Thu Nov 19 22:10:57 UTC 2015………………………………………………
这证实了嵌套虚拟化已成功启用,因为我们能在虚拟机内创建虚拟机。
这篇文章到此结束,请分享您的反馈和意见。
via: https://www.linuxtechi.com/enable-nested-virtualization-kvm-centos-7-rhel-7/
相关文章推荐
- 如何在 CentOS 7 / RHEL 7 的 KVM 上启用嵌套虚拟化 | Linux 中国
- 如何在 CentOS 7 / RHEL 7 的 KVM 上启用嵌套虚拟化
- 在 Centos7 的KVM上启用嵌套虚拟化
- 如何在 CentOS 7 / RHEL 7 终端服务器上安装 KVM
- Linux有问必答:如何在CentOS或者RHEL上启用Nux Dextop仓库
- 如何在 CentOS 7 / RHEL 7 终端服务器上安装 KVM
- 如何在 CentOS 7 / RHEL 7 终端服务器上安装 KVM | Linux 中国
- CentOS 7下KVM支持虚拟化/嵌套虚拟化配置
- RHEL/CentOS 7.x如何启动/关闭、启用/禁用服务? 修改系统运行级别
- RHEL/CentOS 7.x如何启动/关闭、启用/禁用服务? 修改系统运行级别
- RHEL/CentOS 7.x如何启动/关闭、启用/禁用服务? 修改系统运行级别
- CentOS 6.5安装KVM虚拟化
- Centos7上kvm虚拟化自定义NAT网络
- KVM嵌套虚拟化nested之CPU透传
- centos7.3部署kvm虚拟化
- 如何在CentOS/RHEL 7/6/上安装最新的Nodej和NPM
- centos下的KVM虚拟化实验
- 如何在CentOS 7 / RHEL 7 运行单用户模式进行root的密码重置
- WebVirtMgr 基于Centos7.3的KVM虚拟化管理平台安装