KVM虚拟化学习总结

虚拟化技术介绍

什么是虚拟化

在计算机技术中,虚拟化(Virtualization)是一种资源管理技术,是将计算机的 各自实体资源。予以抽象、转换后呈现出来并可供分割、组合为一个或多个计算机配置环境,并重新分割、重新组合、以达到最大化合理利用物理资源的目的;

虚拟化的优势
  • 降低硬件设备资金成本和运维成本;
  • 最大限度的减少或消除停机;
  • 提高IT部门的工作效率、效益、敏捷性和响应能力。
  • 加快应用和资源的调配速度;
  • 提高业务连续性和灾难恢复能力

什么是虚拟机

虚拟机计算机也称为虚拟机(VM、Virtual Machine),它是一种严密隔离且内含操作系统和应用的软件容器。每个自暴寒虚拟机都是完全独立的。用过将多台虚拟机放置在一台宿主机上,可仅在一台物理服务器或“主机”上运行多个操作系统和多种应用,名为“hyperVisor”的精简软件层可将虚拟机和主机分离开来,并根据需要为每个虚拟机动态分配计算资源。

虚拟机的主要特性

特性名称

说明

共享硬件

可在一台物理机上运行多个操作系统;可在虚拟机之间分配系统硬件资源;

相互隔离

各虚拟机相互隔离互补影响;

封装

可将虚拟机的完整状态保存在文件中;移动和复制虚拟机就如移动文件般轻松;

独立于硬件

可将任意虚拟机调配或迁移到其他服务器上;

虚拟化分类

服务器虚拟化
  • 服务器虚拟化支持将多个擦欧总系统作为搞笑的虚拟机在单个物理服务器上运行,主要优势:
  • 提升IT效率
  • 降低运维成本
  • 更快的部署工作负载
  • 提高应用性能
  • 提高服务器的可用性
  • 消除服务器数量剧增情况和复杂性
网络虚拟化
  • 通过软件定义网络,即网络的创建不在依赖于物理设备,如公有云厂商允许用户自己创建新的网络,在kubernetes、opennstack等平台中都会使用到网络虚拟化技术;

桌面虚拟化

  • 桌面部署为代管服务使IT组织能够更快的响应不断编号的工作场所需求和新出现的机会。还可以将虚拟化桌面和应用快速的、批量的部署给分支机构的PC或者使用移动设备的员工;
应用虚拟化:
  • 应用虚拟化是将应用程序与操作系统 解耦合,为应用程序提供了一个虚拟的运行环境。 在这个环境中,不仅包括应用程序的可执行文件,还包括它所需要的运行时环境。
存储虚拟化
  • SAN/NAS/CEPH等
库虚拟化
  • 在linux上允许window程序使用wine,在mac系统上允许window程序使CrossOver等;
容器技术
  • 当前应用比较广泛的虚拟化技术,典型的就是docker,linux Container、pouch、RKT等;

KVM虚拟化与XEN虚拟化技术的对比

XEN

KVM

出现时间

2003

2007

支持的企业

Cirtix、Novell、Oracle、Sun、Rethat、Virtual lron

redhat、Ubuntu

支持的虚拟化技术

全虚拟化、半虚拟化

全虚拟化

支持的架构

X86、IA64、AMD、Fujtsu、IBM、Sun

支持虚拟化的CPU

支持的操作系统类型

UNIX、Linux、Microsoft windows

UNIX、Linux、Microsoft windows

动态迁移

支持

支持

内核支持

需要额外对内核打补丁

内置在内核中

Hypervisor类型与说明

  • Hypervisor是一种允许在基础物理服务器和操作系统之中间的软件层,其可以允许多个操作系统和应用共享底层的内存、CPU、磁盘等物理硬件,也可以叫做VMM(virtual machine monitor),即虚拟机监视器;
  • Hypervisor是所有虚拟化技术的核心技术,非中断的支持多工作负载迁移的能力是hypervisor的基本功能,当服务器启动并执行Hypervisor时,它会给每一台虚拟机分配适量的内存、CPU、网络和磁盘,并加载所有虚拟机的操作系统;
