第6章 虚拟化管理工具2ppt课件.ppt
《第6章 虚拟化管理工具2ppt课件.ppt》由会员分享,可在线阅读,更多相关《第6章 虚拟化管理工具2ppt课件.ppt(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、在此输入您的封面副标题第6章 虚拟化管理工具2第第6章章 虚拟化管理工具虚拟化管理工具虚拟化技术虚拟化技术第第1节节 libvirt概述概述第第2节节 virsh简介简介第第3节节 libvirt的启动与配置的启动与配置第第4节节 libvirt域的域的XML配置配置第第5节节 virsh常用命令常用命令第第6节节 libvirt API简介简介第第7节节 libvirt API使用实例使用实例第第8节节 virt-manager本章内容本章内容目录6.1 libvirt概述概述6.1.1 libvirt简介简介Libvirt是一个软件集合,便于使用者管理虚拟机和其他是一个软件集合,便于使用者
2、管理虚拟机和其他虚拟化功能,比如存储和网络接口管理等等。这些软件包虚拟化功能,比如存储和网络接口管理等等。这些软件包括一个括一个API库、一个库、一个daemon(libvirtd)和一个命令行工)和一个命令行工具(具(virsh)。)。libvirt本身构建于一种抽象的概念之上。它为受支持的本身构建于一种抽象的概念之上。它为受支持的虚拟机监控程序实现的常用功能提供通用的虚拟机监控程序实现的常用功能提供通用的API。为包括为包括Xen在内的各种虚拟化工具提供一套方便、可靠在内的各种虚拟化工具提供一套方便、可靠的编程接口,用一种单一的方式管理多种不同的虚拟化提的编程接口,用一种单一的方式管理多种
3、不同的虚拟化提供方式和供方式和hypervisor(管理工具),避免学习、使用不同(管理工具),避免学习、使用不同hypervisor的特定工具。的特定工具。libvirt支持的功能虚拟机管理包括不同的领域生命周期操作,比如:启动、停止、暂停、保存、恢复和迁移。支持多种设备类型的热插拔操作,包括:磁盘、网卡、内存和CPU。远程机器支持只要机器上运行了libvirt daemon,包括远程机器,所有的libvirt功能就都可以访问和使用。支持多种网络远程传输,使用最简单的SSH,不需要额外配置工作。存储管理任何运行了libvirt daemon的主机都可以用来管理不同类型的存储。创建不同格式的文
4、件镜像、挂接NFS共享等,因为libvirt可以远程工作,所有这些都可以通过远程主机使用。网络接口管理任何运行了libvirt daemon的主机都可以用来管理物理和逻辑的网络接口。虚拟NAT和基于路由的网络任何运行了libvirt daemon的主机都可以用来管理和创建虚拟网络。libvirt支持的功能支持的功能libvirt架构架构6.1.2 libvirt的编译和安装的编译和安装可以通过多种方式安装libvirt。普通用户如果只是使用libvirt,可以直接通过apt-get安装,以apt-get的方式安装libvirt时,只需执行“apt-get install libvirt-dev
5、”命令即可。6.1.2 libvirt的编译和安装的编译和安装libvirt的源码安装步骤:(1)下载libvirt源代码(2)配置libvirt(3)编译libvirt(4)安装libvirt(5)查看已经安装的libvirt6.2 virsh简介简介virsh通过调用libvirt API来实现虚拟化的管理,是一个完全在命令行文本模式下运行的工具,系统管理员可以通过脚本程序方便的进行虚拟化的自动部署和管理。在使用时,直接执行名virsh即可获得一个特殊的shell-virsh,在这个shell里面可以直接执行virsh的常用命令实现与本地的libvirt交互,还可以通过connect命令连
6、接远程的libvirt,与之交互。virsh管理虚拟化操作时,可以使用两种工作模式,一种是交互模式,直接连接到相应的Hypervisor上,在命令行输入virsh命令执行操作并查看返回结果,可以使用“quit”命令退出连接;另外一种是非交互模式,在终端输入一个virsh命令,建立到指定的一个URI的一个连接,执行完成后将结果返回到当前的终端并同时断开连接。virsh常用命令help 显示该命令的帮助quit结束virsh,回到shell终端connect连接到指定的虚拟机服务器create定义并启动一个新的虚拟机destroy删除一个虚拟机start 开启(已定义过的)的虚拟机(不是启动)de
7、fine从xml文件定义一个虚拟机undefine取消定义的虚拟机dumpxml转储虚拟机的设置值list列出虚拟机reboot重新启动虚拟机save保存虚拟机的状态restore恢复虚拟机的状态suspend暂停虚拟机的执行resume继续执行虚拟机dump将虚拟机的内核转储到指定的文件,以便进行分析和排错shutdown 关闭虚拟机setmem修改内存的大小setmaxmem设置内存的最大值setvcpus修改虚拟处理器的个数6.3 libvirt 的启动与配置的启动与配置6.3.1 libvirt的启动的启动libvirtd是libvirt虚拟化管理工具的服务器端的守护程序,只要libv
8、irtd进程启动(即libvirt-bin服务启动),就代表启动了libvirt。如果要让某个节点能够用libvirt进行管理(无论是本地还是远程管理),都需要在这个节点上运行着libvirtd这个守护进程,以便让其他上层管理工具可以连接到该节点,libvirtd负责执行其他管理工具发送给它的虚拟化管理操作指令。而libvirt的客户端工具(包括virsh、virt-manager等)可以连接到本地或远程的libvirtd进程,以便管理节点上的客户机(启动、关闭、重启、迁移等)、收集节点上的宿主机和客户机的配置和资源使用状态。在Ubuntu14.04中libvirtd作为一个服务(servic
9、e)配置在系统中的,可以通过service命令来对其进行操作(实际是通过/etc/init.d/libvirt-bin服务脚本来实现的)。libvirtd是一个可执行程序,不仅可以使用“service”命令调用它作为服务来运行,而且可以单独地运行libvirtd命令来使用它。libvirtd命令行主要有如下几个参数:-d,或 -daemon表示让 libvirtd 作为守护进程(daemon)在后台运行。-f,或 -config 指定libvirtd的配置文件为FILE,而不是使用默认值(通常是/etc/libvirt/libvirtd.conf)。-l,或 -listen 开启配置文件中配置
10、的 TCP/IP 连接。-p,或 -pid-file 将libvirtd进程的PID写入到文件中,而不是使用默认值(通常是/var/run/libvirtd.pid)。-t,或-timeout 设置对libvirtd连接的超时时间为秒。-v,或 -verbose让命令输出详细的输出信息。特别是运行出错时,详细的输出信息便于用户查找原因。-version 显示 libvirtd程序的版本信息。6.3.2 libvirt 的配置文件的配置文件libvirt.conf 文件是用于配置一些常用 libvirt 连下面简单介绍其中几个重要的配置文件和目录:接(通常是远程连接)的别名,和Linux中的普通
11、配置文件一样,该配置文件中以井号(#)开头的行是注释libvirtd.conf 是 libvirt 的守护进程 libvirtd 的配置文件,修改后需要让libvirtd重新加载配置文件(或重启libvirtd)才会生效。qemu.conf 是 libvirt 对QEMU的驱动的配置文件,包括 VNC、SPICE等和连接它们时采用的权限认证方式的配置,也包括内存大页、SELinux、Cgroups等相关配置。qemu 目录下是存放使用QEMU驱动的域的配置文件6.4 libvirt 域的域的XML配置文件配置文件6.4.1 配置文件格式配置文件格式运行虚拟机有多种方式,例如可以使用qemu-s
12、ystem-x86命令来运行虚拟机。另外,还可以使用libvirt的virsh命令从XML文件定义来运行虚拟机,可以将qemu-system-x86命令的参数使用XML直接定义出来,然后libvirt加载并解析该XML配置文件,产生相应的QEMU命令,运行虚拟机。libvirt在对虚拟化操作进行管理时采用XML格式的配置文件,其中最主要的就是对虚拟机(即域)的配置管理。6.4.2 域的配置域的配置在该配置文件中,中间的内容为注释部分,最外层是标签。所有其他的标签都在和之间,表明该配置文件是一个域的配置文件。标签有两个属性,一个是“type”属性,一个是“id”属性。“type”属性指定运行该虚
13、拟机的Hypervisor,值是具体的驱动名称,例如“xen”,“kvm”,“qemu”等。第二个属性“id”属性是一个唯一标识虚拟机的唯一整数标识符,如果不设置该值,libvirt会按顺序分配一个最小的可用id。在标签内,有一些通用的域的元数据,表明着当前的域的配置信息。6.4.2 域的配置域的配置标签内为虚拟机的简称,只能由数字、字母组成,并且在一台主机内名称要唯一。name属性定义的虚拟机的名字在使用virsh进行管理时使用。标签内为虚拟机的全局唯一标识符,在同一个宿主机上,各个客户机的名称和uuid都必须是唯一的。uuid值的格式符合RFC4122标准,例如160ec4c8-407f-
14、4428-bdc2-8a9851d51225,如果在定义或创建虚拟机时忘记设置uuid,libvirt会随机生成一个uuid值。标签和标签都属于的元数据。除此之外,还有其他的元数据标签,例如、和等。6.4.3 内存、内存、CPU、启动顺序等配置、启动顺序等配置标签内内容表示客户机最大可使用的内容,“unit”属性表示使用的单位是“KiB”,即KB,因此,内存大小为1048576KB,即1GB。标签内内容表示启动时分配给客户机使用的内存,这里,大小也是1GB。在使用QEMU时,一般将两者设置为相同的值。标签内表示客户机中vCPU的个数,这里为两个。标签内定义客户机系统类型及客户机硬盘和光盘的启动
15、顺序。其中标签的配置表示客户机类型是“hvm”类型。在KVM中,客户机类型总是“hvm”。“hvm”表示Hardware Virtual Machine,硬件虚拟机,表示在硬件辅助虚拟化技术(Inte VT或者AMD-V)等的支持下不需要更改客户机操作系统就可以启动客户机的概念。“arch”属性表示系统架构是“x86_64”,机器类型是“pc-i440fx-trusty”。标签用于设置客户机启动时的设备顺序,设备有“cdrom”即光盘,“hd”即硬盘两种,按照在配置文件中的先后顺序进行启动,即先启动光盘后启动硬盘。标签内定义Hypervisor对客户机特定的CPU或者是其他硬件的特性的打开和关
16、闭。这里打开了ACPI,APIC,PAE等特性。标签定义时钟设置,客户机的时钟通常由宿主机的时钟进行初始化。大多数的操作系统系统硬件时钟和UTC保持一致,这也是默认的。“offset”属性的值为“localtime”时表示在客户机启动时,时钟和宿主机时区保持同步。 d e s t r o y ,restart和 destroy都是libvirt配置文件中对事件的配置。并不是所有的Hypervisor都支持全部的事件或者动作。当用户请求一个“poweroff”事件时触发标签内的动作发生。同样,当用户请求“reboot”事件时触发标签内容的动作发生,依次类推。每一个标签内的动作都有四种:destr
17、oy、restart、preserve和rename-restart。其中destroy表示该域将完全终止并释放所有的资源。restart表示该域将终止但使用同样的配置重新启动。6.4.4 设备配置设备配置标签内放置着客户机所有的设备配置。最外层是标签,标签内放置该设备的具体信息。标签指明该设备的名字,由字母、数字和下划线组成。标签定义节点所具有的能力,它的“type”属性指明设备类型,设备的类型决定了该标签的子标签。 标签内容放置使用的设备模型模拟器的绝对路径。标签表示对域的存储配置。6.4.5 其他配置其他配置表示提供tablet这种类型的设备,让光标可以在客户机获取绝对位置定位。表示会让
18、QEMU模拟PS2接口的鼠标。标签内放置连接到客户机的图形显示方式的配置。“type=vnc”表示通过VNC的方式连接到客户机,type类型的值可以是“sdl”,“vnc”,“rdp”或者是“desktop”。“port=-1”端口属性指定使用的TCP端口号,值为“-1”时表示端口由libvirt自动分配。“autoport”指示是否使用libvirt自动获取TCP端口号。“listen”属性表示服务器监听的IP地址。“keymap”属性表示使用的键映射。可以在标签内部使用标签指明服务器监听的具体信息。标签内放置的是显卡配置,对于,其中,标签表示客户机模拟的显卡类型,“type”属性的值可以为
19、vga, cirrus, vmvga, xen, vbox, or qxl等。vram表示虚拟显卡的显存容量,单位为KB,heads的值表示显示屏幕的序号。KVM虚拟机的默认配置是cirrus类型,9216KB显存,使用在1号屏幕上。表示该显卡在客户机中的PCI设备编号值。标签放置内存的ballooning相关的配置,即客户机的内存气球设备。属性“model=virtio”表示使用virtio-balloon驱动实现客户机的ballooning调节。表示该设备在客户机中的PCI设备编号值。6.5 virsh常用命令常用命令virsh工具基于开源libvirt管理API,使用virsh命令行工具
20、能够大大简化Hypervisor和虚拟机管理工作。通过virsh命令,管理员能够创建、编辑、迁移和关闭虚拟机以及一些其他操作。事实上virsh包含大量命令,因此不得不将其分为多个类别,比如域相关命令、存储池相关命令和快照相关命令等。6.5.1 通用命令通用命令这个类别中的命令并不只适用于虚拟机,而是能够帮助完成一些通用管理任务。help:获取可用virsh命令的完整列表,并且分为不同的种类。管理员可以指定列表中的特定组来缩小查询范围,其中包含每个命令组的简要描述;或者查询特定命令以获取更为详细的信息,包括名称、简介、描述以及选项等。list:管理员可以使用这个命令获取现有虚拟机的各种信息以及当
21、前状态。根据需求的不同,管理员可以使用-inactive或者-all选项进行筛选。命令执行结果中将会包含虚拟机ID、名称以及当前状态,可能的状态包括运行、暂停或者崩溃等。connect:管理员可以使用这条命令连接到本地hypervisor,也可以通过统一资源标识符来获取远程访问权限。其所支持的常见格式包括xen:/(默认)、qemu:/system、qemu:/session以及lxc:/等。如果想要建立只读连接,需要在命令中添加-readonly选项。6.5.2 域相关命令域相关命令使用这些virsh命令直接操作特定虚拟机。create:virsh create 。根据域的XML配置文件创建
22、一个虚拟机。当虚拟机创建好以后,会直接进入运行状态。但通过create命令创建的虚拟机关闭以后,会直接被删除。desc:显示或者更改虚拟机的描述和标题。相关选项包括-live、-config、-edit和-title。需要注意的是如果同时使用-live 和-config,那么-config拥有更高的优先级。同样,建议保证虚拟机标题尽量简洁,虽然这并不是一项强制规定。save:这条命令将会关闭虚拟机并且将数据保存到文件中。这样就能够释放之前分配给虚拟机的内存,因为这些虚拟机不再运行在系统上。如果想要查看具体的保存过程,可以使用-verbose选项。如果想要恢复之前保存的虚拟机,可以使用resto
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第6章 虚拟化管理工具2ppt课件 虚拟 管理工具 ppt 课件
限制150内