资源预览内容
第1页 / 共11页
第2页 / 共11页
第3页 / 共11页
第4页 / 共11页
第5页 / 共11页
第6页 / 共11页
第7页 / 共11页
第8页 / 共11页
第9页 / 共11页
第10页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
云计算基础平台搭建与应用课程教案授课题目: 第12讲 OpenStack的镜像管理专家Glance教学时数:2授课类型:R理论课 R 实践课教学目的、要求:了解Glance的功能了解Glance的组件构成及功能了解Glance的基本工作过程能够安装配置Glance镜像组件教学重点: Glance的组件构成及基本工作过程安装配置Glance服务 教学方法和手段: 通过微课讲解跟着视频实作教学条件: 网课参考资料:云计算基础平台搭建与应用课程教案教学内容及过程旁批课前准备:检查自己前面的系统配置是否完全完成,必须完成后才能进入这一段学习。教学引入:IaaS云平台对外提供云主机服务,这些云主机和我们自己的电脑一样,需要安装操作系统。在OpenStack中负责操作系统镜像管理、快照拍摄等工作的组件就是Glance。基于OpenStack构建的IaaS云平台主要对外提供租用虚拟机服务。虚拟机和电脑一样需要安装操作系统才能够使用。虚拟机的操作系统是以镜像(Image)的方式存在,由Glance组件进行管理,Glance组件可以实现对镜像的检索、创建、上传、删除等操作。教学内容与教学设计:12.1 Glance的基本概念第1篇12.1.1 镜像服务(Image service)(1) 什么是镜像(Image)镜像(Image)是云平台中虚拟机的操作系统安装与备份解决方案。在传统IT环境下,我们是如何给计算机安装一个操作系统呢?用安装CD或者U盘安装?或者用Ghost等克隆工具从克隆文件中恢复?这些方法都存在安装效率低、时间长、安装或者恢复完成后要重新配置网络环境等。而云计算IaaS平台可能有成千上万人同时使用,需要一个几秒钟之内完成系统安装并可以根据需求动态批量产生安装好系统的虚拟机、秒级备份和还原的解决方案,这就是镜像(Image)提供的服务。镜像(Image)是一个模板,里面包含了基本的操作系统和其他软件,类似于利用Ghost克隆系统,只是它更加高效。举例来说,有家公司需要为每个员工在云端分配一个虚拟机用于办公,这个虚拟机一般需要一个Win10系统再加office办公软件。那么在OpenStack平台上是进行如下操作的: 手动为一个虚拟机安装好一个系统这个安装过程和传统的安装电脑操作系统并没有太大不同,也需要手工安装,会花去相当长时间。 获得虚拟机镜像(Image)对安装好的虚拟机执行拍摄快照(Snapshot),这就得到了一个镜像(Image)。得到镜像后,其后的工作就和传统安装系统非常的不同了。 利用镜像创建新的虚拟机实例(Instance)当需要一个或者多个新的虚拟机时,只要用该Image去生成一个或者多个虚拟机实例(Instance)就可以了。这一步执行非常的快,可以在秒级时间里同时批量生成多个虚拟机。 在已有实例基础上拍摄快照获得镜像如果现在需要新安装一套软件而不想做的新安装系统操作,此时只需要在任意员工现有的虚拟机上安装好该软件,然后对该虚拟机执行拍摄快照(Snapshot),得到新的镜像(Image),以后直接使用新Image创建虚拟机就可以了。(2) 镜像服务组件GlanceGlance是镜像服务(Image service)的项目代号,是OpenStack的核心组件。它和KeyStone一样是一个支持WSGI协议的Web服务,用户可以通过Web访问或者用命令行操作Glance对Image进行管理,其功能包括虚拟机镜像和快照的注册、检索、删除、权限管理等。Glance支持多种方式存储Image,包括普通的文件系统、Swift(OpenStack的对象存储)、S3(亚马逊云对象存储格式)等。它主要负责对两种镜像数据的管理: 镜像元数据(metadata):存在数据库中的关于镜像的相关信息,如文件名、大小、状态等字符串信息,用于快速检索。 镜像数据:即镜像文件本身,它存储于后端存储里,所谓的后端存储就是第三方的存储系统,如默认的文件系统、Swift、S3、Cinder等。12.1.2 Glance的组件的架构如图12.1所示,在OpenStack Train版中Glance组件为V2版,它由应用接口和存储接口两个模块构成。图12.1 Glance基本架构(1) 应用接口(Glance-API)提供对外服务接口。如果服务请求是对元数据的操作,则与数据库进行交互,实现检索、存储、获取镜像的元数据。如果是对镜像(Image)数据的操作将会通过存储接口(Glance Store)调用后端存储(Store BackEnd)的相应驱动,完成具体镜像文件的上传、删除、查询等操作。 (2) 存储接口(Glance Store)它是一个接口层,提供镜像文件存储和查询的接口。它里面包含有对镜像文件的各种操作方法,但是具体的镜像文件操作实施则需要调用后端存储(Store BackEnd)中的具体文件系统(Swift、S3、Cinder等)来处理。(3) 后端存储(Store BackEnd)后端存储不属于Glance的组件,它独立于Glance。Glance自己并不存储镜像,真正的镜像文件是存放在后端存储中的,Glance支持多种后端存储,如表12.1所示为部分支持的存储系统。表12.1 Glance支持的部分存储系统支持的存储系统简介本地文件系统(File System)这是默认配置,在本地的文件系统里进行保存镜像。GridFS一种文件存储系统,使用MongoDB数据库存储镜像。Ceph RBDCeph分布式系统的RBD块存储系统。Amazon S3亚马逊云的S3存储系统。Sheepdog专为QEMU/KVM提供的一个分布式存储系统。CinderOpenStack的块存储系统。SwiftOpenStack的对象存储系统。具体OpenStack使用哪种存储后端,可以在“/etc/glance/glance-api.conf”这个配置文件中根据具体需要指定。12.1.3 Glance的工作流程图12.2 请求镜像流程示例如图12.2所示,这是计算组件(Nova)在生成虚拟机实例时从Glance获得镜像的一个过程。所有对Glance合法的请求都会通过Glance-API这个入口,如果是对镜像元数据(Image metadata)的处理请求,Glance-API会与数据库(Glance DB)交互进行处理。而所有的镜像文件操作都是通过调用存储接口(Glance Store)执行的,它负责与外部存储端和(或)本地文件系统的交互。12.1.4 磁盘(Disk)与容器(Container)(1) 磁盘格式(Disk format)Glance中的磁盘格式指的是虚拟机镜像的磁盘格式,可以直观理解为镜像文件的后缀名。在虚拟机的创建时,需要指定镜像的磁盘格式。表12.2是Glance支持的镜像磁盘格式。表12.2 Glance常见磁盘格式格式类型格式描述raw无结构的磁盘格式vhd通用的虚拟机磁盘格式,适用于VMware、Xen、Microsoft、VirtualBox等虚拟机vmdk和vhd类似的一种通用虚拟机磁盘格式vdiVirtualBox和Qemu支持的一种磁盘格式iso光盘数据格式qcow2Qemu支持的一种动态可扩展的磁盘格式ami、ari、aki亚马逊的镜像格式,分别表示machine,ramdisk,kernel镜像(2) 容器格式(Container format)容器格式我们可以理解为把镜像元数据、用户自定义数据和镜像数据同时装载于一个“容器”中重新打包的格式。在虚拟镜像文件创建的时候,需要管理员指定镜像的容器格式(Container format)。表12.3是常见的容器格式。表12.3 常见容器格式格式类型格式描述bare没有容器的一种镜像元数据格式,OpenStack通常采用的一种格式ovf开放虚拟化格式(open virtualization format)ova开放虚拟化设备(open virtualization appliance)格式第1章 第2章 第3章 第4章 第5章 第6章 第7章 7.1 12.2 安装与配置Glance镜像服务12.2.1 安装和配置Glance(1) 安装Glance软件包rootcontroller # yum install openstack-glance -y安装openstack-glance服务,会自动在Linux中生成一个名为“glance”的用户和同名用户组。rootcontroller # cat /etc/passwd | grep glance #查看是否存在glance用户我们会得到passwd文件里所有含有“glance”字符串的行,比如下面的结果:glance:x:161:161:OpenStack Glance Daemons:/var/lib/glance:/sbin/nologin如果查询出来如上的结果就说明系统中存在名为“glance”的用户。rootcontroller # cat /etc/group | grep glance #查看是否存在glance用户组得到如下面的结果:glance:x:161:说明已经存在glance用户组。(2) 创建一个glance数据库并授权 进入数据库rootcontroller # mysql -uroot -p000000因为MariaDB数据库完全兼容MySql数据库,因此在使用方式上是与MySql数据库是一样的。该命令的参数u后为用户名,p后为密码,不需要空格。 建立glance数据库MariaDB (none) CREATE DATABASE glance; #创建一个名为glance的数据库【提示】SQL命令需要;作为结束符,不要忘记。这里创建的glance数据库用于存储镜像元数据。 为数据库授权MariaDB (none) GRANT ALL PRIVILEGES ON glance.* TO glancelocalhost IDENTIFIED BY GLANCE_DBPASS;MariaDB (none) GRANT ALL PRIVILEGES ON glance.* TO glance% IDENTIFIED BY GLANCE_DBPASS;上面两条语句将glance数据库所有表(glance.*)的所有权限(ALL PRIVILEGES)赋予主机名为localhost(localhost )及任意远程主机(%)中名为“glance”的用户(glance),验证密码为GLANCE_DBPASS(GLANCE_DBPASS)。【提示】这里的密码可以根据实际需要设置,但是需要自己记住哟。 退出数据库MariaDB (none) exit;(3) 修改Glance配置文件文件“/etc/glance/glance-api.conf”就是“Glance-API”的配置文件。 备份配置文件rootcontroller # cp /etc/glance/glance-api.conf /
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号