直接运行到物理机的虚拟化
  • Vmwrae Exsi
  • rhev
需要运行在操作系统内的虚拟化:
  • KVM
  • XEN
  • vmware workstation
  • paralles desktop
  • Microsoft hyper-V
  • VirtualBox

常见的Hypervisor类型:

  • 类型1-裸机型:
    直接运行在硬件设备上,这种架构搭建的虚拟机环境称为裸机虚拟化环境
  • 类型2-主机托管型:
    运行在具有虚拟化功能的操作系统上,构建的是主机虚拟化环境
  • kvm虚拟化被redhat划分到类型1的裸机型中;

KVM虚拟化技术介绍

KVM是硬件辅助的虚拟化技术,主要负责比较繁琐的CPU和内存虚拟化,而Qemu则负责I/O虚拟化,二者合作各自发挥自身的优势:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uAkykwuj-1668762793360)(ImageDB/image-20221118163734972.png)]

什么是KVM

官网:https://www.redhat.com/zh/topics/virtualization/what-is-KVM
  • 基于内核的虚拟机 Kernel-based Virtual Machine(KVM)是一种内建于 Linux® 中的开源虚拟化技术。具体而言,KVM 可帮助您将 Linux 转变为虚拟机监控程序,使主机计算机能够运行多个隔离的虚拟环境,即虚拟客户机或虚拟机(VM)。
  • KVM 是 Linux 的一部分。Linux 2.6.20 或更新版本包括 KVM。KVM 于 2006 年首次公布,并在一年后合并到主流 Linux 内核版本中。由于 KVM 属于现有的 Linux 代码,因此它能立即享受每一项新的 Linux 功能、修复和发展,无需进行额外工程。

KVM是如何运行的

KVM 将 Linux 转变为 1 类(裸机恢复)虚拟机监控程序。所有虚拟机监控程序都需要一些操作系统层面的组件才能运行虚拟机,如内存管理器、进程调度程序、输入/输出(I/O)堆栈、设备驱动程序、安全管理器以及网络堆栈等。由于 KVM 是 Linux 内核的一部分,因此所有这些组件它都有。每个虚拟机都像普通的 Linux 进程一样实施,由标准的 Linux 调度程序进行调度,并且使用专门的虚拟硬件,如网卡、图形适配器、CPU、内存和磁盘等。

KVM的资源限制

官方介绍:https://access.redhat.com/articles/rhel-kvm-limits

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-peeocMbM-1668762793361)(ImageDB/image-20221118164301466.png)]

KVM结构组件构成

组件名称

功能说明

Guest

客户机系统,包括cpu(vcpu)、内存、驱动、被KVM置于一种受限制的CPU模式下运行

KVM

运行在内核空间,提供CPU和内存的虚拟化,以及客户机的I/O拦截,Guset的部分I/O被KVM拦截后交给qemu处理

Qemu

纯软件实现的虚拟化模拟器,几乎可以模拟任何硬件设备,我们所熟悉的一台能独立运行操作系统的虚拟机,虚拟机认为是与硬件交互,但实际上是与Qemu模拟出来的硬件交互,然后Qemu将这些指令转译给真正的硬件;正因需要转发所以性能会有一定损耗,所以在生产中,大多数做法都是配合KVM来完成虚拟化的工作,KVM完成复杂及要求较高的设备虚拟化,而Qemu完成输入输出设备的虚拟化;

安装KVM软件

安装前说明

如何判断CPU是否支持硬件虚拟化
grep -i -E '(vmx|svm|lm)' /proc/cpuinfo
	- vmx:Intel VT-x
	- svm:AMD AMD-v
