4.2. 演示:使用命令行实用程序创建和管理客户机
为了展示如何在 CLI 中执行虚拟化任务,本章节将提供一个演示新的客户机虚拟机创建位置,在其上安装操作系统,然后客户端则使用 CLI 命令与之交互和管理。
4.2.1. 安装 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
下面创建一个名为
guest1-rhel7
的新 guest,并从 Red Hat Enterprise Linux 7 Workstation ISO 镜像启动操作系统安装。此镜像可 在客户门户网站上 获得,在本示例中,它目前位于 ~/Downloads/
文件夹中。客户机分配有两个虚拟 CPU、2048 MB RAM 和 8 GB 磁盘空间。
virt-install --name guest1-rhel7 --memory 2048 --vcpus 2 --disk size=8 --cdrom /home/username/Downloads/rhel-workstation-7.4-x86_64-dvd.iso --os-variant rhel7
# virt-install --name guest1-rhel7 --memory 2048 --vcpus 2 --disk size=8 --cdrom /home/username/Downloads/rhel-workstation-7.4-x86_64-dvd.iso --os-variant rhel7
Starting install...
Allocating 'guest1-rhel7.qcow2' | 8.0 GB 00:00:00
注意
在无法访问图形界面的主机系统中,可以使用 基于文本的 Anaconda 安装客户机操作系统,使用类似如下的 virt-install 命令:
virt-install -name rhel7anaconda-guest -r 1024 --location=/home/jherrman/Downloads/rhel-workstation-7.4-x86_64-dvd.iso --disk size=8 --nographics --extra-args="console=tty0 console=ttyS0,115200n8"
# virt-install -name rhel7anaconda-guest -r 1024 --location=/home/jherrman/Downloads/rhel-workstation-7.4-x86_64-dvd.iso --disk size=8 --nographics --extra-args="console=tty0 console=ttyS0,115200n8"
如果安装成功完成,命令行会显示以下内容:
Domain creation completed. Restarting guest.
Domain creation completed.
Restarting guest.
现在可以将任何需要的配置提供给客户端。但是,为了安全地管理客户机设置,建议先关闭 guest。
virsh shutdown guest1-rhel7
# virsh shutdown guest1-rhel7
Domain guest1-rhel7 is being shutdown
4.2.2. 附加设备 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
要使客户机检测并使用连接到主机的 USB 设备,本例中的 Samsung 手机首先使用主机上的 lsusb 命令来检索设备的 ID。
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
lsusb
# lsusb
[...]
Bus 003 Device 007: ID 04e8:6860 Samsung Electronics Co., Ltd Galaxy (MTP)
之后,使用主机上的首选文本编辑器为设备创建 XML 文件,本例中为
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
samsung_USB_device.xml
,在其中输入供应商和产品 ID。
vim samsung_USB_device.xml
# vim samsung_USB_device.xml
最后,使用 virsh attach-device 命令将设备附加到客户机。
virsh attach-device guest1-rhel7 --file samsung_USB_device.xml --config
# virsh attach-device guest1-rhel7 --file samsung_USB_device.xml --config
Device attached successfully
注意
也可以将设备附加到运行的 guest。为此,请使用
--live
选项。
4.2.3. 与客户机交互 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
要开始使用 guest1-rhel7 虚拟客户机,请先启动它。
virsh start guest1-rhel7
# virsh start guest1-rhel7
Domain guest1-rhel7 started
根据您的主机系统是否有图形显示,您可以使用 virt-viewer 应用程序与客户机交互,或使用 SSH shell。
- 在带有图形显示的系统中,使用 virt-viewer :
virt-viewer guest1-rhel7
# virt-viewer guest1-rhel7
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 之后,您可以与 virt-viewer 窗口中的屏幕输出(如使用物理机上的 OS GUI)进行交互。例如,您可以使用 Subscription Manager 应用程序注册 Red Hat Enterprise Linux 客户机操作系统: - 如果主机或客户机具有纯文本接口,请使用 SSH。这需要知道客户机的 IP 地址。如果您不知道 IP 地址,可以使用 virsh domifaddr 命令获取它。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意要使 virsh domifaddr 正常工作,客户机必须在网络上运行并可访问,并且可能 需要激活 QEMU 客户机代理。之后,您可以像在客户机机器上使用终端一样与主机终端交互。例如,您可以使用 subscription-manager 实用程序注册 Red Hat Enterprise Linux 客户机操作系统:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.2.4. 诊断 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
显示客户端状态的常规信息:
4.2.5. 创建快照 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
要备份客户机的状态,您可以使用 virsh snapshot-create 命令。
virsh snapshot-create guest1-rhel7
# virsh snapshot-create guest1-rhel7
Domain snapshot 1500563241 created
您可以显示您当前的快照和每个快照的 XML 设置。
之后可能会加载这个快照,将客户机恢复到保存的快照中的状态。
virsh snapshot-revert guest1-rhel7 --snapshotname 150056324
# virsh snapshot-revert guest1-rhel7 --snapshotname 150056324