热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

OpenStackVictoria版——4.控制节点Glance镜像服务组件

4.控制节点-Glance镜像服务组件更多步骤:OpenStackVictoria版安装部署系列教程OpenStack部署系列文章OpenStackVictoria版

4.控制节点-Glance镜像服务组件

更多步骤:OpenStack Victoria版安装部署系列教程


OpenStack部署系列文章
OpenStack Victoria版 安装部署系列教程
OpenStack Ussuri版 离线安装部署系列教程(全)
OpenStack Train版 离线安装部署系列教程(全)
欢迎留言沟通,共同进步。




文章目录

  • 创建glance相关数据库、凭据与API端点
    • 1.创建glance数据库并授权
    • 2.创建服务凭据
    • 3.创建镜像服务的 API 端点(endpoint)
  • glance相关软件安装与配置
    • 1.检查Python版本
    • 2.安装glance软件
    • 3.配置文件修改
      • (1)glance-api.conf
    • 4.同步glance数据库
    • 5.glance镜像服务启动并设置开机自启
  • 镜像上传验证
    • 1.下载镜像
    • 2.加载环境变量,获取管理员权限
    • 3.上传镜像
    • 4.查看镜像信息
  • Glance安装配置完成


创建glance相关数据库、凭据与API端点

1.创建glance数据库并授权

使用mysql数据库的root账户登录,密码为控制节点环境准备时初始化mysql数据设置的密码为root。

mysql -u root -proot

创建glance数据库并授权,设置密码为111111。

CREATE DATABASE glance;
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY '111111';
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY '111111';flush privileges;
show databases;
select user,host from mysql.user;
exit

2.创建服务凭据

(1)在keystone上创建glance用户

以下命令在local_user表创建glance用户

source admin-openrc.sh
openstack user create --domain default --password=111111 glance
openstack user list

(2)在keystone上将glance用户添加为service项目的admin角色(权限)
以下命令无输出

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

(3)创建glance镜像服务的实体
以下命令在service表中增加glance项目

openstack service create --name glance --description "OpenStack Image" image
openstack service list

3.创建镜像服务的 API 端点(endpoint)

【这里会影响API的调用】
以下命令会在endpoint表增加3条项目

openstack endpoint create --region RegionOne image public http://controller:9292
openstack endpoint create --region RegionOne image internal http://controller:9292
openstack endpoint create --region RegionOne image admin http://controller:9292
openstack endpoint list

至此,glance在keystone上面注册完成,下面可以进行安装

glance相关软件安装与配置

1.检查Python版本