KVM工作栈与相关软件包
  • qemu: 对应的包 qemu-kvm、 qemu-kvm-tools
  • qemu-kvm
  • qemu-img
  • qemu-io
  • libvirt:对应的包 libvirt、 libvirt-daemon-kvm 、virt-install 、virt-manager、libvirt-client
  • GUI:virt-manager, virt-viewer
  • CLI: virsh, virt-install
软件包功能说明
  • qemu-kvm(用户空间的工具程序 )
  • qemu-kvm-tools(qemu-img qemu-kvm 工具包)
  • libvirt-daemon-kvm(守护进程工具)
  • libvirt(virt库)
  • virt-manager(KVM图形化管理工具)
  • libvirt-client
相关命令
#安装kvm软件包:
	yum -y install qemu-kvm qemu-kvm-tools libvirt-daemon-kvm libvirt   libvirt-client

#启动守护进程:
	systemctl enable --now libvirtd.service
	systemctl status libvirtd.service
	
#安装VNC:
	yum -y install  tigervnc tigervnc-server
	systemctl enable --now vncserver@\:1.service
安装流程
#KVM-虚拟机安装
创建流程:
	安装kvm相关软件包,与VNC连接包--->创建磁盘映像文件--->创建模板虚拟机--->根据虚拟机模板创建虚拟机配置文件(.xml)--->复制默认网络模板创建网络文件--->修改虚拟机配置文件,并生成虚拟机--->搭建kimich管理平台
	网络配置方案:
		1.创建nat网络--->手动配置iptables规则;
		2.创建桥接网络
RPM包方式安装
#环境安装:
yum -y install qemu-kvm qemu-kvm-tools libvirt-daemon-kvm libvirt   libvirt-client libguestfs libguestfs-tools  virt-install
#创建磁盘映像:
qemu-img create -f  磁盘属性(raw|qcow2|qcow ) 磁盘路径/磁盘映像文件   size大小;
#创建虚拟磁盘镜像文件:(ISO创建)
virt-install --virt-type kvm --name ${Vhost_name} --ram 1024 --vcpus 2 --cdrom=${Cdrom} --disk path=/var/lib/libvirt/images/${Vhost_name}.img --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole
#创建桥接网络(与外互通的网络/nmcli):
rpm -q  bridge-utils || yum -y install bridge-utils
nmcli con add type bridge con-name br0 ifname br0
nmcli con modify br0 ipv4.addresses $Nat_ip/24 ipv4.method manual gw4 $Gw ipv4.dns 114.114.114.114
nmcli con up br0
nmcli con add type bridge-slave con-name br0-port ifname  $Nat_Prot master br0
nmcli con up br0-port
#创建Nat网络(与外互通的网络/brctl):
brctl addbr mybr0
brctl stp mybr0 on
brctl show mybr0

安装脚本

KVM管理命令详解

virsh命令

  • 查看帮助(有中文支持包的话有翻译):virsh help
  • 子命令分类主要分为九组:

域管理:

Domain Management (help keyword ‘domain’)

监控管理:

Domain Monitoring (help keyword ‘monitor’)

宿主机管理:

