kvm虚拟化学习笔记(四)之kvm虚拟机日常管理与配置


 

KVM虚拟机的管理主要是通过virsh命令对虚拟机进行管理。

1.  查看KVM虚拟机配置文件及运行状态

(1) KVM虚拟机默认配置文件位置: /etc/libvirt/qemu/

autostart目录是配置kvm虚拟机开机自启动目录。   
image

(2) virsh命令帮助

# virsh -help

或直接virsh命令和,再执行子命令。如下所示。

[root@node1 ~]# virsh   
欢迎使用 virsh,虚拟化的交互式终端。 

输入:'help' 来获得命令的帮助信息   
'quit' 退出 

virsh # help   
……

(3) 查看kvm虚拟机状态

# virsh list --all

image

2.  KVM虚拟机开机

# virsh start oeltest01

image

3. KVM虚拟机关机或断电

(1) 关机

默认情况下virsh工具不能对linux虚拟机进行关机操作,linux操作系统需要开启与启动acpid服务。在安装KVM linux虚拟机必须配置此服务。

# chkconfig acpid on   
# service acpid restart

virsh关机

# virsh shutdown oeltest01

image

(2) 强制关闭电源

# virsh destroy wintest01

image

4. 通过配置文件启动虚拟机

# virsh create /etc/libvirt/qemu/wintest01.xml

image

5. 配置开机自启动虚拟机

# virsh autostart oeltest01

image

autostart目录是kvm虚拟机开机自启动目录,可以看到该目录中有KVM配置文件链接。

6. 导出KVM虚拟机配置文件

# virsh dumpxml wintest01 > /etc/libvirt/qemu/wintest02.xml 

image

KVM虚拟机配置文件可以通过这种方式进行备份。

7. 添加与删除KVM虚拟机

(1)  删除kvm虚拟机

# virsh undefine wintest01 

说明:该命令只是删除wintest01的配置文件,并不删除虚拟磁盘文件。如下图所示。

image

(2)  重新定义虚拟机配置文件

通过导出备份的配置文件恢复原KVM虚拟机的定义,并重新定义虚拟机。

# mv /etc/libvirt/qemu/wintest02.xml /etc/libvirt/qemu/wintest01.xml 

# virsh define /etc/libvirt/qemu/wintest01.xml 

231742747.jpg

8. 编辑KVM虚拟机配置文件

# virsh edit wintest01 

virsh edit将调用vi命令编辑/etc/libvirt/qemu/wintest01.xml配置文件。也可以直接通过vi命令进行编辑,修改,保存。

可以但不建议直接通过vi编辑。

image

[root@node1 qemu]# vi /etc/libvirt/qemu/wintest01.xml 

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
<!--
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 console 控制台管理linux虚拟机

配置virsh console见下文

kvm虚拟化学习笔记(六)之kvm虚拟机控制台登录配置

# virsh console oeltest01 

 

10. 其它virsh命令

(1) 挂起服务器

# virsh suspend oeltest01 

image

(2) 恢复服务器

# virsh  resume oeltest01 

image

virsh命令丰富。可以执行各种维护任务,本文只是从维护与管理的角度例举了常用的命令,为该命令的使用提供一个思路。


你可能感兴趣的:(kvm)