最近在学习KVM,进程不算太快,近期整理了一下KVM虚拟机技术学习笔记,现在就分享给大家,也给大家做个参考。有需要的朋友可以来了解一下。
KVM虚拟机的管理主要是通过virsh命令对虚拟机进行管理。
1. 查看KVM虚拟机配置文件及运行状态
(1) KVM虚拟机默认配置文件位置: /etc/libvirt/qemu/
autostart目录是配置kvm虚拟机开机自启动目录。
(2) virsh命令帮助
# virsh -help
或直接virsh命令和,再执行子命令。如下所示。
[root@node1 ~]# virsh
欢迎使用 virsh,虚拟化的交互式终端。
输入:'help' 来获得命令的帮助信息
'quit' 退出
virsh # help
……
(3) 查看kvm虚拟机状态
# virsh list --all
2. KVM虚拟机开机
# virsh start oeltest01
3. KVM虚拟机关机或断电
(1) 关机
默认情况下virsh工具不能对linux虚拟机进行关机操作,linux操作系统需要开启与启动acpid服务。在安装KVM linux虚拟机必须配置此服务。
# chkconfig acpid on
# service acpid restart
virsh关机
# virsh shutdown oeltest01
(2) 强制关闭电源
# virsh destroy wintest01
4. 通过配置文件启动虚拟机
# virsh create /etc/libvirt/qemu/wintest01.xml
5. 配置开机自启动虚拟机
# virsh autostart oeltest01
autostart目录是kvm虚拟机开机自启动目录,可以看到该目录中有KVM配置文件链接。
6. 导出KVM虚拟机配置文件
# virsh dumpxml wintest01 > /etc/libvirt/qemu/wintest02.xml
KVM虚拟机配置文件可以通过这种方式进行备份。
7. 添加与删除KVM虚拟机
(1) 删除kvm虚拟机
# virsh undefine wintest01
说明:该命令只是删除wintest01的配置文件,并不删除虚拟磁盘文件。如下图所示。
(2) 重新定义虚拟机配置文件
通过导出备份的配置文件恢复原KVM虚拟机的定义,并重新定义虚拟机。
# mv /etc/libvirt/qemu/wintest02.xml /etc/libvirt/qemu/wintest01.xml
# virsh define /etc/libvirt/qemu/wintest01.xml
8. 编辑KVM虚拟机配置文件
# virsh edit wintest01
virsh edit将调用vi命令编辑/etc/libvirt/qemu/wintest01.xml配置文件。也可以直接通过vi命令进行编辑,修改,保存。
可以但不建议直接通过vi编辑。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
[root@node1 qemu]# vi /etc/libvirt/qemu/wintest01.xml <!-- WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT ARE LIKELY TO BE OVERWRITTEN AND LOST. Changes to this xml configuration should be made using: virsh edit wintest01 or other application using the libvirt API. --> < domain type = 'kvm' > < name >wintest01</ name > < uuid >fe31ea48-7d6a-f3cb-cede-2f9bd9dec2bd</ uuid > < memory unit = 'KiB' >524288</ memory > < currentMemory unit = 'KiB' >524288</ currentMemory > < vcpu placement = 'static' >2</ vcpu > < os > < type arch = 'x86_64' machine = 'rhel6.4.0' >hvm</ type > < boot dev = 'hd' /> </ os > < features > < acpi /> < apic /> < pae /> </ features > < clock offset = 'utc' /> < on_poweroff >destroy</ on_poweroff > < on_reboot >restart</ on_reboot > < on_crash >restart</ on_crash > < devices > < emulator >/usr/libexec/qemu-kvm</ emulator > < disk type = 'file' device = 'disk' > < driver name = 'qemu' type = 'raw' cache = 'none' /> < source file = '/data/wintest01.img' /> < target dev = 'hda' bus = 'ide' /> < address type = 'drive' controller = '0' bus = '0' target = '0' unit = '0' /> </ disk > < disk type = 'block' device = 'cdrom' > < driver name = 'qemu' type = 'raw' /> < target dev = 'hdc' bus = 'ide' /> < readonly /> < address type = 'drive' controller = '0' bus = '1' target = '0' unit = '0' /> </ disk > < controller type = 'usb' index = '0' > < address type = 'pci' domain = '0x0000' bus = '0x00' slot = '0x01' function = '0x2' /> </ controller > < controller type = 'ide' index = '0' > < address type = 'pci' domain = '0x0000' bus = '0x00' slot = '0x01' function = '0x1' /> </ controller > < interface type = 'bridge' > < mac address = '52:54:00:2b:2f:fe' /> < source bridge = 'br0' /> < address type = 'pci' domain = '0x0000' bus = '0x00' slot = '0x03' function = '0x0' /> </ interface > < serial type = 'pty' > < target port = '0' /> </ serial > < console type = 'pty' > < target type = 'serial' port = '0' /> </ console > < input type = 'mouse' bus = 'ps2' /> < graphics type = 'vnc' port = '5911' autoport = 'no' listen = '0.0.0.0' > < listen type = 'address' address = '0.0.0.0' /> </ graphics > < video > < model type = 'cirrus' vram = '9216' heads = '1' /> < address type = 'pci' domain = '0x0000' bus = '0x00' slot = '0x02' function = '0x0' /> </ video > < memballoon model = 'virtio' > < address type = 'pci' domain = '0x0000' bus = '0x00' slot = '0x04' function = '0x0' /> </ memballoon > </ devices > < seclabel type = 'none' /> </ domain > |
9. 其它virsh命令
(1) 挂起服务器
# virsh suspend oeltest01
(2) 恢复服务器
# virsh resume oeltest01
virsh命令丰富。可以执行各种维护任务,本文只是从维护与管理的角度例举了常用的命令,为该命令的使用提供一个思路。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。