首页 > 编程知识 正文

openstack应用实例,虚拟机openstack安装部署

时间:2023-05-06 14:14:49 阅读:169134 作者:2451

OpenStack部署(三、Glance镜像服务)一、Glance概述1 .镜像服务1.1功能1.2版本2、镜像格式2.1虚拟机镜像文件格式2.2镜像文件部署Glance体系结构3、Glance工作流4和Glance组件1 .创建数据库实例用户2 .创建Glance用户3 .创建镜像服务API端点4.glance包

另一方面,Glance简介OpenStack的项目名称在Glance以前的OpenStack版本中,Glance只有管理镜像的功能,不具备镜像存储功能。 目前,Glance已经发展成为一个集上传、搜索、管理和保存镜像等多种功能于一体的OpenStack核心服务1。 镜像服务镜像的英语是Image,也称为映像,通常是指一组文件或磁盘驱动器的精确副本。 镜像的文件类似于ZIP压缩包。 ZIP压缩包以一定的格式在一个文件中创建特定的一组文件,以便用户下载和使用概念。 示例:Ghost是使用镜像文件的经典软件,镜像文件可以包含所有分区和硬盘信息,包括系统文件、引导文件和分区表信息Ghost可以基于镜像文件快速安装操作系统和APP应用程序。 示例: VMware虚拟机模板1.1功能

查询和获取镜像元数据和镜像本身

注册和上传虚拟机镜像信息,包括创建、上传、下载和管理镜像。 元数据和镜像本身可以通过向虚拟机实例(如普通文件系统、Swift或Amazon S3 )发出创建快照命令来创建新镜像,或备份虚拟机状态1.2版APv1。

