OpenStack kilo版(4) Glance部署

Glance简介

  • Glance-api:接受云系统镜像的构建、删除、读取请求
  • Glance-Registry:云系统的镜像注册服务


部署在controller节点

配置数据库

MariaDB [(none)]> CREATE DATABASE glance;
Query OK, 1 row affected (0.01 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY 'glance';       
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY 'glance';       
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges ;
Query OK, 0 rows affected (0.00 sec)

配置Glance服务认证

创建glance用户:

root@controller:~# openstack user create --password-prompt glance
User Password:glance
Repeat User Password:glance
+----------+----------------------------------+
| Field    | Value                            |
+----------+----------------------------------+
| email    | None                             |
| enabled  | True                             |
| id       | ddcbca4dd1954923b6fd62f98110242b |
| name     | glance                           |
| username | glance                           |
+----------+----------------------------------+

将admin角色添加给glance用户和service项目:

root@controller:~# openstack role add --project service --user glance admin
+-------+----------------------------------+
| Field | Value                            |
+-------+----------------------------------+
| id    | 6d814860fbae4b9eb46c5e33835ba2a1 |
| name  | admin                            |
+-------+----------------------------------+

创建glance的服务实体:

root@controller:~# openstack service create --name glance  --description "OpenStack Image service" image
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | OpenStack Image service          |
| enabled     | True                             |
| id          | d5665f9b2f5645f6aaed5cbf74bad662 |
| name        | glance                           |
| type        | image                            |
+-------------+----------------------------------+

创建镜像服务的API endpoint:

root@controller:~# openstack endpoint create --publicurl http://controller:9292 --internalurl http://controller:9292 --adminurl http://controller:9292 --region RegionOne image
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| adminurl     | http://controller:9292           |
| id           | b0ab3b1386174c3da615baddeb590d27 |
| internalurl  | http://controller:9292           |
| publicurl    | http://controller:9292           |
| region       | RegionOne                        |
| service_id   | d5665f9b2f5645f6aaed5cbf74bad662 |
| service_name | glance                           |
| service_type | image                            |
+--------------+----------------------------------+

安装Glance

root@controller:~# apt-get install glance python-glanceclient

配置Glance

/etc/glance/glance-api.conf :

#[DEFAULT]部分,配置noop禁用通知驱动,因为这是为telemetry测量服务保留的
[DEFAULT]
notification_driver = noop

# [database]部分,配置数据库的连接
[database]
connection = mysql://glance:glance@controller/glance

#[keystone_authtoken]部分,配置身份认证服务访问
[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = glance
password = glance
[paste_deploy]
flavor = keystone

# [glance_store]部分,配置镜像存储采用文件的形式,并且指定存储的路径
[glance_store]
default_store = file
filesystem_store_datadir = /var/lib/glance/images/

/etc/glance/glance-registry.conf:

[DEFAULT]
notification_driver = noop

[database]
connection = mysql://glance:glance@controller/glance

[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = glance
password = glance

[paste_deploy]
flavor = keystone

初始化glance数据库:

root@controller:~# su -s /bin/sh -c "glance-manage db_sync" glance 

重启Glance服务:

root@controller:~# service glance-registry restart
glance-registry stop/waiting
glance-registry start/running, process 28498

root@controller:~# service glance-api restart
glance-api stop/waiting
glance-api start/running, process 28526

删除ubuntu默认创建的SQLite数据库:

root@controller:~# rm -f /var/lib/glance/glance.sqlite

制作镜像

root@controller:~# echo "export OS_IMAGE_API_VERSION=2" | tee -a admin-openrc.sh 

root@controller:~# source admin-openrc.sh

root@controller:~# wget http://download.cirros-cloud.net/0.3.3/cirros-0.3.3-x86_64-disk.img 

使用QCOW2的磁盘格式和bare的容器格式将镜像上传到glance镜像服务中,并且设置为对所有的项目可见:

root@controller:~# glance image-create --name "cirros-0.3.3-x86_64" --file cirros-0.3.3-x86_64-disk.img --disk-format qcow2 --container-format bare --visibility public --progress

查看镜像

root@controller:~# glance image-list 
+--------------------------------------+---------------------+
| ID                                   | Name                |
+--------------------------------------+---------------------+
| 68657969-e3a0-4206-bbc8-cc15ee97daa5 | cirros-0.3.3-x86_64 |
+--------------------------------------+---------------------+

root@controller:~# glance image-show 68657969-e3a0-4206-bbc8-cc15ee97daa5
+------------------+--------------------------------------+
| Property         | Value                                |
+------------------+--------------------------------------+
| checksum         | 133eae9fb1c98f45894a4e60d8736619     |
| container_format | bare                                 |
| created_at       | 2019-08-16T09:03:58Z                 |
| disk_format      | qcow2                                |
| id               | 68657969-e3a0-4206-bbc8-cc15ee97daa5 |
| min_disk         | 0                                    |
| min_ram          | 0                                    |
| name             | cirros-0.3.3-x86_64                |
| owner            | c1d88707e8a04e889d151496421cfb92     |
| protected        | False                                |
| size             | 13200896                             |
| status           | active                               |
| tags             | []                                   |
| updated_at       | 2019-08-16T09:03:58Z                 |
| virtual_size     | None                                 |
| visibility       | public                               |
+------------------+--------------------------------------+

posted @ 2019-08-16 19:25  wshenJin  阅读(200)  评论(0编辑  收藏  举报