Host and Hypervisor (help keyword 'host)

网络接口管理:

Interface (help keyword ‘interface’)

网络管理:

Networking (help keyword ‘network’)

网络规则管理:

Network Filter (help keyword ‘filter’)

节点设备管理:

Node Device(help keyword ‘nodedev’)

快照管理:

Snapshot (help keyword ‘snapshot’)

存储池管理:

Storage Pool (help keyword ‘pool’)

存储卷管理:

Storage Volume (help keyword ‘volume’)

密钥管理:

Secret (help keyword ‘secret’)

域管理:Domiain Management(虚拟机实例管理)子命令说明

子命令名称

功能说明

attach-device

从一个XML文件附加装置

attach-disk

附加磁盘设备

attach-interface

获得网络界面

autostart

自动开始一个域

blkdeviotune

设定或者查询块设备 I/O 调节参数。

blkiotune

获取或者数值 blkio 参数

blockcommit

启动块提交操作。

blockcopy

启动块复制操作。

blockjob

管理活跃块操作

blockpull

使用其后端映像填充磁盘。

blockresize

创新定义域块设备大小

change-media

更改 CD 介质或者软盘驱动器

console

连接到客户会话

cpu-stats

显示域 cpu 统计数据

create

从一个 XML 文件创建一个域

define

从一个 XML 文件定义(但不开始)一个域

desc

显示或者设定域描述或者标题

destroy

销毁(停止)域

detach-device

从一个 XML 文件分离设备

detach-device-alias

detach device from an alias

detach-disk

分离磁盘设备

detach-interface

分离网络界面

domdisplay

域显示连接 URI

domfsfreeze

Freeze domain’s mounted filesystems.

domfsthaw

Thaw domain’s mounted filesystems.

domfsinfo

Get information of domain’s mounted filesystems.

domfstrim

在域挂载的文件系统中调用 fstrim。

domhostname

输出域主机名

domid

把一个域名或 UUID 转换为域 id

domif-setlink

设定虚拟接口的链接状态

domiftune

获取/设定虚拟接口参数

domjobabort

忽略活跃域任务

domjobinfo

域任务信息

domname

将域 id 或 UUID 转换为域名

domrename

rename a domain

dompmsuspend

使用电源管理功能挂起域

dompmwakeup

从 pmsuspended 状态唤醒域

domuuid

把一个域名或 id 转换为域 UUID

domxml-from-native

将原始配置转换为域 XML

domxml-to-native

将域 XML 转换为原始配置

dump

把一个域的内核 dump 到一个文件中以方便分析

dumpxml

XML 中的域信息

edit

编辑某个域的 XML 配置

event

Domain Events

inject-nmi

在虚拟机中输入 NMI

iothreadinfo

view domain IOThreads

iothreadpin

control domain IOThread affinity

iothreadadd

add an IOThread to the guest domain

iothreaddel

delete an IOThread from the guest domain

send-key

向虚拟机发送序列号

send-process-signal

向进程发送信号

lxc-enter-namespace

LXC 虚拟机进入名称空间

managedsave

管理域状态的保存

managedsave-remove

删除域的管理保存

managedsave-edit

edit XML for a domain’s managed save state file

managedsave-dumpxml

Domain information of managed save state file in XML

managedsave-define

redefine the XML for a domain’s managed save state file

memtune

获取或者数值内存参数

perf

Get or set perf event

metadata

show or set domain’s custom XML metadata

migrate

将域迁移到另一个主机中

migrate-setmaxdowntime

设定最大可耐受故障时间

migrate-getmaxdowntime

get maximum tolerable downtime

migrate-compcache

获取/设定压缩缓存大小

migrate-setspeed

设定迁移带宽的最大值

migrate-getspeed

获取最长迁移带宽

migrate-postcopy

Switch running migration from pre-copy to post-copy

numatune

获取或者数值 numa 参数

qemu-attach

QEMU 附加

qemu-monitor-command

QEMU 监控程序命令

qemu-monitor-event

QEMU Monitor Events

qemu-agent-command

QEMU 虚拟机代理命令

reboot

重新启动一个域

reset

重新设定域

restore

从一个存在一个文件中的状态恢复一个域

resume

重新恢复一个域

save

把一个域的状态保存到一个文件

save-image-define

为域的保存状态文件重新定义 XML

save-image-dumpxml

在 XML 中保存状态域信息

save-image-edit

为域保存状态文件编辑 XML

schedinfo

显示/设置日程安排变量

screenshot

提取当前域控制台快照并保存到文件中

set-lifecycle-action

change lifecycle actions

set-user-password

set the user password inside the domain

setmaxmem

改变最大内存限制值

setmem

改变内存的分配

setvcpus

改变虚拟 CPU 的号

shutdown

关闭一个域

start

开始一个(以前定义的)非活跃的域

suspend

挂起一个域

ttyconsole

tty 控制台

undefine

取消定义一个域

update-device

从 XML 文件中关系设备

vcpucount

域 vcpu 计数

vcpuinfo

详细的域 vcpu 信息

vcpupin

控制或者查询域 vcpu 亲和性

emulatorpin

控制火车查询域模拟器亲和性

vncdisplay

vnc 显示

guestvcpus

query or modify state of vcpu in the guest (via agent)

setvcpu

attach/detach vcpu or groups of threads

domblkthreshold

set the threshold for block-threshold event for a given block device or it’s backing chain element

监控管理: Domain Monitoring(管理监控虚拟机资源使用情况)

子命令名称

功能说明

domblkerror

在块设备中显示错误

domblkinfo

域块设备大小信息

domblklist

列出所有域块

domblkstat

获得域设备块状态

domcontrol

域控制接口状态

domif-getlink

获取虚拟接口链接状态

domifaddr

Get network interfaces’ addresses for a running domain

domiflist

列出所有域虚拟接口

domifstat

获得域网络接口状态

dominfo

域信息

dommemstat

获取域的内存统计

domstate

域状态

domstats

get statistics about one or multiple domains

domtime

domain time

list

列出域

宿主机管理: Host and Hypervisor(管理宿主机相关状态信息)

子命令名称

功能说明

allocpages

Manipulate pages pool size

capabilities

性能

=cpu-baseline

计算基线 CPU

cpu-compare

使用 XML 文件中描述的 CPU 与主机 CPU 进行对比

cpu-models

CPU models

domcapabilities

domain capabilities

freecell

NUMA可用内存

freepages

NUMA free pages

hostname

打印管理程序主机名

hypervisor-cpu-baseline

compute baseline CPU usable by a specific hypervisor

hypervisor-cpu-compare

compare a CPU with the CPU created by a hypervisor on the host

maxvcpus

连接 vcpu 最大值

node-memory-tune

获取或者设定节点内存参数

nodecpumap

节点 cpu 映射

nodecpustats

输出节点的 cpu 状统计数据。

nodeinfo

节点信息

nodememstats

输出节点的内存状统计数据。

nodesuspend

在给定时间段挂起主机节点

sysinfo

输出 hypervisor sysinfo

uri

打印管理程序典型的URI

version

显示版本

网络接口管理: Interface(管理网络接口相关信息)

子命令名称

功能说明

iface-begin

生成当前接口设置快照,可在今后用于提交 (iface-commit) 或者恢复 (iface-rollback)

iface-bridge

生成桥接设备并为其附加一个现有网络设备

iface-commit

提交 iface-begin 后的更改并释放恢复点

iface-define

define an inactive persistent physical host interface or modify an existing persistent one from an XML file

iface-destroy

删除物理主机接口(启用它请执行 “if-down”)

iface-dumpxml

XML 中的接口信息

iface-edit

为物理主机界面编辑 XML 配置

iface-list

物理主机接口列表

iface-mac

将接口名称转换为接口 MAC 地址

iface-name

将接口 MAC 地址转换为接口名称

iface-rollback

恢复到之前保存的使用 iface-begin 生成的更改

iface-start

启动物理主机接口(启用它请执行 “if-up”)

iface-unbridge

分离其辅助设备后取消定义桥接设备

iface-undefine

取消定义物理主机接口(从配置中删除)

网络规则管理: Network Filter (管理iptables规则)

子命令名称

功能说明

nwfilter-define

使用 XML 文件定义或者更新网络过滤器

nwfilter-dumpxml

XML 中的网络过滤器信息

nwfilter-edit

为网络过滤器编辑 XML 配置

nwfilter-list

列出网络过滤器

nwfilter-undefine

取消定义网络过滤器

nwfilter-binding-create

create a network filter binding from an XML file

nwfilter-binding-delete

delete a network filter binding

nwfilter-binding-dumpxml

XML 中的网络过滤器信息

nwfilter-binding-list

list network filter bindings

网络管理:Networking(管理虚拟机网络相关信息)

子命令名称

功能说明

net-autostart

自动开始网络

net-create

从一个 XML 文件创建一个网络

net-define

define an inactive persistent virtual network or modify an existing persistent one from an XML file

net-destroy

销毁(停止)网络

net-dhcp-leases

print lease info for a given network

net-dumpxml

XML 中的网络信息

net-edit

为网络编辑 XML 配置

net-event

Network Events

net-info

网络信息

net-list

列出网络

net-name

把一个网络UUID 转换为网络名

net-start

开始一个(以前定义的)不活跃的网络

net-undefine

undefine a persistent network

net-update

更新现有网络配置的部分

net-uuid

把一个网络名转换为网络UUID

节点设备管理:Node Device(管理节点上的设备信息管理)

子命令名称

功能说明

nodedev-create

根据节点中的 XML 文件定义生成设备

nodedev-destroy

销毁(停止)节点中的设备

nodedev-detach

将节点设备与其设备驱动程序分离

nodedev-dumpxml

XML 中的节点设备详情

nodedev-list

这台主机中中的枚举设备

nodedev-reattach

重新将节点设备附加到他的设备驱动程序中

nodedev-reset

重置节点设备

nodedev-event

Node Device Events

密钥管理:Secret(管理连接虚拟机的认证密钥信息)

子命令名称

功能说明

secret-define

定义或者修改 XML 中的 secret

secret-dumpxml

XML 中的 secret 属性

secret-event

Secret Events

secret-get-value

secret 值输出

secret-list

列出 secret

secret-set-value

设定 secret 值

secret-undefine

取消定义 secret

快照管理: Snapshot(虚拟机快照信息管理)

子命令名称

功能说明

snapshot-create

使用 XML 生成快照

snapshot-create-as

使用一组参数生成快照

snapshot-current

获取或者设定当前快照

snapshot-delete

删除域快照

snapshot-dumpxml

为域快照转储 XML

snapshot-edit

编辑快照 XML

snapshot-info

快照信息

snapshot-list

为域列出快照

snapshot-parent

获取快照的上级快照名称

snapshot-revert

将域转换为快照

存储池管理: Storage Pool(管理存储池相关信息)

子命令名称

功能说明

find-storage-pool-sources-as

找到潜在存储池源

find-storage-pool-sources

发现潜在存储池源

pool-autostart

自动启动某个池

pool-build

建立池

pool-create-as

从一组变量中创建一个池

pool-create

从一个 XML 文件中创建一个池

pool-define-as

在一组变量中定义池

pool-define

define an inactive persistent storage pool or modify an existing persistent one from an XML file

pool-delete

删除池

pool-destroy

销毁(删除)池

pool-dumpxml

XML 中的池信息

pool-edit

为存储池编辑 XML 配置

pool-info

存储池信息

pool-list

列出池

pool-name

将池 UUID 转换为池名称

pool-refresh

刷新池

pool-start

启动一个(以前定义的)非活跃的池

pool-undefine

取消定义一个不活跃的池

pool-uuid

把一个池名称转换为池 UUID

pool-event

Storage Pool Events

存储卷管理: Storage Volume(管理存储卷相关信息)

子命令名称

功能说明

vol-clone

克隆卷。

vol-create-as

从一组变量中创建卷

vol-create

从一个 XML 文件创建一个卷

vol-create-from

生成卷,使用另一个卷作为输入。

vol-delete

删除卷

vol-download

将卷内容下载到文件中

vol-dumpxml

XML 中的卷信息

vol-info

存储卷信息

vol-key

为给定密钥或者路径返回卷密钥

vol-list

列出卷

vol-name

为给定密钥或者路径返回卷名

vol-path

为给定密钥或者路径返回卷路径

vol-pool

为给定密钥或者路径返回存储池

vol-resize

创新定义卷大小

vol-upload

将文件内容上传到卷中

vol-wipe

擦除卷

Virsh本身的交互命令:Virsh itself

子命令名称

功能说明

cd

更改当前目录

echo

echo 参数

exit

退出这个非交互式终端

help

打印帮助

pwd

输出当前目录

quit

退出这个非交互式终端

connect

连接(重新连接)到 hypervisor

virsh命令-常用命令

virsh-list

参数名称

功能

使用方法

–inactive

列出不活跃的域

virsh list --inactive

–all

不活跃和活跃的域列表

virsh list --all

–transient

列出临时域

virsh list --transient

–persistent

列出持久域

virsh list --persistent

–with-snapshot

列出现有快照的域

virsh list --with-snapshot

–without-snapshot

列出没有快照的域

virsh list --without-snapshot

–state-running

运行状态的域列表

virsh list --state-running

–state-paused

列出暂停状态的域

virsh list --state-paused

–state-shutoff

列出关闭状态的域

virsh list --state-shutoff

–state-other

列出其他状态的域

virsh list --state-other

–autostart

列出启用 autostart 的域

virsh list --autostart

–no-autostart

列出禁用 autostart 的域

virsh list --no-autostart

–with-managed-save

列出有管理的保存状态的域

virsh list --with-managed-save

–without-managed-save

列出没有管理的保存状态的域

virsh list --without-managed-save

–uuid

只列出 uuid

virsh list --uuid

–name

只列出域名

virsh list --name

–table

列出表格(默认)

virsh list --table

–managed-save

标记有管理的保存状态的域

virsh list --managed-save

–title

show domain title

virsh list --title

virsh dumpxml

参数名称

功能

使用方法

–inactive

显示不活跃定义的 XML

virsh dumpxml filename.xml–inactive

–security-info

包括 XML 转储中与安全性相关的信息

virsh dumpxml filename.xml --security-info

–update-cpu

根据主机 CPU 更新虚拟机 CPU

virsh dumpxml filename.xml --update-cpu

–migratable

为迁移提供 XML 可用性

virsh dumpxml filename.xml --migratable

–domain

查看domin的xml内容

virsh dumpxml filename.xml --domain

virsh create:(创建虚拟机)

参数名称

功能

使用方法

[–file] <string>

文件包括一个 XML 域描述

virsh create filename.xml

–console

创建后附加到控制台

virsh create filename.xml --console

–paused

生成后让虚拟机保持暂停状态

virsh create filename.xml --paused

–autodestroy virsh

断开连接时自动销毁虚拟机

virsh create filename.xml --autodestroy virsh

–pass-fds <string>

向虚拟机传递文件描述符 N、M…

virsh create filename.xml --pass-fds

–validate

validate the XML against the schema

virsh create filename.xml --validate

virsh define

参数名称

功能

使用方法

[–file] <string>

文件包括一个 XML 域描述

virsh define filename.xml

–validate

validate the XML against the schema

virsh define filename.xml --validate

virsh start:(启动虚拟机)

参数名称

功能

[–domain] <string>

非活跃域的名称

–console

创建后附加到控制台

–paused

生成后让虚拟机保持暂停状态

–autodestroy

virsh 断开连接时自动销毁虚拟机

–bypass-cache

载入时避免文件系统缓存

–force-boot

采用忽略所有管理保存的方式强制刷新引导

–pass-fds <string>

向虚拟机传递文件描述符 N、M…

|

| --validate | validate the XML against the schema | virsh define filename.xml --validate |

virsh start:(启动虚拟机)

参数名称

功能

[–domain] <string>

非活跃域的名称

–console

创建后附加到控制台

–paused

生成后让虚拟机保持暂停状态

–autodestroy

virsh 断开连接时自动销毁虚拟机

–bypass-cache

载入时避免文件系统缓存

–force-boot

采用忽略所有管理保存的方式强制刷新引导

–pass-fds <string>

向虚拟机传递文件描述符 N、M…