博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
KVM命令集管理虚拟机
阅读量:6385 次
发布时间:2019-06-23

本文共 5364 字,大约阅读时间需要 17 分钟。

使用KVM命令集管理虚拟机

查看虚拟机状态

[root@localhost ~]# virsh list --all Id    名称                         状态---------------------------------------------------- 2     c01                            running

虚拟机的关机与开机

[root@localhost ~]# virsh shutdown c01域 c01 被关闭[root@localhost ~]# virsh list --all Id    名称                         状态---------------------------------------------------- -     c01                            关闭
[root@localhost ~]# virsh start c01域 c01 已开始[root@localhost ~]# virsh list --all Id    名称                         状态---------------------------------------------------- 3     c01                            running

还有一种强行关机的方式,类似于直接断电关机的。

[root@localhost ~]# virsh destroy c01域 c01 被删除[root@localhost ~]# virsh list --all Id    名称                         状态---------------------------------------------------- -     c01                            关闭

启动还有一种通过配置文件启动虚拟机

[root@localhost ~]# virsh create /etc/libvirt/qemu/c01.xml 域 c01 被创建(从 /etc/libvirt/qemu/c01.xml)[root@localhost ~]# virsh list --all Id    名称                         状态---------------------------------------------------- 4     c01                            running

挂起和恢复虚拟机

[root@localhost ~]# virsh suspend c01域 c01 被挂起[root@localhost ~]# virsh list --all Id    名称                         状态---------------------------------------------------- 4     c01                            暂停

挂起后,可以使用下面的命令恢复虚拟机。

[root@localhost ~]# virsh resume c01域 c01 被重新恢复[root@localhost ~]# virsh list --all Id    名称                         状态---------------------------------------------------- 4     c01                            running

配置虚拟机实例伴随宿主机自启动

[root@localhost ~]# virsh autostart c01域 c01标记为自动开始

导出虚拟机配置

这里为了下一步删除虚拟机,先导出一份xml配置文件

[root@localhost ~]# virsh dumpxml c01 > /etc/libvirt/qemu/c02.xml

删除和添加虚拟机

[root@localhost ~]# virsh shutdown c01域 c01 被关闭[root@localhost ~]# virsh undefine c01错误:取消定义域 c01 失败错误:所需操作无效:无法删除使用 1 快照的不活跃域

这个错误的原因可以明显看出来,因为之前我对c01做过快照,删除虚拟机必须要把快照删除后,在进行undefine

[root@localhost ~]# virsh shutdown c01[root@localhost ~]# virsh snapshot-delete c01 1533630255已删除域快照 1533630255[root@localhost ~]# virsh undefine c01域 c01 已经被取消定义

这里undefine后,c01.xml文件会消失,但是c01.img磁盘文件还在,所以要删除虚拟机,需要再把c01.img删除。

[root@localhost ~]# ls /etc/libvirt/qemu/autostart  c02.xml  networks[root@localhost ~]# ls /vdir/c01.img  c01.qcow2[root@localhost ~]# virsh list --all Id    名称                         状态----------------------------------------------------

通过备份的配置文件重新定义虚拟机

[root@localhost ~]# mv /etc/libvirt/qemu/c02.xml /etc/libvirt/qemu/c01.xml[root@localhost qemu]# virsh define c01.xml定义域 c01(从 c01.xml)[root@localhost qemu]# virsh list --all Id    名称                         状态---------------------------------------------------- -     c01                            关闭

KVM文件管理

通过文件管理可以直接查看、修改、复制虚拟机的内部文件。虚拟机磁盘文件有raw和qcow2两种格式。KVM虚拟机默认使用raw格式,raw格式性能最好,速度最快,但是缺点就是不支持一些新功能,如镜像、Zlib磁盘压缩,AES加密。针对两种格式的文件有不同工具,通过yum安装libguestfs-tools后产生的命令行工具,可以直接读取qcow2格式的磁盘文件,所以需要将raw磁盘文件转换成qcow2的格式。

转换raw格式磁盘文件至qcow2格式。

查看当前磁盘格式:

