【OpenStack】环境搭建- 配置glance镜像服务

158 阅读2分钟

image.png

开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 8 天,点击查看活动详情

glance 服务的安装 只在控制节点!!!

  • glance 服务主要提供镜像的上传下载、发现、检索等功能

创建数据库

mysql -uroot -p

create database glance;

GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY 'D3LvC@F01xmR';

GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY 'D3LvC@F01xmR';

  • 确保mysql写入正常

image.png

openstack 创建用户、角色、和endpoint


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

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

openstack service create --name glance --description "Openstack Image" image

openstack endpoint create --region RegionOne image public http://10.8.4.38:9292

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

openstack endpoint create --region RegionOne image admin http://10.8.4.38:9292
[root@controller01 ~]# openstack user create --domain default --password-prompt glance
User Password:
Repeat User Password:
+---------------------+----------------------------------+
| Field               | Value                            |
+---------------------+----------------------------------+
| domain_id           | default                          |
| enabled             | True                             |
| id                  | 7fb7bfa9dd4b4f9a8e661512e6344f70 |
| name                | glance                           |
| options             | {}                               |
| password_expires_at | None                             |
+---------------------+----------------------------------+
 # D3LvC@F01xmR
[root@controller01 ~]# openstack role add --project service --user glance admin
[root@controller01 ~]# openstack service create --name glance --description "Openstack Image" image
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | Openstack Image                  |
| enabled     | True                             |
| id          | a8c09db622c84d85ab4d43d2cbc73e40 |
| name        | glance                           |
| type        | image                            |
+-------------+----------------------------------+

[root@controller01 ~]# openstack endpoint create --region RegionOne image public http://10.8.4.38:9292
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | d2a95581291b40609702815eba11d92f |
| interface    | public                           |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | a8c09db622c84d85ab4d43d2cbc73e40 |
| service_name | glance                           |
| service_type | image                            |
| url          | http://10.8.4.38:9292            |
+--------------+----------------------------------+


[root@controller01 ~]# openstack endpoint create --region RegionOne image public http://10.8.4.38:9292
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | d2a95581291b40609702815eba11d92f |
| interface    | public                           |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | a8c09db622c84d85ab4d43d2cbc73e40 |
| service_name | glance                           |
| service_type | image                            |
| url          | http://10.8.4.38:9292            |
+--------------+----------------------------------+
[root@controller01 ~]# openstack endpoint create --region RegionOne image internal http://10.8.4.38:9292
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 9f422a2b2081438d976b01b68b02de9c |
| interface    | internal                         |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | a8c09db622c84d85ab4d43d2cbc73e40 |
| service_name | glance                           |
| service_type | image                            |
| url          | http://10.8.4.38:9292            |
+--------------+----------------------------------+
[root@controller01 ~]# 
[root@controller01 ~]# openstack endpoint create --region RegionOne image admin http://10.8.4.38:9292
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | cdad51dae6864458bbe423914b029a6f |
| interface    | admin                            |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | a8c09db622c84d85ab4d43d2cbc73e40 |
| service_name | glance                           |
| service_type | image                            |
| url          | http://10.8.4.38:9292            |
+--------------+----------------------------------+

  • 确保glance endpoint正常服务

image.png

安装glance 软件

yum install opentack-glance

报错 Error: Package: device-mapper-multipath-0.4.9-133.el7.x86_64 (centos-base)

rpm -e --nodeps kpartx-0.4.9-135.el7_9.x86_64
yum install opentack-glance -y
  • 确保服务正确安装

image.png

修改glance-api.conf,glance-registry.conf 同步修改配置

[database]  
  
connection = mysql+pymysql://glance:D3LvC@F01xmR@10.8.4.38/glance


[keystone_authtoken]  
  
auth_url = http://10.8.4.38:5000/v3  
memcached_servers = 10.8.4.38:11211  
auth_type = password  
project_domain_name = default  
user_domain_name = default  
project_name = service  
username = glance  
password = D3LvC@F01xmR


[paste_deploy]  
  
flavor = keystone

初始化数据库

su -s /bin/sh -c "glance-manage db_sync" glance
mysql -uglance -pD3LvC@F01xmR -e "use glance; show tables;"
  • 确保服务能用,数据库以及表能够正常使用

image.png

启动服务

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

systemctl start openstack-glance-api.service openstack-glance-registry.service

报错

image.png

  • 重新执行上述命令

可以正常使用,确保9292端口开启。 image.png