blob.png blob.png

 上面左边是我的个人微信,如需进一步沟通,请加微信。  右边是我的公众号“Openstack私有云”,如有兴趣,请关注。



1.1.1.1. ance服务安装Image

1.1.1.1.1. 镜像服务概述

镜像服务(Glance)使用户能够发现,注册和检索虚拟机镜像。它提供了一个 REST API,可让您查询虚拟机镜像元数据并检索实际镜像。可以存储通过Image Service在各种位置(从简单的文件系统到像OpenStack Object Storage这样的对象存储系统)提供的虚拟机镜像。

 

重要:为了简单起见,本指南介绍如何配置Image服务以使用file后端,后端上传并存储在托管Image服务的控制器节点上的目录中。默认情况下,此目录为/var/lib/glance/images/。在继续操作之前,请确保控制器节点在此目录中至少有几GB的可用空间。有关其他后端的要求的信息,请参阅 配置参考。

 

OpenStack Image服务是基础架构即服务(IaaS)的核心之一。它接受磁盘或服务器镜像的API请求,以及最终用户或OpenStack Compute组件的元数据定义。它还支持在各种存储库类型(包括OpenStack对象存储)中存储磁盘或服务器镜像。

OpenStack Image服务上运行多个定期进程来支持缓存。复制服务通过集群确保一致性和可用性。

 

OpenStack Image服务包括以下组件:

glance-api

接受glance API调用,用于镜像发现,检索和存储。

glance-registry

存储,处理和检索有关图像的元数据。元数据包括大小和类型等项。

警告:注册表是OpenStack Image服务使用的私有内部服务。不要将此服务暴露给用户。

Database

存储图像元数据,您可以根据自己的喜好选择数据库。大多数部署使用MySQLSQLite

Storage repository for image files

支持各种存储库类型,包括普通文件系统(或安装在glance-api控制器节点上的任何文件系统),对象存储,RADOS块设备,VMware数据存储和HTTP。请注意,某些存储库仅支持只读使用。

Metadata definition service

供应商,管理员,服务和用户的常见API,用于有意义地定义自己的自定义元数据。此元数据可用于不同类型的资源,如图像,工件,卷,规格和聚合 images, artifacts, volumes, flavors, and aggregates.。定义包括新属性的关键字,描述,约束和可以关联的资源类型。

1.1.1.1.2. 安装和配置

本节介绍如何在控制器节点上安装和配置Image Service,代号为glance。为了简单起见,此配置将映像存储在本地文件系统上。

1.1.1.1.2.1. 先决条件

在安装和配置映像服务之前,必须创建数据库,服务凭据和API端点。

 

1、要创建数据库,请完成以下步骤:

 

使用数据库访问客户端作为root用户连接到数据库服务器:

$ mysql -u root -p

创建glance数据库:

MariaDB [(none)]> CREATE DATABASE glance;

授予对glance数据库的正确访问权限:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' \

  IDENTIFIED BY 'GLANCE_DBPASS';

MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' \

  IDENTIFIED BY 'GLANCE_DBPASS';

更换GLANCE_DBPASS一个合适的密码。

退出数据库访问客户端。

 

2、输入admin凭据以访问仅管理CLI命令:

$ . admin-openrc

3、要创建服务凭据,请完成以下步骤:

 

创建glance用户:

$ openstack user create --domain default --password-prompt glance

User Password:

Repeat User Password:

admin角色添加到glance用户和 service项目中:

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

创建glance服务实体:

$ openstack service create --name glance \

  --description "OpenStack Image" image

 

4、创建镜像服务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

1.1.1.1.2.2. 安装和配置组件

1、安装软件包:

# yum install openstack-glance

2、编辑/etc/glance/glance-api.conf文件并完成以下操作:

在该[database]部分中,配置数据库访问:

[database]

# ...

connection = mysql+pymysql://glance:GLANCE_DBPASS@controller/glance

替换GLANCE_DBPASS为镜像服务数据库选择的密码。

 

[keystone_authtoken][paste_deploy]部分中,配置身份服务访问:

[keystone_authtoken]

# ...

auth_uri = http://controller:5000

auth_url = http://controller:35357

memcached_servers = controller:11211

auth_type = password

project_domain_name = default

user_domain_name = default

project_name = service

username = glance

password = GLANCE_PASS

 

[paste_deploy]

# ...

flavor = keystone

替换GLANCE_PASSglance身份服务中为用户选择的密码 。

 

在本[glance_store]节中,配置本地文件系统存储和镜像文件的位置:

[glance_store]

# ...

stores = file,http

default_store = file

filesystem_store_datadir = /var/lib/glance/images/

3、编辑/etc/glance/glance-registry.conf文件并完成以下操作:

 

在该[database]部分中,配置数据库访问:

[database]

# ...

connection = mysql+pymysql://glance:GLANCE_DBPASS@controller/glance

替换GLANCE_DBPASS为镜像服务数据库选择的密码。

 

[keystone_authtoken][paste_deploy]部分中,配置身份服务访问:

[keystone_authtoken]

# ...

auth_uri = http://controller:5000

auth_url = http://controller:35357

memcached_servers = controller:11211

auth_type = password

project_domain_name = default

user_domain_name = default

project_name = service

username = glance

password = GLANCE_PASS

 

[paste_deploy]

# ...

flavor = keystone

替换GLANCE_PASSglance身份服务中为用户选择的密码 。

 

4、导入镜像服务数据库:

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

1.1.1.1.2.3. 完成安装

启动镜像服务并将其配置为在系统引导时启动:

# systemctl enable openstack-glance-api.service \

  openstack-glance-registry.service

# systemctl start openstack-glance-api.service \

  openstack-glance-registry.service

1.1.1.1.3. 验证操作

使用CirrOS验证镜像服务的操作 ,这个小型的Linux镜像可帮助测试OpenStack部署。

有关如何下载和构建镜像的更多信息,请参阅OpenStack虚拟机镜像指南”。有关如何管理镜像的信息,请参阅“ OpenStack最终用户指南”。

注意:在控制器节点上执行这些命令。

1、生效admin凭据以访问仅管理CLI命令:

$ . admin-openrc

2、下载源镜像:

$ wget http://download.cirros-cloud.net/0.3.5/cirros-0.3.5-x86_64-disk.img

注意:wget如果未安装,请安装。

3、使用QCOW2磁盘格式,裸容器格式和公共可见性将镜像上传到Image服务 ,所以所有项目都可以访问它:

$ openstack image create "cirros" \

  --file cirros-0.3.5-x86_64-disk.img \

  --disk-format qcow2 --container-format bare \

  --public

 

4、确认镜像的上传并验证属性:

$ openstack image list