OpenStack—Q Glance安装

一、镜像服务概述

镜像服务(Glance)允许用户发现、注册和检索虚拟机镜像。它提供了一个REST API,使你能够查询虚拟机镜像元数据并检索实际镜像。你可以在不同的位置存储通过图像服务提供的虚拟机镜像,从简单的文件系统到像OpenStack对象存储这样的对象存储系统。
注:为简单起见,本指南配置Glance以使用file back,它在负责图像服务的Controller节点上的目录上传和存储。默认情况下,这个目录是/var/lib/glance/images/ 。在安装Glance之前,请确保controller节点至少有几个gb的空间在这个目录中可用。请记住,由于文件后端通常是Controller节点的本地,所以它通常不适合多节点的glance部署。

OpenStack 的Glance服务是基础设施即服务(IaaS)的核心。它接受对磁盘或服务器镜像的API请求,以及来自终端用户或OpenStack计算组件的元数据定义。它还支持在各种存储库类型上存储磁盘或服务器映像,包括OpenStack对象存储。

在OpenStack图像服务上运行的一些周期性进程支持缓存。复制服务通过集群确保一致性和可用性。其他的周期过程包括auditors, updaters, and reapers。

OpenStack的Glance服务包括以下组件:
Glance-api
接受图像API调用,用于图像发现、检索和存储。
Glance-registry
存储、处理和检索关于图像的元数据。元数据包括大小和类型等项目。
注:registry是一个用于OpenStack图像服务的私有内部服务。不要将此服务公开给用户。在Queens发行版中,glance-registry服务及其API已经被弃用,并在“开发周期”开始时被删除。

Database
存储图像元数据,您可以根据自己的喜好选择数据库。大多数部署都使用MySQL或SQLite。
Storage repository for image files
支持各种存储库类型,包括正常的文件系统(或安装在glance-apiController节点上的任何文件系统)、对象存储、RADOS块设备、VMware数据存储和HTTP。注意,有些存储库只支持只读用法。
Metadata definition service
为vendors, admins, services, 和 users提供一个通用的API,以有效地定义他们自己的定制元数据。这些元数据可以用于不同类型的资源,如images, artifacts, volumes, flavors, 和aggregates。定义包括新属性的键、描述、约束和它可以关联的资源类型。

本节描述如何在Controller节点上安装和配置Glance服务。为了简单起见,这种配置将镜像存储在本地文件系统上。

二、基础配置

Controller节点

在安装和配置映像服务之前,您必须创建一个数据库、服务凭证和API端点。
1.创建glance数据库,并授权

# mysql -uroot -p123456
MariaDB [(none)]> grant all privileges on glance.* to 'glance'@'localhost' identity by '123456';
MariaDB [(none)]> grant all privileges on glance.* to 'glance'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.01 sec)
MariaDB [(none)]> grant all privileges on glance.* to 'glance'@'%' identified by '123456';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> ^DBye

2.获取admin用户的环境变量,并创建服务认证

# . admin-openrc

创建glance用户(密码设为:123456)

# openstack user create --domain default --password-prompt glance  
User Password:
Repeat User Password:

把admin用户添加到glance用户和项目中(无返回值)

# openstack role add --project service --user glance admin

创建glance服务

# openstack service create --name glance --description "OpenStack Image" image

在这里插入图片描述
3. 创建镜像服务API端点

# openstack endpoint create --region RegionOne image public http://controller:9292
# openstack endpoint create --region RegionOne image internal http://controller:9292
# openstack endpoint create --region RegionOne image admin http://controller:9292

在这里插入图片描述

三、安装和配置组件

Controller节点

1.安装软件包

# yum install -y openstack-glance

2.编辑/etc/glance/glance-api.conf文件
在[database]选项,配置数据库链接

[database]
connection = mysql+pymysql://glance:123456@controller/glance

在[[keystone_authtoken]和[paste_deploy]选项,配置身份服务访问

[keystone_authtoken]
auth=uri = http://controller:5000
auth_url = http://controller:5000
memcached_servers = controller:11211
auth_type = password    (这里别输入你的密码,应为password)
project_domain_name = Default
user_domain_name = Default
project_name = service
username = glance
password = 123456
[paste_deploy]
flavor = keystone

在[glance_store]选项,配置本地文件存储和本地镜像文件的位置

[glance_store]
stores = file,http
default_store = file
filesystem_store_datadir = /var/lib/glance/images

4.编辑/etc/glance/glance-registry.conf文件
注:在Queens版本中,Glance-registry service和Glance-registry api已经被弃用
在[database]选项,配置数据库链接

[database]
connection = mysql+pymysql://glance:123456@controller/glance

在[[keystone_authtoken]和[paste_deploy]选项,配置身份服务访问

[keystone_authtoken]
auth=uri = http://controller:5000
auth_url = http://controller:5000
memcached_servers = controller:11211
auth_type = password          (这里别输入你的密码,应为password)
project_domain_name = Default
user_domain_name = Default
project_name = service
username = glance
password = 123456
[paste_deploy]
flavor = keystone

5.同步Glance数据库服务

# su -s /bin/sh -c "glance-manage db_sync" glance

Database is synced successfully.(同步数据库成功)
6.启动Glance服务并将其配置为在系统启动时启动

# systemctl enable openstack-glance-api.service openstack-glance-registry.service
# systemctl restart openstack-glance-api.service openstack-glance-registry.service

四、验证Glance服务

Controller节点

使用CirrOS来验证图像服务的操作,这是一个帮助您测试OpenStack部署的小型Linux映像。
1.获取admin凭证以获得对admin-only CLI命令的访问权

# . admin-openrc

2.下载镜像

# yum install -y wget
# wget http://download.cirros-cloud.net/0.4.0/cirros-0.4.0-x86_64-disk.img

3.使用QCOW2磁盘格式、bare container格式和公共可见性讲镜像上传到Glance服务中,这样所有项目都可以访问它。

# openstack image create "cirros" --file cirros-0.4.0-x86_64-disk.img \
  --disk-format qcow2 --container-format bare –public

在这里插入图片描述
4. 确认镜像的上传和验证属性

# openstack image list

在这里插入图片描述
glance具体配置选项:https://docs.openstack.org/glance/queens/configuration/index.html

猜你喜欢

转载自blog.csdn.net/qq_40791253/article/details/83142698