虚拟机(Virtual Machine)和容器(Container)是两种流行的虚拟化技术。
虚拟机模拟机器的硬件,包括了完整的操作系统和应用,它一旦被开启,预分配给它的资源将全部被占用。容器是运行在宿主机上的一个进程,多个容器之间使用同一个宿主机的操作系统内核。容器相对于虚拟机启动更快、占用资源更少,但隔离和安全性要弱于虚拟机。
测试人员为了准备不同的测试环境,往往使用可视化的 VMWare、VirtualBox 软件,来模拟不同的操作系统和浏览器。本文介绍另外一种 Qemu+KVM 的虚拟化解决方案,通过它在自动化测试中,我们可以使用命令行,按需地自动创建、销毁和管理虚拟测试机。另外,了解这种方案,也是后续自动化测试平台搭建的一个铺垫。
这里使用 Ubuntu20.04 桌面版来作为宿主机,搭建虚拟化环境。
(1)验证主机是支持虚拟化,有输出表明支持。
root@pve:~# egrep -o "(vmx|svm)" /proc/cpuinfo vmx
vmx
vmx
(2)安装虚拟化软件
sudo apt-get install qemu-kvm libvirt-daemon-system libvirt-clients qemu virt-manager bridge-utils
sudo service libvirtd restart
老的 Ubuntu 系统,请用以下命令替换。
sudo apt-get install qemu-kvm libvirt-bin qemu virt-manager bridge-utils
sudo service libvirt-bin restart
(3)下载系统和驱动
从这里下载微软 Win10 官方光盘镜像;
在这里下载虚机 I/O 设备驱动,我选择的是稳定版 virtio-win-0.1.185.iso。
(4)打开虚拟机管理工具
在图形界面中打开终端,输入 virt-manager,启动虚拟机管理工具;
图中显示的 QEMU/KVM 表明,已成功连接到本地服务;
如果状态为断开,请双击尝试连接,若显示不能连接到 libvirtd 服务,可重启机器修复;
您也可以通过点击菜单 “文件->添加连接”,来连接和管理远程宿主机上的虚拟机。
(5)新建虚拟机
点击菜单 “文件->新建虚拟机”,打开虚拟机创建向导;
选择前面下载的 Win10 镜像文件作为本地安装介质。
网络设置页面,选择 “主机设备” 也就是宿主机的网卡,这样虚拟机会作为局域网中的一台电脑而存在。
按向导完成其他设置,并保存。
(6)设置虚拟机
(7)安装虚拟机
(8)结束安装