开封网站建设公司排名/营销策划机构
目录
1、登录数据库授权
2、安装glance
3、测试一下
安装部署Glance镜像服务
- Image Service 镜像服务:
- 代号:Glance:
- 为云平台虚拟机提供镜像服务,例如:上传镜像、删除镜像等。
- 说明:镜像:磁盘文件。装好了系统的磁盘文件。把镜像拷贝过来,就不需要装系统。
1、登录数据库授权
1.Use the database access client to connect to the database server as the root
user(登录数据库)
[root@controller ~]# mysql -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 31
Server version: 10.3.20-MariaDB MariaDB ServerCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]>
2.Create the glance
database(数据库里创建glance)
MariaDB [(none)]> CREATE DATABASE glance;
3.Grant proper access to the glance
database:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' \
IDENTIFIED BY '123';
4.退出数据库
MariaDB [(none)]> quit
5.Create the glance
user(创建glance用户密码为glance)
[root@controller ~]# openstack user create --domain default --password glance glance
Missing value auth-url required for auth plugin password
如上我的这里会报错,时因为没有source环境变量导致。
如下修改/etc/profile文件解决:
#[root@controller ~]# vi /etc/profileexport OS_USERNAME=admin
export OS_PASSWORD=123
export OS_PROJECT_NAME=admin
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_DOMAIN_NAME=Default
export OS_AUTH_URL=http://controller:5000/v3
export OS_IDENTITY_API_VERSION=3
[root@controller ~]# source /etc/profile
[root@controller ~]# openstack user create --domain default --password glance glance
+---------------------+----------------------------------+
| Field | Value |
+---------------------+----------------------------------+
| domain_id | default |
| enabled | True |
| id | 0293557b8f094dd3855537343b14228b |
| name | glance |
| options | {} |
| password_expires_at | None |
+---------------------+----------------------------------+
6.Add the admin
role to the glance
user and service
project(增加admin角色)
[root@controller ~]# openstack role add --project service --user glance admin
7.Create the glance
service entity(创建glance服务)
[root@controller ~]# openstack service create --name glance \
> --description "OpenStack Image" image
+-------------+----------------------------------+
| Field | Value |
+-------------+----------------------------------+
| description | OpenStack Image |
| enabled | True |
| id | 906253e30699402a9f3a52405119532c |
| name | glance |
| type | image |
+-------------+----------------------------------+
8.Create the Image service API endpoints(创建API端点)
[root@controller ~]# openstack endpoint create --region RegionOne \
> image public http://controller:9292
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | 572837d27f794675a4be0d5b32f7d442 |
| interface | public |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 906253e30699402a9f3a52405119532c |
| service_name | glance |
| service_type | image |
| url | http://controller:9292 |
+--------------+----------------------------------+
[root@controller ~]# openstack endpoint create --region RegionOne \
> image internal http://controller:9292
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | f23f9f9af4854d49aa87076c51630e28 |
| interface | internal |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 906253e30699402a9f3a52405119532c |
| service_name | glance |
| service_type | image |
| url | http://controller:9292 |
+--------------+----------------------------------+
[root@controller ~]# openstack endpoint create --region RegionOne \
> image admin http://controller:9292
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | 8ab8803387634f20acaf2c5443381f54 |
| interface | admin |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 906253e30699402a9f3a52405119532c |
| service_name | glance |
| service_type | image |
| url | http://controller:9292 |
+--------------+----------------------------------+
2、安装glance
1.安装glance包
[root@controller ~]# yum install openstack-glance -y
2.备份配置文件并且修改(修改了4个地方)
[root@controller ~]# cp /etc/glance/glance-api.conf{,.bak}
[root@controller ~]# grep -Ev "^$|#" /etc/glance/glance-api.conf.bak > /etc/glance/glance-api.conf
[root@controller ~]# vi /etc/glance/glance-api.conf
[DEFAULT]
[cinder]
[cors]
[database]
connection = mysql+pymysql://glance:123@controller/glance
[file]
[glance.store.http.store]
[glance.store.rbd.store]
[glance.store.sheepdog.store]
[glance.store.swift.store]
[glance.store.vmware_datastore.store]
[glance_store]
stores = file,http
default_store = file
filesystem_store_datadir = /var/lib/glance/images/
[image_format]
[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
[oslo_concurrency]
[oslo_messaging_amqp]
[oslo_messaging_kafka]
[oslo_messaging_notifications]
[oslo_messaging_rabbit]
[oslo_middleware]
[oslo_policy]
[paste_deploy]
flavor = keystone
[profiler]
[store_type_location_strategy]
[task]
[taskflow_executor]
3.同步数据库
[root@controller ~]# su -s /bin/sh -c "glance-manage db_sync" glance
[root@controller ~]# systemctl start openstack-glance-api.service
[root@controller ~]# systemctl enable openstack-glance-api.service
4.(这一步可以不做)现在glance没有日志,我们需要配置下
#[root@controller ~]# vi /etc/glance/glance-api.conf[DEFAULT]
log_file = /var/log/glance/glance-api.log
[root@controller ~]# systemctl restart openstack-glance-api.service
[root@controller ~]# tail -f /var/log/glance/glance-api.log
). Its value may be silently ignored in the future.
2023-02-09 10:18:22.350 43599 INFO glance.common.wsgi [-] Starting 4 workers
2023-02-09 10:18:22.352 43599 INFO glance.common.wsgi [-] Started child 43611
2023-02-09 10:18:22.354 43611 INFO eventlet.wsgi.server [-] (43611) wsgi starting up on http://0.0.0.0:9292
2023-02-09 10:18:22.355 43599 INFO glance.common.wsgi [-] Started child 43612
2023-02-09 10:18:22.357 43612 INFO eventlet.wsgi.server [-] (43612) wsgi starting up on http://0.0.0.0:9292
2023-02-09 10:18:22.358 43599 INFO glance.common.wsgi [-] Started child 43613
2023-02-09 10:18:22.360 43613 INFO eventlet.wsgi.server [-] (43613) wsgi starting up on http://0.0.0.0:9292
2023-02-09 10:18:22.361 43599 INFO glance.common.wsgi [-] Started child 43614
2023-02-09 10:18:22.363 43614 INFO eventlet.wsgi.server [-] (43614) wsgi starting up on http://0.0.0.0:9292
3、测试一下
下载cirros-0.4.0-x86_64-disk.img这个镜像上传到/opt下面(镜像文件在我的资源csdn下载地方找到)
切换到/opt目录下
[root@controller opt]# ls
cirros-0.4.0-x86_64-disk.img
[root@controller opt]# glance image-create --name "cirros" \
> --file cirros-0.4.0-x86_64-disk.img \
> --disk-format qcow2 --container-format bare \
> --visibility=public
+------------------+----------------------------------------------------------------------------------+
| Property | Value |
+------------------+----------------------------------------------------------------------------------+
| checksum | 443b7623e27ecf03dc9e01ee93f67afe |
| container_format | bare |
| created_at | 2023-02-09T15:25:52Z |
| disk_format | qcow2 |
| id | 79e21395-0d41-4c98-86f2-bfa813a48a2f |
| min_disk | 0 |
| min_ram | 0 |
| name | cirros |
| os_hash_algo | sha512 |
| os_hash_value | 6513f21e44aa3da349f248188a44bc304a3653a04122d8fb4535423c8e1d14cd6a153f735bb0982e |
| | 2161b5b5186106570c17a9e58b64dd39390617cd5a350f78 |
| os_hidden | False |
| owner | 4c7bdbb75b9e481db886549f7d2711be |
| protected | False |
| size | 12716032 |
| status | active |
| tags | [] |
| updated_at | 2023-02-09T15:25:53Z |
| virtual_size | Not available |
| visibility | public |
+------------------+----------------------------------------------------------------------------------+
[root@controller opt]# glance image-list
+--------------------------------------+--------+
| ID | Name |
+--------------------------------------+--------+
| 79e21395-0d41-4c98-86f2-bfa813a48a2f | cirros |
+--------------------------------------+--------+
以上说明部署glance成功
【glance镜像服务】
- 它在open stack中的项目名称为Glance.在早期的open stack版本中,Glance只有管理镜像的功能,并不具备镜像存储功能。现在,Glance已经发展称为集上传,检索,管理和存储等多种功能的open stack核心服务。
【glance由两部分组成】
(1)glance-api: 接受云系统镜像的创建,删除,读取请求
(2)glance-Registry: 云系统的镜像注册服务
- glance-api 是接受 rest api请求的。完成诸如镜像的查找,获取,上传,删除等操作,默认是监听9292端口
- glance-registry 是用于Mysql的数据交互,用户存储或获取镜像的元数据(metadata);提供镜像元数据相关的REST接口,通过glance-Registry,可以向数据库中写入或获取镜像的各种数据。glance-Registry监听的端口是9191.Glance数据库中有两种表,一张是image表,主要存储了镜像格式,大小等信息;另一张是image property表,主要存了镜像定制化信息。
- image-store是一个存储的接口层,通过这个接口,glance可以获取镜像,image store支持的存储有Amazon的S3,Openstack本身的swift,还有诸如ceph,sheepdog,GluasterFS等分布式存储,image store是镜像保存与获取的接口,它仅仅是一个接口层,具体的实现需要外部的存储支持。
【镜像服务的主要功能】
- 1.查询和获取镜像的元数据和镜像本身
- 2.注册和上传虚拟机镜像,包括镜像的创建、上传、下载和管理
- 3.维护镜像信息,包括元数据和镜像本身
- 4.支持多种方式存储镜像,包括普通的文件系统、swift、Amazon、S3等
- 5.对虚拟机实例执行创建快照命令来创建新的镜像,或者备份虚拟机的状态
-
OpenStack简介 | 常见的基础组件
-
OpenStack云平台搭建(1) | 基础环境准备
-
OpenStack云平台搭建(2) | 安装Keystone