kvm虚拟机日常管理
一,查看KVM虚拟机配置文件及运行状态1,KVM虚拟机默认的配置文件路径:/etc/libvirt/qemu/
而autostart目录是配置kvm虚拟机开机自启动的目录。
1
2
3
4
5
6
7
8
9
# cd /etc/libvirt/qemu
# ll
total 24
drwxr-xr-x 2 root root 4096 Feb2 15:03 autostart ###开机自启动目录
-rw------- 1 root root 2998 Feb2 13:54 hadoop1.xml
-rw------- 1 root root 2988 Feb2 11:39 hadoop2.xml
-rw------- 1 root root 2965 Feb2 14:03 hadoop4.xml
drwx------ 3 root root 4096 Jan 26 16:47 networks
-rw------- 1 root root 3036 Feb2 15:52 win7.xml
2,virsh命令帮助
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# virsh --help
virsh ... [<command_string>]
virsh ... <command>
options:
-c | --connect=URI hypervisor connection URI
-r | --readonly connect readonly
-d | --debug=NUM debug level
-h | --help this help
-q | --quiet quiet mode
-t | --timing print timing information
-l | --log=FILE output logging to file
-v short version
-V long version
--version[=TYPE] version, TYPE is short or long (default short)
-e | --escape <char> set escape sequence for console
或者直接输入virsh,进入虚拟化交互式终端,输入exit或quit进行退出
1
2
3
4
5
# virsh
Welcome to virsh, the virtualization interactive terminal.
Type:'help' for help with commands
'quit' to quit
virsh #
3,查看kvm虚拟机状态
1
2
3
4
5
6
7
8
# virsh list --all
Id Name State
----------------------------------------------------
21 win7 running
23 hadoop4 running
- hadoop1 shut off
- hadoop2 shut off
- oeltest01 shut off
4,虚拟机的开机:
1
2
3
4
5
6
7
# virsh start hadoop1
Domain hadoop1 started
# virsh list --all
Id Name State
----------------------------------------------------
21 win7 running
24 hadoop1 running
5,虚拟机的关机或断电
(1)默认情况下virsh工具是不能对Linux虚拟机进行关机操作的,需要开启acpid服务。在安装kvm Linux虚拟机必须配置此服务。
1
2
#chkconfig acpid on
#service acpid restart
然后使用virsh进行关机
1
2
# virsh shutdown hadoop1
Domain hadoop1 is being shutdown
(2)强制关闭电源(就是直接断电,重要的业务不要这么操作)
1
2
# virsh destroy hadoop4
Domain hadoop4 destroyed
6,通过配置文件启动虚拟机
1
2
# virsh create /etc/libvirt/qemu/hadoop4.xml
Domain hadoop4 created from /etc/libvirt/qemu/hadoop4.xml
7,配置开机自启动虚拟机(autostart目录是kvm虚拟机开机自启动目录,可以看到该目录中有kvm配置文件的链接)
1
2
3
4
5
6
# virsh autostart hadoop4
Domain hadoop4 marked as autostarted
# ll
total 0
lrwxrwxrwx 1 root root 29 Feb2 17:09 hadoop4.xml -> /etc/libvirt/qemu/hadoop4.xml
lrwxrwxrwx 1 root root 26 Feb2 15:03 win7.xml -> /etc/libvirt/qemu/win7.xml
8,导出kvm虚拟机配置文件,可以通过这种方式进行配置文件的备份。
1
2
3
4
5
# virsh dumpxml hadoop4 > /etc/libvirt/qemu/hadoop4.bak.xml
# ll
total 32
drwxr-xr-x 2 root root 4096 Feb2 17:09 autostart
-rw-r--r-- 1 root root 1 Feb2 17:13 hadoop1.bak.xml
9,删除虚拟机,由于kvm虚拟机是由配置文件和磁盘文件组成,如果删除的话,把两个文件都要删除
1
2
3
4
5
6
7
8
9
10
11
12
13
# virsh undefine hadoop4 ###删除hadoop.xml文件,但没有删除磁盘文件
Domain hadoop4 has been undefined
# ll
total 28
drwxr-xr-x 2 root root 4096 Feb2 17:18 autostart
-rw-r--r-- 1 root root 1 Feb2 17:13 hadoop1.bak.xml
-rw------- 1 root root 2998 Feb2 13:54 hadoop1.xml
-rw------- 1 root root 2988 Feb2 11:39 hadoop2.xml
-rw-r--r-- 1 root root 3205 Feb2 17:13 hadoop4.bak.xml
drwx------ 3 root root 4096 Jan 26 16:47 networks
-rw------- 1 root root 3036 Feb2 15:52 win7.xml
# rm -rf /images/test/hadoop4.img ###删除磁盘文件
#
10,重新定义虚拟机配置文件。可通过刚才导出的配置文件来恢复虚拟机,并重新定义
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# mv hadoop4.bak.xml hadoop4.xml ###恢复配置文件
# ll
total 28
drwxr-xr-x 2 root root 4096 Feb2 17:18 autostart
-rw-r--r-- 1 root root 1 Feb2 17:13 hadoop1.bak.xml
-rw------- 1 root root 2998 Feb2 13:54 hadoop1.xml
-rw------- 1 root root 2988 Feb2 11:39 hadoop2.xml
-rw-r--r-- 1 root root 3205 Feb2 17:13 hadoop4.xml
drwx------ 3 root root 4096 Jan 26 16:47 networks
-rw------- 1 root root 3036 Feb2 15:52 win7.xml
# virsh define /etc/libvirt/qemu/hadoop4.xml###重新定义配置文件
Domain hadoop4 defined from /etc/libvirt/qemu/hadoop4.xml
# virsh list --all
Id Name State
----------------------------------------------------
21 win7 running
24 hadoop1 running
25 hadoop2 running
- hadoop4 shut off ###定义生效
- oeltest01 shut off
11,编辑kvm虚拟机配置文件
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
72
73
74
75
76
# virsh edit hadoop4
<domain type='qemu'>
<name>hadoop4</name>
<uuid>586b3cae-943f-d283-d8e7-ed62b01bfa34</uuid>
<memory unit='KiB'>1048576</memory>
<currentMemory unit='KiB'>1048576</currentMemory>
<vcpu placement='static'>1</vcpu>
<os>
<type arch='x86_64' machine='rhel6.6.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='/images/test/hadoop4.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' model='ich9-ehci1'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x7'/>
</controller>
<controller type='usb' index='0' model='ich9-uhci1'>
<master startport='0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0' multifunction='on'/>
</controller>
<controller type='usb' index='0' model='ich9-uhci2'>
<master startport='2'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x1'/>
</controller>
<controller type='usb' index='0' model='ich9-uhci3'>
<master startport='4'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x2'/>
</controller>
<controller type='ide' index='0'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
</controller>
<interface type='network'>
<mac address='52:54:00:fe:f5:a3'/>
<source network='default'/>
<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='5914' 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='0x05' function='0x0'/>
</memballoon>
</devices>
</domain>
不过也可以直接通过vi /etc/libvirt/qemu/hadoop4.xml也是可以修改的,但不建议。
页:
[1]