[root@localhost vdir]# qemu-img info /vdir/c01.img image: /vdir/c01.imgfile format: rawvirtual size: 20G (21474836480 bytes)disk size: 1.1G

将虚拟机关闭后,转换磁盘文件格式。

[root@localhost vdir]# virsh list --all Id    名称                         状态---------------------------------------------------- -     c01                            关闭[root@localhost vdir]# qemu-img convert -f raw -O qcow2 /vdir/c01.img /vdir/c01.qcow2[root@localhost vdir]# ls /vdir/c01.img  c01.qcow2

修改c01.xml配置文件。

[root@localhost vdir]# vim /etc/libvirt/qemu/c01.xml 
#这里的type从raw改成qcow2
#将源文件类型也要修改

通过yum安装libguestfs-tools后,可以使用一些命令行工具查看qcow2文件。

[root@localhost vdir]# yum install libguestfd-tools -y[root@localhost vdir]# virt-cat -a /vdir/c01.qcow2 /etc/sysconfig/network-scripts/ifcfg-eth0TYPE="Ethernet"PROXY_METHOD="none"BROWSER_ONLY="no"BOOTPROTO="dhcp"DEFROUTE="yes"IPV4_FAILURE_FATAL="no"IPV6INIT="yes"IPV6_AUTOCONF="yes"IPV6_DEFROUTE="yes"IPV6_FAILURE_FATAL="no"IPV6_ADDR_GEN_MODE="stable-privacy"NAME="eth0"DEVICE="eth0"ONBOOT="yes"MAC="52:54:00:AE:FC:8A"

虚拟机克隆

[root@localhost vdir]# virsh list --all Id    名称                         状态---------------------------------------------------- -     c01                            关闭#保证虚拟机已经关闭[root@localhost vdir]# virt-clone -o c01 -n c02 -f /vdir/c02.qcow2WARNING  设置图形设备端口为自动端口,以避免相互冲突。WARNING  当卷已经被全部分配后,需要的卷容量将超过可用池空间。(20480 M 需要的容量 > 12822 M 可用容量)正在分配 'c02.qcow2'                                          |  20 GB  00:00:32     成功克隆 'c02'。[root@localhost vdir]# virsh list --all Id    名称                         状态---------------------------------------------------- -     c01                            关闭 -     c02                            关闭

虚拟机快照

KVM虚拟机要使用镜像功能,磁盘格式必须为qcow2,下面对c01创建快照。

[root@localhost vdir]# virsh snapshot-create c01已生成域快照 1533777836

查看虚拟机快照版本信息。

[root@localhost vdir]# virsh snapshot-current c01
1533777836
shutoff
1533777836
.....省略

查看快照信息

[root@localhost vdir]# virsh snapshot-list c01 名称               生成时间              状态------------------------------------------------------------ 1533777836           2018-08-09 09:23:56 +0800 shutoff

恢复虚拟机至指定的快照状态。

[root@localhost vdir]# virsh snapshot-revert c01 1533777836

转载于:https://blog.51cto.com/10693404/2156596

你可能感兴趣的文章
win7下匿名ftp的搭建
查看>>
我的友情链接
查看>>
mysql 备份和恢复
查看>>
二维数组和指针
查看>>
VMware FT技术了解
查看>>
禁止root,处理错误 sudo must be owned by uid 0
查看>>
lsattr,chattr命令
查看>>
leetcode -- Sqrt(x)
查看>>
我的友情链接
查看>>
云桌面真有看上去那么美吗?
查看>>
搜库的垂直搜索还有多少机会?
查看>>
笔记本自带网卡坏了可以使用其他的替代
查看>>
网络装机和无人值守安装
查看>>
多线程编程学习总结
查看>>
分析core,是从案发现场,推导案发经过
查看>>
阿里巴巴持续投入,etcd 正式加入 CNCF
查看>>
日志服务Python消费组实战(二):实时分发数据
查看>>
DTCC 2019 | 阿里云TSDB: 教你解锁时序时空数据库的种种黑科技
查看>>
设置数据库为自动内存管理
查看>>
Tomcat从0到1(一入门)
查看>>