[root@controller ~]# python --version
-bash: python: command not found
[root@controller ~]# python3
python3 python3.6 python3.6m python3-django-admin
[root@controller ~]# python3
Python 3.6.8 (default, Aug 24 2020, 17:57:11)
[GCC 8.3.1 20191121 (Red Hat 8.3.1-5)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
[root@controller ~]#

配置系统默认Python版本。(实际操作中,没有进行默认版本配置)

#ls /usr/bin/python*
#ln -s /usr/bin/python3.6 /usr/bin/python
#ll /usr/bin/python
#python -V

2.安装glance软件

dnf install openstack-glance -y

3.配置文件修改


(1)glance-api.conf

编辑vim /etc/glance/glance-api.conf文件,文件内容过多,进6000行,建议向上文一样使用命令配置,也可以手动配置

cp /etc/glance/glance-api.conf /etc/glance/glance-api.conf.bak

#vim /etc/glance/glance-api.conf

crudini --set /etc/glance/glance-api.conf database connection mysql+pymysql://glance:111111@controller/glance
crudini --set /etc/glance/glance-api.conf keystone_authtoken www_authenticate_uri http://controller:5000
crudini --set /etc/glance/glance-api.conf keystone_authtoken auth_url http://controller:5000
crudini --set /etc/glance/glance-api.conf keystone_authtoken memcached_servers controller:11211
crudini --set /etc/glance/glance-api.conf keystone_authtoken auth_type password
crudini --set /etc/glance/glance-api.conf keystone_authtoken project_domain_name Default
crudini --set /etc/glance/glance-api.conf keystone_authtoken user_domain_name Default
crudini --set /etc/glance/glance-api.conf keystone_authtoken project_name service
crudini --set /etc/glance/glance-api.conf keystone_authtoken username glance
crudini --set /etc/glance/glance-api.conf keystone_authtoken password 111111
crudini --set /etc/glance/glance-api.conf paste_deploy flavor keystone
crudini --set /etc/glance/glance-api.conf glance_store stores file,http
crudini --set /etc/glance/glance-api.conf glance_store default_store file
crudini --set /etc/glance/glance-api.conf glance_store filesystem_store_datadir /var/lib/glance/images/

grep '^[a-z]' /etc/glance/glance-api.conf

4.同步glance数据库

(1)为glance镜像服务初始化同步数据库
生成的相关表

su -s /bin/sh -c "glance-manage db_sync" glance

忽略输出的内容,最后结果为:Database is synced successfully.

(2)同步完成进行连接测试
保证所有需要的表已经建立,否则后面可能无法进行下去

mysql -uglance -p111111 -e "use glance;show tables;"

5.glance镜像服务启动并设置开机自启

systemctl start openstack-glance-api && systemctl enable openstack-glance-api

镜像上传验证

下载一个测试镜像先上传到系统中,然后上传到glance服务

1.下载镜像

cd
wget http://download.cirros-cloud.net/0.5.0/cirros-0.5.0-x86_64-disk.img
wget http://download.cirros-cloud.net/0.4.0/cirros-0.4.0-x86_64-disk.img
wget http://download.cirros-cloud.net/0.3.5/cirros-0.3.5-x86_64-disk.img

2.加载环境变量,获取管理员权限

source admin-openrc.sh

3.上传镜像

使用qcow2磁盘格式, bare容器格式上传镜像到镜像服务并设置公共可见,这样所有的项目都可以访问它

glance image-create --name "cirros-0.5.0" --file ./cirros-0.5.0-x86_64-disk.img --disk-format qcow2 --container-format bare --visibility public
glance image-create --name "cirros-0.4.0" --file ./cirros-0.4.0-x86_64-disk.img --disk-format qcow2 --container-format bare --visibility public
openstack image create "cirros-0.3.5" --file ./cirros-0.3.5-x86_64-disk.img --disk-format qcow2 --container-format bare --public

4.查看镜像信息

openstack image list

在/var/lib/glance/images/目录下可以看到镜像文件,如果要删除此镜像需要删除数据库信息,再删除镜像文件

ls /var/lib/glance/images/

镜像信息都是存在glance数据库中的,我们可以在glance库中的images表看到上传的镜像信息.

Glance安装配置完成

至此glance镜像服务安装、启动成功。使用VMware虚拟机的话,现在可以关机做快照。

poweroff


推荐阅读
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • Oracle10g备份导入的方法及注意事项
    本文介绍了使用Oracle10g进行备份导入的方法及相关注意事项,同时还介绍了2019年独角兽企业重金招聘Python工程师的标准。内容包括导出exp命令、删用户、创建数据库、授权等操作,以及导入imp命令的使用。详细介绍了导入时的参数设置,如full、ignore、buffer、commit、feedback等。转载来源于https://my.oschina.net/u/1767754/blog/377593。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 本文介绍了在Python3中如何使用选择文件对话框的格式打开和保存图片的方法。通过使用tkinter库中的filedialog模块的asksaveasfilename和askopenfilename函数,可以方便地选择要打开或保存的图片文件,并进行相关操作。具体的代码示例和操作步骤也被提供。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • Java实战之电影在线观看系统的实现
    本文介绍了Java实战之电影在线观看系统的实现过程。首先对项目进行了简述,然后展示了系统的效果图。接着介绍了系统的核心代码,包括后台用户管理控制器、电影管理控制器和前台电影控制器。最后对项目的环境配置和使用的技术进行了说明,包括JSP、Spring、SpringMVC、MyBatis、html、css、JavaScript、JQuery、Ajax、layui和maven等。 ... [详细]
  • 使用Ubuntu中的Python获取浏览器历史记录原文: ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • ALTERTABLE通过更改、添加、除去列和约束,或者通过启用或禁用约束和触发器来更改表的定义。语法ALTERTABLEtable{[ALTERCOLUMNcolu ... [详细]
  • 本文介绍了iOS数据库Sqlite的SQL语句分类和常见约束关键字。SQL语句分为DDL、DML和DQL三种类型,其中DDL语句用于定义、删除和修改数据表,关键字包括create、drop和alter。常见约束关键字包括if not exists、if exists、primary key、autoincrement、not null和default。此外,还介绍了常见的数据库数据类型,包括integer、text和real。 ... [详细]
author-avatar
mobiledu2502887833
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有