OpenStack Victoria版——4.控制节点-Glance镜像服务组件

2024-09-08 10:32

本文主要是介绍OpenStack Victoria版——4.控制节点-Glance镜像服务组件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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 

这篇关于OpenStack Victoria版——4.控制节点-Glance镜像服务组件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1147862

相关文章

Vue中组件之间传值的六种方式(完整版)

《Vue中组件之间传值的六种方式(完整版)》组件是vue.js最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互引用,针对不同的使用场景,如何选择行之有效的通信方式... 目录前言方法一、props/$emit1.父组件向子组件传值2.子组件向父组件传值(通过事件形式)方

Linux上设置Ollama服务配置(常用环境变量)

《Linux上设置Ollama服务配置(常用环境变量)》本文主要介绍了Linux上设置Ollama服务配置(常用环境变量),Ollama提供了多种环境变量供配置,如调试模式、模型目录等,下面就来介绍一... 目录在 linux 上设置环境变量配置 OllamPOgxSRJfa手动安装安装特定版本查看日志在

SpringCloud之LoadBalancer负载均衡服务调用过程

《SpringCloud之LoadBalancer负载均衡服务调用过程》:本文主要介绍SpringCloud之LoadBalancer负载均衡服务调用过程,具有很好的参考价值,希望对大家有所帮助,... 目录前言一、LoadBalancer是什么?二、使用步骤1、启动consul2、客户端加入依赖3、以服务

Python异步编程中asyncio.gather的并发控制详解

《Python异步编程中asyncio.gather的并发控制详解》在Python异步编程生态中,asyncio.gather是并发任务调度的核心工具,本文将通过实际场景和代码示例,展示如何结合信号量... 目录一、asyncio.gather的原始行为解析二、信号量控制法:给并发装上"节流阀"三、进阶控制

使用DrissionPage控制360浏览器的完美解决方案

《使用DrissionPage控制360浏览器的完美解决方案》在网页自动化领域,经常遇到需要保持登录状态、保留Cookie等场景,今天要分享的方案可以完美解决这个问题:使用DrissionPage直接... 目录完整代码引言为什么要使用已有用户数据?核心代码实现1. 导入必要模块2. 关键配置(重点!)3.

SpringSecurity 认证、注销、权限控制功能(注销、记住密码、自定义登入页)

《SpringSecurity认证、注销、权限控制功能(注销、记住密码、自定义登入页)》SpringSecurity是一个强大的Java框架,用于保护应用程序的安全性,它提供了一套全面的安全解决方案... 目录简介认识Spring Security“认证”(Authentication)“授权” (Auth

python之流程控制语句match-case详解

《python之流程控制语句match-case详解》:本文主要介绍python之流程控制语句match-case使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录match-case 语法详解与实战一、基础值匹配(类似 switch-case)二、数据结构解构匹

Spring组件初始化扩展点BeanPostProcessor的作用详解

《Spring组件初始化扩展点BeanPostProcessor的作用详解》本文通过实战案例和常见应用场景详细介绍了BeanPostProcessor的使用,并强调了其在Spring扩展中的重要性,感... 目录一、概述二、BeanPostProcessor的作用三、核心方法解析1、postProcessB

使用国内镜像源优化pip install下载的方法步骤

《使用国内镜像源优化pipinstall下载的方法步骤》在Python开发中,pip是一个不可或缺的工具,用于安装和管理Python包,然而,由于默认的PyPI服务器位于国外,国内用户在安装依赖时可... 目录引言1. 为什么需要国内镜像源?2. 常用的国内镜像源3. 临时使用国内镜像源4. 永久配置国内镜

kotlin中的行为组件及高级用法

《kotlin中的行为组件及高级用法》Jetpack中的四大行为组件:WorkManager、DataBinding、Coroutines和Lifecycle,分别解决了后台任务调度、数据驱动UI、异... 目录WorkManager工作原理最佳实践Data Binding工作原理进阶技巧Coroutine