OpenStack手动分布式部署Glance(Queens版)

Glance简介

  • Image Service  镜像服务:
  • 代号: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.对虚拟机实例执行创建快照命令来创建新的镜像,或者备份虚拟机的状态

1、登录数据库配置(在controller执行)

1.1登录数据库

  1. [root@controller ~]# mysql p
  2. Enter password:
  3. Welcome to the mariadb monitor. Commands end with ; or \g.
  4. Your MariaDB connection id is 31
  5. Server version: 10.3.20MariaDB MariaDB Server
  6. Copyright (c) 2000, 2018, oracle, MariaDB Corporation Ab and others.
  7. Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.
  8. MariaDB [(none)]>

  1.2数据库里创建glance

  1. MariaDB [(none)]> CREATE DATABASE glance;

  1.3授权对glance数据库的正确访问

  1. GRANT ALL PRIVILEGES ON glance.* TO ‘glance’@‘localhost’ IDENTIFIED BY ‘000000’;
  2. GRANT ALL PRIVILEGES ON glance.* TO ‘glance’@‘%’ IDENTIFIED BY ‘000000’;

  1.4退出数据库

  1. MariaDB [(none)]> quit;

  1.5创建glance用户密码为000000

  1. [root@controller ~]# openstack user create domain default password 000000 glance
  2. Missing value authurl required for auth plugin password

如上我的这里会报错,时因为没有source环境变量导致。

如下修改/etc/profile文件解决:

  1. #[root@controller ~]# vi /etc/profile
  2. export OS_USERNAME=admin
  3. export OS_PASSWORD=000000
  4. export OS_PROJECT_NAME=admin
  5. export OS_USER_DOMAIN_NAME=Default
  6. export OS_PROJECT_DOMAIN_NAME=Default
  7. export OS_AUTH_URL=http://controller:5000/v3
  8. export OS_IDENTITY_API_VERSION=3
  1. [root@controller ~]# source /etc/profile
  2. [root@controller ~]# openstack user create domain default password 000000 glance

-1

  1.6增加admin角色

  1. openstack role add project service user glance admin

  1.7创建glance服务

  1. openstack service create name glance description “OpenStack Image” image

 

-2

   1.8创建镜像服务API端点

  1. openstack endpoint create region RegionOne image public http://controller:9292

 

-3

  1.      openstack endpoint create region RegionOne image internal http://controller:9292

-4

  1. openstack endpoint create region RegionOne image admin http://controller:9292

-5

2、安装glance配置组件

2.1安装glance包

  1. yum install openstackglance y

  2.2备份配置文件并且修改(修改了4个地方)

  1. cp /etc/glance/glanceapi.conf{,.bak}
  2. grep Ev “^$|#” /etc/glance/glanceapi.conf.bak > /etc/glance/glanceapi.conf
  3. vi /etc/glance/glanceapi.conf
  1. [database]
  2. connection = mysql+pymysql://glance:000000@controller/glance
  3. [glance_store]
  4. stores = file,http
  5. default_store = file
  6. filesystem_store_datadir = /var/lib/glance/images/
  7. [keystone_authtoken]
  8. www_authenticate_uri = http://controller:5000
  9. auth_url = http://controller:5000
  10. memcached_servers = controller:11211
  11. auth_type = password
  12. project_domain_name = Default
  13. user_domain_name = Default
  14. project_name = service
  15. username = glance
  16. password = 000000
  17. [paste_deploy]
  18. flavor = keystone

  2.3同步数据库

  1. su /bin/sh “glance-manage db_sync” glance
  1. systemctl start openstackglanceapi.servicesystemctl enable openstackglanceapi.service

  2.4(这一步可以不做)现在glance没有日志,我们需要配置下

  1. #[root@controller ~]# vi /etc/glance/glance-api.conf
  2. [DEFAULT]
  3. log_file = /var/log/glance/glanceapi.log
  4. [root@controller ~]# systemctl restart openstackglanceapi.service
  5. [root@controller ~]# tail /var/log/glance/glanceapi.log
  6. ). Its value may be silently ignored in the future.
  7. 20230209 10:18:22.350 43599 INFO glance.common.wsgi [-] Starting 4 workers
  8. 20230209 10:18:22.352 43599 INFO glance.common.wsgi [-] Started child 43611
  9. 20230209 10:18:22.354 43611 INFO eventlet.wsgi.server [-] (43611) wsgi starting up on http://0.0.0.0:9292
  10. 20230209 10:18:22.355 43599 INFO glance.common.wsgi [-] Started child 43612
  11. 20230209 10:18:22.357 43612 INFO eventlet.wsgi.server [-] (43612) wsgi starting up on http://0.0.0.0:9292
  12. 20230209 10:18:22.358 43599 INFO glance.common.wsgi [-] Started child 43613
  13. 20230209 10:18:22.360 43613 INFO eventlet.wsgi.server [-] (43613) wsgi starting up on http://0.0.0.0:9292
  14. 20230209 10:18:22.361 43599 INFO glance.common.wsgi [-] Started child 43614
  15. 20230209 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目录下

  1. [root@controller opt]# ls
  2. cirros0.4.0x86_64disk.img
  3. [root@controller opt]# glance imagecreate name “cirros” \
  4.      file cirros0.4.0x86_64disk.img \
  5.      diskformat qcow2 containerformat bare \
  6.      visibility=public
  7. +——————+———————————————————————————-+
  8. | Property | Value |
  9. +——————+——————————————-—————————————+
  10. | checksum | 443b7623e27ecf03dc9e01ee93f67afe |
  11. | container_format | bare |
  12. | created_at | 20230209T15:25:52Z |
  13. | disk_format | qcow2 |
  14. | id | 79e213950d414c9886f2bfa813a48a2f |
  15. | min_disk | 0 |
  16. | min_ram | 0 |
  17. | name | cirros |
  18. | os_hash_algo | sha512 |
  19. | os_hash_value | 6513f21e44aa3da349f248188a44bc304a3653a04122d8fb4535423c8e1d14cd6a153f735bb0982e |
  20. | | 2161b5b5186106570c17a9e58b64dd39390617cd5a350f78 |
  21. | os_hidden | False |
  22. | owner | 4c7bdbb75b9e481db886549f7d2711be |
  23. | protected | False |
  24. | size | 12716032 |
  25. | status | active |
  26. | tags | [] |
  27. | updated_at | 20230209T15:25:53Z |
  28. | virtual_size | Not available |
  29. | visibility | public |
  30. +——————+———————————————————————————-+
  31. [root@controller opt]# glance imagelist
  32. +————————————–+——–+
  33. | ID | Name |
  34. +————————————–+——–+
  35. | 79e213950d414c9886f2bfa813a48a2f | cirros |
  36. +————————————–+——–+

以上说明部署glance成功

到此这篇关于OpenStack手动分布式部署Glance(Queens版)的文章就介绍到这了,更多相关OpenStack部署Glance内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

标签

发表评论