/ 2018-12-25
1. 磁盘管理
# 创建一块qcow2的虚拟硬盘(仅测试使用,无实际意义) [root@kvm data]# qemu-img create -f qcow2 oldboy.qcow2 2G [root@kvm data]# ls -l
查看当前虚拟机硬盘信息
[root@kvm ~]# qemu-img info /data/oldboy.raw image: /data/oldboy.raw file format: raw virtual size: 10G (10737418240 bytes) disk size: 1.1G
raw转qcow2格式:
# 参数说明 [root@kvm data]# qemu-img --help |grep convert qemu-img convert [-f fmt] [-O output_fmt] filename output_filename
转换原有磁盘格式
[root@kvm data]# qemu-img convert -f raw -O qcow2 oldboy.raw oldboy.qcow2
修改oldboy7 虚拟机配置文件
[root@kvm data]# virsh edit oldboy7 修改前: <disk type='file' device='disk'> <driver name='qemu' type='raw'/> <source file='/data/oldboy.raw'/> <target dev='vda' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </disk> 修改后: <disk type='file' device='disk'> <driver name='qemu' type='qcow2'/> <source file='/data/oldboy.qcow2'/> <target dev='vda' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </disk>
删除原磁盘文件
[root@kvm data]# \rm oldboy.raw
启动虚拟机
[root@kvm data]# virsh start oldboy7 [root@kvm data]# virsh list --all Id 名称 状态 ---------------------------------------------------- 22 oldboy7 running
2. KVM虚拟机添加硬盘
进入硬盘存放目录
[root@kvm ~]# cd /data
创建一块新的硬盘
[root@kvm data]# qemu-img create -f qcow2 oldboy7-add01.qcow2 5G Formatting 'oldboy7-add01.qcow2', fmt=qcow2 size=5368709120 encryption=off cluster_size=65536 lazy_refcounts=off
查看创建的硬盘信息
[root@kvm data]# qemu-img info oldboy7-add01.qcow2 image: oldboy7-add01.qcow2 file format: qcow2 virtual size: 5.0G (5368709120 bytes) disk size: 196K cluster_size: 65536 Format specific information: compat: 1.1 lazy refcounts: false
为虚拟机添加硬盘
[root@kvm data]# virsh attach-disk oldboy7 /data/oldboy7-add01.qcow2 vdb --live --cache=none --subdriver=qcow2 # 成功附加磁盘
# 成功附加磁盘
参数说明:
调整已添加硬盘的大小
[root@kvm data]# virsh --help |grep disk attach-disk #附加磁盘设备 detach-disk #分离磁盘设备
将已挂载的磁盘卸载下来
[root@kvm data]# virsh detach-disk oldboy7 vdb 成功分离磁盘
调整磁盘大小
# 使用参数 [root@kvm data]# qemu-img --help |grep resize resize [-q] filename [+ | -]size
增加1G容量
[root@kvm data]# qemu-img resize oldboy7-add01.qcow2 +1G Image resized. [root@kvm data]# qemu-img info oldboy7-add01.qcow2 image: oldboy7-add01.qcow2 file format: qcow2 virtual size: 6.0G (6442450944 bytes) disk size: 260K cluster_size: 65536 Format specific information: compat: 1.1 lazy refcounts: false
重新讲磁盘添加到虚拟机
[root@kvm data]# virsh attach-disk oldboy7 /data/oldboy7-add01.qcow2 vdb --live --cache=none --subdriver=qcow2
以下在虚拟机中操作
格式化磁盘
[root@oldboy7 ~]# mkfs.xfs /dev/vdb
挂载磁盘
[root@oldboy7 ~]# df -h |grep /dev/vdb /dev/vdb 6.0G 33M 6.0G 1% /opt
使用 xfs_growfs 刷新磁盘的信息
[root@oldboy7 ~]# xfs_growfs --help xfs_growfs: invalid option -- '-' Usage: xfs_growfs [options] mountpoint
3. 快照管理
注意:raw格式的磁盘无法创建快照
创建快照
[root@kvm data]# virsh snapshot-create oldboy7 已生成域快照 1516607756
查看主机快照列表
[root@kvm data]# virsh snapshot-list oldboy7 名称 生成时间 状态 ------------------------------------------------------------ 1516607756 2018-01-22 15:55:56 +0800 running # 注:该名称为unix时间戳(格林威治时间)
查看快照信息
[root@kvm data]# virsh snapshot-info oldboy7 --snapshotname 1516607756
登陆虚拟机,进行删除操作
[root@oldboy7 /]# ls -1|egrep -v 'proc|sys|run' |rm -rf
还原快照
[root@kvm data]# virsh snapshot-revert oldboy7 --snapshotname 1516607756
删除快照
[root@kvm data]# virsh snapshot-delete oldboy7 --snapshotname 1516607756
快照配置文件位置
[root@kvm data]# cd /var/lib/libvirt/qemu/snapshot/ [root@kvm snapshot]# tree . └── oldboy7 └── 1516607756.xml
4. kvm虚拟机克隆
复制一个虚拟机,需修改如 MAC 地址,名称等所有主机端唯一的配置。
虚拟机的内容并没有改变:virt-clone 不修改任何客户机系统内部的配置,它只复制磁盘和主机端的修改。所以像修改密码,修改静态 IP 地址等操作都在本工具复制范围内。如何修改此类型的配置,请参考 virt-sysprep。
克隆常用命令:
[root@kvm ~]# virt-clone --auto-clone -o oldboy7 WARNING 设置图形设备端口为自动端口,以避免相互冲突。 正在分配 ‘oldboy-clone.ra 4% [- ] 1.5 MB/s | 464 MB 01:50:18 ETA
参数说明:
(6)