KVM
1 本机信息
https://www.cnblogs.com/ggjucheng/archive/2013/01/14/2859613.html
1.1 系统信息:Linux内核版本
# uname -a
Linux dengnan-ThinkStation-P300 4.15.0-142-generic #146~16.04.1-Ubuntu SMP Tue Apr 13 09:27:15 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
1.2 CPU
查看CPU信息概要:# lscpu
查看CPU详细信息:# cat /proc/cpuinfo
# lscpu
CPU(s): 8
On-line CPU(s) list: 0-7
Thread(s) per core: 2
Core(s) per socket: 4
Socket(s): 1
Virtualization: VT-x
1.3 Memory
查看内存信息概要:# free -m
查看内存详细使用:# cat /proc/meminfo
查看内存硬件信息:# dmidecode -t memory
# cat /proc/meminfo
MemTotal: 24601528 kB
MemFree: 21265328 kB
MemAvailable: 22022324 kB
Buffers: 84680 kB
Cached: 1131480 kB
...
Mapped: 591092 kB
Shmem: 183488 kB
...
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 273228 kB
DirectMap2M: 4888576 kB
DirectMap1G: 20971520 kB
1.4 磁盘
查看硬盘和分区分布:# lsblk
查看硬盘和分区的详细信息:# fdisk -l
查看使用情况:#df -hl
1.5 网卡
查看网卡硬件信息:# lspci | grep -i ‘eth’
查看系统的所有网络接口:# ifconfig -a 或者 # ip link show
查看某个网络接口的详细信息,例如eth0的详细参数和指标:#ethtool eth0
查看某个网络接口的驱动程序:lspci -s 00:19.0 -k
# lspci | grep -i 'eth'
00:19.0 Ethernet controller: Intel Corporation Ethernet Connection I217-LM (rev 04)
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8169 PCI Gigabit Ethernet Controller (rev 10)
加了一块瑞昱的千兆网卡
1.6 IOMMU配置
6.1 在bios中打开对VT-d的支持,设置为enabled
6.2 检查硬件VT-d是否成功打开(这里输出的信息很少 需要进一步在kernel中配置)
# dmesg | grep -e DMAR -e IOMMU
6.3 检查VT-d在kernel中是否enabled
# cat /proc/cmdline | grep iommu=pt
# cat /proc/cmdline | grep intel_iommu=on
都没有输出
修改 /etc/default/grub 文件进行设置:
# sudo gedit /etc/default/grub
将
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
改为
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash iommu=pt intel_iommu=on"
更新配置信息并重启
# sudo grub-mkconfig -o /boot/grub/grub.cfg
# sudo reboot
再次查看
# dmesg | grep -e DMAR -e IOMMU
OK
2 KVM的安装和配置-apt-get
https://linux.cn/article-9707-1.html
KVM(基于内核的虚拟机)是一款为类 Linux 系统提供的开源的全虚拟化解决方案,KVM 使用虚拟化扩展(如 Intel VT 或 AMD-V)提供虚拟化功能。
在Linux 机器上安装 KVM,会通过加载诸如 kvm-intel.ko(基于 Intel 的机器)或 kvm-amd.ko(基于 amd 的机器)的内核模块,使其成为管理程序hypervisor。
2.1 确认硬件是否支持虚拟化
执行 # egrep 命令以验证机器硬件是否支持虚拟化,
$ egrep -c '(vmx|svm)' /proc/cpuinfo
8
输出结果大于 0,表示硬件支持虚拟化。否则需要重启进入 BIOS 设置中启用 VT 技术。
使用如下命令安装 kvm-ok 实用程序,用于确定机器是否能够运行硬件加速的 KVM 虚拟机。
# sudo apt install cpu-checker
运行 kvm-ok 命令确认输出结果
# sudo kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used
2.2 安装 KVM 及其依赖包
运行下面的 apt 命令安装 KVM 及其依赖项:
$ sudo apt update
$ sudo apt install qemu qemu-kvm libvirt-bin bridge-utils virt-manager
本地用户将被自动添加到 libvirtd 群组
2.3 启动并启用 libvirtd 服务
安装 qemu 和 libvirtd 软件包之后,它就会自动启动并启用 libvirtd 服务,如果 libvirtd 服务没有开启,则运行以下命令开启,
$ sudo service libvirtd start
$ sudo update-rc.d libvirtd enable
现在使用下面的命令确认 libvirtd 服务的状态,
$ service libvirtd status
输出结果如下所示:
2.4 网卡直通准备工作
查看网卡信息,准备将eno1网卡直通给VM
$ ifconfig