删除和列表APv2除了支持v1的所有功能外,还主要添加、删除和修改镜像位置。 元数据、命名空间操作和镜像标记操作这两个版本与镜像存储支持相同,且从版本n中已废除v1。 2 .镜像格式2.1VM镜像文件格式raw:迁移路径使用v2代替非结构化磁盘格式vhd: 此格式适用于VMware、Xen、VirtualBox和其他虚拟机管理程序的vhdx:vhd格式的扩展版。 支持更大的磁盘大小vmdk:比较常见的虚拟机磁盘格式vdi:支持VirtualBox虚拟机管理程序和QEMU仿真器的磁盘格式iso3360CD-rom的文件格式ploop: QEMU仿真支持用于运行操作系统容器的磁盘格式qcow2:并且可以动态扩展。 支持写入时复制的磁盘格式AKI:Glance中存储的亚马逊内核格式ARI:Glance中存储的亚马逊虚拟内存磁盘(格式AMI:Glance中存储的亚马逊容器格式bare:无容器或元数据“信封”镜像ovf:开放虚拟化格式OVA:Glance中保存的开放虚拟化设备格式AKI:Glance中保存的Amazon 存储在已存储的Amazon虚拟内存磁盘(Ramdisk )格式docker:Glance中的容器文件系统的Dockerd的tar文件3 .镜像状态http://www.Sina.com/3358 ww.Sina http://www.Sina.com/http://www.Sina.com/http://www.Sina.com/3358 www.Sina.com 非共享镜像是由项目成员(member-* )的操作实现的受保护镜像。 无法删除此镜像

客户端是Glance服务APP应用程序的用户,可以是~OpenStack命令行工具、Horizon或Nova服务

Glance-api是在系统后台运行的服务进程,是glance的入口。 它向外部提供REST API,接收用户的rest风格的请求并响

应镜像查询、获取和存储的调用

glance-registry是系统后台运行的glance注册服务进程,负责处理与镜像元数据相关的RESTful请求,元数据包括镜像大小、类型等信息。Glance-api接收的请求如果是与镜像的元数据相关的操作, glance-api会把请求转发给glance-registry。glance-registry会解析请求内容,并与数据库交互,存储、处理、检索镜像的元数据。glance-api对外提供APl,而glance-registry的API只由glance-api使用

Glance的DB模块存储的是镜像的元数据,可以选用MYSQL、MariaDB、SQLite等数据库。镜像的元数据通过glance-registry存放在数据库中。注意镜像本身(chunk数据)是通过glance存储驱动存放到各种存储后端中的。

存储后端(Store Backend) Glance自身并不存储镜像,它将镜像存放在后端存储系统中。镜像本身的数据通过glance_store存放在各种后端,并可从中获取。支持本地存储、对象存储、RBD块设备、Sheepdog分布式存储、Cinder块存储、VMware数据存储。

具体使用哪种 backend,是在 /etc/glancelglance-api.conf 中配置的 [glance_store]

三、Glance工作流程

四、Glance组件部署

ct(控制节点):192.168.117.80

1. 创建数据库实例用户 mysql -u root -pcreate database glance;grant all privileges on glance.* to 'glance'@'localhost' identified by 'glance_dbpass';grant all privileges on glance.* to 'glance'@'%' identified by 'glance_dbpass';flush privileges;

2. 创建glance用户 #创建glance用户openstack user create --domain default --password glance_pass glance#将glance用户添加到service项目中,并且针对这个项目拥有admin权限;注册glance的API,需要对service项目有admin权限openstack role add --project service --user glance admin#创建一个service服务,service名称为glance,类型为image;创建完成后可以通过 openstack service list 查看openstack service create --name glance --description "OpenStack Image" image



3. 创建镜像服务API端点 OpenStack使用三种API端点代表三种服务:admin、internal、public openstack endpoint create --region RegionOne image public http://ct:9292openstack endpoint create --region RegionOne image internal http://ct:9292openstack endpoint create --region RegionOne image admin http://ct:9292


4. 安装glance软件包并修改配置文件 yum -y install openstack-glancecp -a /etc/glance/glance-api.conf{,.bak}grep -Ev '^$|#' /etc/glance/glance-api.conf.bak > /etc/glance/glance-api.conf


#添加glance-api.conf配置vim /etc/glance/glance-api.conf[database]connection = mysql+pymysql://glance:glance_dbpass@ct/glance[glance_store]stores = file,httpdefault_store = filefilesystem_store_datadir = /var/lib/glance/images/[keystone_authtoken]www_authenticate_uri = http://ct:5000auth_url = http://ct:5000memcached_servers = ct:11211auth_type = passwordproject_domain_name = Defaultuser_domain_name = Defaultproject_name = serviceusername = glancepassword = glance_pass[paste_deploy]flavor = keystone




#修改glance-registry.conf 配置文件cp -a /etc/glance/glance-registry.conf{,.bak}grep -Ev '^$|#' /etc/glance/glance-registry.conf.bak > /etc/glance/glance-registry.confvim /etc/glance/glance-registry.conf[database]connection = mysql+pymysql://glance:glance_dbpassw@ct/glance[keystone_authtoken]www_authenticate_uri = http://ct:5000auth_url = http://ct:5000memcached_servers = ct:11211auth_type = passwordproject_domain_name = Defaultuser_domain_name = Defaultproject_name = serviceusername = glancepassword = glance_pass[paste_deploy]flavor = keystone

#初始化glance数据库,生成相关表结构su -s /asjdlb/sh -c "glance-manage db_sync" glance#开启glance服务systemctl enable openstack-glance-api.servicesystemctl start openstack-glance-api.service#查看端口netstat -natp | grep 9292#或(lsof需要安装)yum -y install lsoflsof -i:9292#赋予openstack-glance-api.service服务对存储设备的可写权限chown -hR glance:glance /var/lib/glance/

5. 测试 #上传cirros镜像到控制节点的/root,然后导入glance,最后查看是否创建成功openstack image create --file cirros-0.3.5-x86_64-disk.img --disk-format qcow2 --container-format bare --public cirros

#查看镜像openstack image list或glance image-list

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。