本文讲解KVM虚拟化的优势以及如何在Ubuntu 20.04 系统上安装KVM虚拟化套件。
成都创新互联公司专业为企业提供商水网站建设、商水做网站、商水网站设计、商水网站制作等企业网站建设、网页设计与制作、商水企业网站模板建站服务,十余年商水做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
先来了解了一下KVM虚拟化技术:
以下引用摘自红帽官网:
1.1 KVM是什么?
KVM是基于内核的虚拟机 Kernel-based Virtual Machine(KVM)是一种内建于 Linux® 中的开源虚拟化技术。具体而言,KVM 可帮助您将 Linux 转变为虚拟机监控程序,使主机计算机能够运行多个隔离的虚拟环境,即虚拟客户机或虚拟机(VM)。
KVM 是 Linux 的一部分。Linux 2.6.20 或更新版本包括 KVM。KVM 于 2006 年首次公布,并在一年后合并到主流 Linux 内核版本中。由于 KVM 属于现有的 Linux 代码,因此它能立即享受每一项新的 Linux 功能、修复和发展,无需进行额外工程。
Ubuntu 20.04如何安装和创建KVM虚拟机
1.2 Linux KVM虚拟化有什么优势?
安全性: KVM 利用安全增强型 Linux(SELinux) 和安全虚拟化(sVirt) 组合来加强虚拟机的安全性和隔离性。SELinux 在虚拟机周围建立安全边界。sVirt 则扩展 SELinux 的功能,使强制访问控制 (MAC)安全机制应用到客户虚拟机,并且预防手动标记错误。
存储:KVM 能够使用 Linux 支持的任何存储,包括某些本地磁盘和网络附加存储(NAS)。还可以利用多路径 I/O 来增强存储并提供冗余能力。KVM 还支持共享文件系统,因此虚拟机镜像可以由多个主机共享。磁盘镜像支持精简置备,可以按需分配存储,不必预先备妥一切。
硬件支持:KVM 可以使用多种多样的认证 Linux 兼容硬件平台。由于硬件供应商经常助力内核开发,所以 Linux 内核中通常能快速采用最新的硬件功能。
内存管理:KVM 继承了 Linux 的内存管理功能,包括非统一内存访问和内核同页合并。虚拟机的内存可以交换,也可通过大型宗卷支持来提高性能,还可由磁盘文件共享或支持。
实时迁移:KVM 支持实时迁移,也就是能够在物理主机之间移动运行中的虚拟机,而不会造成服务中断。虚拟机保持开机状态,网络连接保持活跃,各个应用也会在虚拟机重新定位期间正常运行。KVM 也会保存虚拟机的当前状态,从而存储下来供日后恢复。
性能和可扩展性:KVM 继承了 Linux 的性能,针对客户机和请求数量的增长进行扩展,满足负载的需求。KVM 可让要求最苛刻的应用工作负载实现虚拟化,而这也是许多企业虚拟化设置的基础,如数据中心和私有云等(通过 OpenStack®)。
调度和资源控制:在 KVM 模型中,虚拟机是一种 Linux 进程,由内核进行调度和管理。通过 Linux 调度程序,可对分配给 Linux 进程的资源进行精细的控制,并且保障特定进程的服务质量。在 KVM 中,这包括完全公平的调度程序、控制组、网络命名空间和实时扩展。
更低延迟,更高优先级: Linux 内核提供实时扩展,允许基于虚拟机的应用以更低的延迟、更高的优先级来运行(相对于裸机恢复)。内核也将需要长时间计算的进程划分为更小的组件,再进行相应的调度和处理。
了解完KVM的特性与优势后,我们开始在Linux系统上安装KVM套件和尝试启动一台虚拟机。
2.1 检查CPU是否支持虚拟化
我们先检查本机CPU是否可以支持虚拟化。
- grep -Eoc '(vmx|svm)' /proc/cpuinfo
输出结果
- 96
Ubuntu 20.04检查CPU是否支持虚拟化
我的输出结果表明,被匹配了96次。为什么是96次呢?因为我的服务器的每个CPU都带虚拟化,共96个CPU,每个CPU都匹配一次。所以在每台机器上执行该命令都可能不一样。只要输出结果大于0即表明您的CPU支持虚拟化。
注:Linux系统上的CPU数量与CPU的线程数一致,即一个线程数一个CPU
2.2 检查主板是否开启虚拟化
CPU支持虚拟化就可以正常使用KVM加速功能了吗?不一定的,我们还需要在主板BIOS上开启虚拟化的功能。
使用下面的指令检查KVM加速是否可用。
先安装检查工具:
Ubuntu系统执行以下命令:
- sudo apt update && sudo apt install cpu-checker -y
Ubuntu 20.04安装KVM加速检测套件
笔者在CentOS系统上查找kvm-ok命令对应的软件包时,被提示所有EPEL仓库移除了该命令对应的软件包。
查找kvm-ok命令对应的软件包
- yum provides kvm-ok
查找kvm-ok命令对应的软件包
输出结果:
- https://centos.anexia.at/epel/7/x86_64/repodata/83cce7d719a366a5ebc50fd9a1ff70f575d9df83a6994f948f582850213897f7-filelists.sqlite.bz2: [Errno 14] HTTPS Error 404 - Not Found
提示找不到文件。
Ubuntu 安装完成后,执行以下命令:
- kvm-ok
Ubuntu 20.04检测KVM虚拟化加速是否已经启用
我的服务器上输出的结果如下:
- INFO: /dev/kvm exists
- KVM acceleration can be used
表明kvm加速可用。
确认CPU和主板都可支持后。接下来安装kvm虚拟化套件:
Ubuntu系统:
- sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virtinst virt-manager -y
qemu-kvm: 提供硬件底层虚拟化。
libvirt-daemon-system: 为 libvirt作为系统服务的守护程序运行。
libvirt-clients: 为不同的虚拟机提供长期稳定的C API
bridge-utils:提供网络桥接功能
virtinst: 为libvirt创建虚拟机提供一系列的命令行工作
virt-manager: KVM虚拟机管理图形界面,如果服务器没有安装图形化界面,没有必要安装它。
检查libvirtd是否正在运行:
- sudo systemctl is-active libvirtd
输出结果:
- active
表明我的服务器上正在运行libvirtd
想要创建和管理虚拟机,你需要添加你的用户到libvirt 和 kvm用户组。输入:
- sudo usermod -aG libvirt $USER
- sudo usermod -aG kvm $USER
如果不把用户加入组中,那就要在每条命令之前添加sudo获取更高的权限。
查看虚拟网桥,您可以理解为一个多接口的虚拟交换机:
- brctl show
查看虚拟网络
我的服务器输出结果:
该网桥用于为虚拟机提供连接物理网络的功能,即虚拟机可以访问其它机器,其它机器也可以直接访问它。
但本文不讨论它,因为接下来我只演示NAT模式。
先准备好操作系统的ISO镜像文件:
我已经准备好了CentOS 7.8的安装镜像,它的位置是:
先规划好虚拟机参数:
命令行创建:
- sudo virt-install --name=centos7_2003 --ram=4096 --vcpus=2 --virt-type=kvm --os-type=linux --os-variant=centos7.0 --network default,model=virtio --graphics=vnc,password=linuxrumen.com,port=5911,listen=0.0.0.0 --noautoconsole --accelerate --cdrom=/var/lib/libvirt/images/CentOS-7-x86_64-Minimal-2003.iso --disk path=/var/lib/libvirt/images/CentOS7.qcow2,device=disk,format=qcow2,bus=virtio,cache=writeback,size=40
在Ubuntu 20.04 上创建KVM虚拟机
输出以下结果即表明创建成功:
- 开始安装......
- 正在分配 'CentOS7.qcow2' | 40 GB 00:00:00
- 域安装仍在进行。您可以重新连接
- 到控制台以便完成安装进程。
当然,您也可以在Linux桌面环境中使用图形界面的virt-manager创建它。
在Windows系统上安装VNC viewer客户端:
连接新创建虚拟机的显示器:
VNC服务器地址:
IP+端口
比如192.168.20.35:5911
在VNC viewer客户端:
添加一台VNC主机:
连接KVM虚拟机显示器
输入创建KVM虚拟机时配置的密码:
输入KVM虚拟机显示器密码
成功连接到KVM虚拟机
本文主要演示如何在Ubuntu 20.04 系统上安装KVM与使用KVM基本功能。Linux KVM虚拟化平台非常值得深入研究和学习。它能提供稳定高性能的虚拟化技术。维护也比Exsi简单。命令行套件可以覆盖所有的功能。我一般使用命令行创建,一个SSH终端窗口可以搞定一切。如果您有更酷的用法。请留言。
本文已同步至博客站,尊重原创,转载时请在正文中附带以下链接:
https://www.linuxrumen.com/rmxx/1866.html
网站栏目:只用VMware开虚拟机?来了解一下更强大KVM虚拟化技术
网站路径:http://www.mswzjz.com/qtweb/news46/201796.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联