镜像服务glance安装

安装和配置(红帽)

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

1. 必须

在安装和配置 Image 服务之前,您必须创建数据库、服务凭证和 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为合适的密码。这里为123456

  • 退出数据库访问客户端。
quit;

glance 上传镜像放到哪里了_mariadb

  1. 来源admin凭据来访问仅管理员CLI命令:
$ . admin-openrc.sh
  1. 要创建服务凭证,请完成以下步骤:
  • 创建glance用户:
$ openstack user create --domain default --password-prompt glance

User Password:123456
Repeat User Password:123456
+---------------------+----------------------------------+
| Field               | Value                            |
+---------------------+----------------------------------+
| domain_id           | default                          |
| enabled             | True                             |
| id                  | 3f4e777c4062483ab8d9edd7dff829df |
| name                | glance                           |
| options             | {}                               |
| password_expires_at | None                             |
+---------------------+----------------------------------+

这里的密码为123456

glance 上传镜像放到哪里了_Image_02

  • admin角色添加到glance用户和 service项目:
$ openstack role add --project service --user glance admin

此命令不提供任何输出。

  • 创建glance服务实体:
$ openstack service create --name glance --description "OpenStack Image" image

+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | OpenStack Image                  |
| enabled     | True                             |
| id          | 8c2c7f1b9b5049ea9e63757b5533e6d2 |
| name        | glance                           |
| type        | image                            |
+-------------+----------------------------------+

glance 上传镜像放到哪里了_mariadb_03

  1. 创建图像服务 API 端点:
$ openstack endpoint create --region RegionOne image public http://controller:9292

+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 340be3625e9b4239a6415d034e98aace |
| interface    | public                           |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 8c2c7f1b9b5049ea9e63757b5533e6d2 |
| service_name | glance                           |
| service_type | image                            |
| url          | http://controller:9292           |
+--------------+----------------------------------+

$ openstack endpoint create --region RegionOne image internal http://controller:9292

+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | a6e4b153c2ae4c919eccfdbb7dceb5d2 |
| interface    | internal                         |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 8c2c7f1b9b5049ea9e63757b5533e6d2 |
| service_name | glance                           |
| service_type | image                            |
| url          | http://controller:9292           |
+--------------+----------------------------------+

$ openstack endpoint create --region RegionOne image admin http://controller:9292

+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 0c37ed58103f4300a84ff125a539032d |
| interface    | admin                            |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 8c2c7f1b9b5049ea9e63757b5533e6d2 |
| service_name | glance                           |
| service_type | image                            |
| url          | http://controller:9292           |
+--------------+----------------------------------+

glance 上传镜像放到哪里了_Image_04

#查看是否注册好
openstack endpoint list

glance 上传镜像放到哪里了_mariadb_05

2. 安装和配置组件

默认配置文件因发行版而异。您可能需要添加这些部分和选项,而不是修改现有的部分和选项。此外,...配置片段中的省略号 ( ) 表示您应该保留的潜在默认配置选项。

  1. 安装软件包:
yum install openstack-glance -y
  1. 编辑/etc/glance/glance-api.conf文件并完成以下操作:
  • 在该[database]部分中,配置数据库访问:
  • 配置文件不能有中文,注释也不行
[database]
# ...
connection = mysql+pymysql://glance:GLANCE_DBPASS@controller/glance

替换GLANCE_DBPASS为您为影像服务数据库选择的密码。这里为123456

  • [keystone_authtoken][paste_deploy]部分,配置身份服务访问:
[keystone_authtoken]
# ...
www_authenticate_uri  = http://controller:5000
auth_url = http://controller:5000
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_PASS为您glance在身份服务中为用户选择的密码 。这里为123456

注释掉或删除该[keystone_authtoken]部分中的任何其他选项 。

  • 在该[glance_store]部分中,配置本地文件系统存储和image文件的位置:
[glance_store]
# ...
stores = file,http
default_store = file
filesystem_store_datadir = /var/lib/glance/images/
  1. 填充影像服务数据库:
su -s /bin/sh -c "glance-manage db_sync" glance

忽略此输出中的任何弃用消息。

glance 上传镜像放到哪里了_mariadb_06

3. 完成安装

  • 启动 Image 服务并将它们配置为在系统启动时启动:
# systemctl enable openstack-glance-api.service
# systemctl start openstack-glance-api.service

4. 验证操作

使用CirrOS验证 Image 服务的操作,这是一个帮助您测试 OpenStack 部署的小型 Linux 映像。

有关如何下载和构建镜像的更多信息,请参阅 OpenStack 虚拟机镜像指南。有关如何管理映像的信息,请参阅 OpenStack End User Guide

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

  1. 来源admin凭据来访问仅管理员CLI命令:
$ . admin-openrc.sh
  1. 下载源图像:
    最好使用迅雷
$ wget http://download.cirros-cloud.net/0.4.0/cirros-0.4.0-x86_64-disk.img

wget如果您的发行版不包含它,请安装它。

glance 上传镜像放到哪里了_Image_07

  1. 使用QCOW2磁盘格式、 容器格式和公开可见性将图像上传到 Image 服务 ,以便所有项目都可以访问它:
$ glance image-create --name "cirros" --file cirros-0.4.0-x86_64-disk.img --disk-format qcow2 --container-format bare --visibility=public

+------------------+------------------------------------------------------+
| Field            | Value                                                |
+------------------+------------------------------------------------------+
| checksum         | 133eae9fb1c98f45894a4e60d8736619                     |
| container_format | bare                                                 |
| created_at       | 2015-03-26T16:52:10Z                                 |
| disk_format      | qcow2                                                |
| file             | /v2/images/cc5c6982-4910-471e-b864-1098015901b5/file |
| id               | cc5c6982-4910-471e-b864-1098015901b5                 |
| min_disk         | 0                                                    |
| min_ram          | 0                                                    |
| name             | cirros                                               |
| owner            | ae7a98326b9c455588edd2656d723b9d                     |
| protected        | False                                                |
| schema           | /v2/schemas/image                                    |
| size             | 13200896                                             |
| status           | active                                               |
| tags             |                                                      |
| updated_at       | 2015-03-26T16:52:10Z                                 |
| virtual_size     | None                                                 |
| visibility       | public                                               |
+------------------+------------------------------------------------------+

有关的信息一目了然参数,请参见图片服务(扫视)的命令行的客户端 中。

glance 上传镜像放到哪里了_openstack_08

OpenStack 动态生成 ID,因此您将在示例命令输出中看到不同的值。

  1. 确认上传图片并验证属性:
$ glance image-list

+--------------------------------------+--------+--------+
| ID                                   | Name   | Status |
+--------------------------------------+--------+--------+
| 38047887-61a7-41ea-9b49-27987d5e8bb9 | cirros | active |
+--------------------------------------+--------+--------+

glance 上传镜像放到哪里了_glance 上传镜像放到哪里了_09

glance安装完毕