【Openstack Train安装】十二、Cinder安装

news2025/2/24 8:02:05

 Cinder在块存储资源和计算服务(Nova)之间提供了一个抽象层。通过Cinder API,块存储可以被管理(创建、销毁和分配等),而不需要知道提供存储的底层资源。

本文介绍Cinder安装步骤,Cinder需在控制节点和计算节点安装(官网教程中包含了block节点,但是个人电脑性能有限,将compute节点作block节点之用)。

在按照本教程安装之前,请确保完成以下配置:

【Openstack Train安装】一、虚拟机创建

【Openstack Train安装】二、NTP安装

【Openstack Train安装】三、openstack安装

【Openstack Train安装】四、MariaDB/RabbitMQ 安装

【Openstack Train安装】五、Memcached/Etcd安装

【Openstack Train安装】六、Keystone安装

【Openstack Train安装】七、glance安装

【Openstack Train安装】八、placement安装

【Openstack Train安装】九、Nova安装

【Openstack Train安装】十、Neutron安装

【Openstack Train安装】十一、Dashboard 安装

安装环境如下

VMware WorkstationV17.0
本机系统win11
虚拟机系统CentOS 7.5

一、控制节点配置

在控制节点完成以下操作。

1、配置数据库

进入数据库控制台(密码:123456):

mysql -u root -p

创建数据库并授予权限,退出:

CREATE DATABASE cinder;
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' IDENTIFIED BY '123456';

如下图:

2、创建用户

创建cinder用户,密码设置为:123456:

. admin-openrc
openstack user create --domain default --password-prompt cinder

添加权限:

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

如下图:

3、创建服务入口

创建cinderv2和cinderv3服务入口:

openstack service create --name cinderv2 --description "OpenStack Block Storage" volumev2
openstack service create --name cinderv3 --description "OpenStack Block Storage" volumev3

如下图:

4、创建block storage服务API端点

命令如下:

openstack endpoint create --region RegionOne volumev2 public http://controller:8776/v2/%\(project_id\)s
openstack endpoint create --region RegionOne volumev2 internal http://controller:8776/v2/%\(project_id\)s
openstack endpoint create --region RegionOne volumev2 admin http://controller:8776/v2/%\(project_id\)s

openstack endpoint create --region RegionOne volumev3 public http://controller:8776/v3/%\(project_id\)s
openstack endpoint create --region RegionOne volumev3 internal http://controller:8776/v3/%\(project_id\)s
openstack endpoint create --region RegionOne volumev3 admin http://controller:8776/v3/%\(project_id\)s

5、安装cinder

安装:

yum install openstack-cinder -y

备份并删除/etc/cinder/cinder.conf 的注释:

mv /etc/cinder/cinder.conf /etc/cinder/cinder.conf.source
cat /etc/cinder/cinder.conf.source | grep -Ev "^#|^$" > /etc/cinder/cinder.conf 

编辑 /etc/cinder/cinder.conf ,进行如下配置:

[DEFAULT]
# ...
transport_url = rabbit://openstack:123456@controller
auth_strategy = keystone
my_ip = 10.0.0.11


[database]
# ...
connection = mysql+pymysql://cinder:123456@controller/cinder

[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 = cinder
password = 123456

[oslo_concurrency]
# ...
lock_path = /var/lib/cinder/tmp

同步数据库:

su -s /bin/sh -c "cinder-manage db sync" cinder

编辑/etc/nova/nova.conf,添加如下配置:

[cinder]
os_region_name = RegionOne

重启并设置开机启动:

systemctl restart openstack-nova-api.service
systemctl enable openstack-cinder-api.service openstack-cinder-scheduler.service
systemctl start openstack-cinder-api.service openstack-cinder-scheduler.service

二、计算节点配置

在计算节点进行如下操作。

1、在计算节点添加硬盘

添加硬件:

添加硬盘:

默认类型:

创建新磁盘:

设置大小:

完成并关闭虚拟机管理界面:

如果是在虚拟机开启的情况下添加硬盘,需要重启虚拟机。

使用fdisk -l查看硬盘:

fdisk -l

如下图所示(如果不显示,可以是用命令“echo "- - -" > /sys/class/scsi_host/host0/scan”扫描硬盘):

硬盘添加完毕。

2、安装lvm

yum install lvm2 device-mapper-persistent-data -y
systemctl enable lvm2-lvmetad.service
systemctl start lvm2-lvmetad.service

创建volume(上面步骤添加的硬盘是/dev/sdb):

pvcreate /dev/sdb

如下图:

创建volumes:

vgcreate cinder-volumes /dev/sdb

如下图:

编辑/etc/lvm/lvm.conf,在130行下方插入以下内容:

filter = [ "a/sdb/", "r/.*/"]

如下图:

3、安装并配置cinder

安装包:

yum install openstack-cinder targetcli python-keystone -y

备份并删除/etc/cinder/cinder.conf 的注释:

mv /etc/cinder/cinder.conf /etc/cinder/cinder.conf.source
cat /etc/cinder/cinder.conf.source | grep -Ev "^#|^$" > /etc/cinder/cinder.conf 

编辑 /etc/cinder/cinder.conf ,进行如下配置:

[DEFAULT]
# ...
glance_api_servers = http://controller:9292
auth_strategy = keystone
enabled_backends = lvm
my_ip = 10.0.0.31
transport_url = rabbit://openstack:123456@controller

[database]
# ...
connection = mysql+pymysql://cinder:123456@controller/cinder

[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 = cinder
password = 123456

[lvm]
volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver
volume_group = cinder-volumes
target_protocol = iscsi
target_helper = lioadm

[oslo_concurrency]
# ...
lock_path = /var/lib/cinder/tmp

设置开机自启,并启动服务:

systemctl enable openstack-cinder-volume.service target.service
systemctl start openstack-cinder-volume.service target.service

三、验证

控制节点进行以下操作。

登录admin:

. admin-openrc

查看volume服务:

openstack volume service list

如下图所示:

cinder安装完成。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1275153.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Visual Studio通过ClaudiaIDE插件设置背景图片

首先,在VS菜单栏上选择扩展-管理扩展,搜索插件为 ClaudiaIDE, 下载完成之后,关闭VS,点击Modify按钮安装: 等待安装完成,进入 VS , 打开 工具----选项---- ClauDiaIDE 界面 这个是背景色调 我选的…

免费用的 AI 工具 CodeGeeX ,开发效率翻倍!!!

其他系列文章导航 Java基础合集数据结构与算法合集 设计模式合集 多线程合集 分布式合集 ES合集 文章目录 其他系列文章导航 文章目录 前言 一、AI使用教程 二、工作提效 2.1 AI 导师 2.2 AI 程序助手 2.3 AI 测试员 2.4 AI Bug 修复师 三、其他能力 四、总结 前言…

实现简单的Http服务器+SpringMvc,集成到Spring

实现简单的Http服务器SpringMvc,集成到Spring 1、Http协议 1.1、HTTP 协议请求格式 方法 空格 URL 空格 版本 回车符 换行符头部域名称:头部域值 回车符 换行符...头部域名称:头部域值 回车符 …

次世代建模纹理贴图怎么做?

在线工具推荐: 三维数字孪生场景工具 - GLTF/GLB在线编辑器 - Three.js AI自动纹理化开发 - YOLO 虚幻合成数据生成器 - 3D模型在线转换 - 3D模型预览图生成服务 1、什么是次时代建模? "次世代建模"是一个术语,通常用来描述…

daima8资源网整站数据打包完整代码(集成了ripro9.1主题,开箱即用)

基于ripro9.1完全明文无加密后门版本定制开发,无需独立服务器,虚拟主机也可以完美运营,只要主机支持php和mysql即可。整合了微信登录和几款第三方的主题文件,看起来更美观一些。站长本人就是程序员,所以本站的代码资源…

iceoryx(冰羚)-共享内存分配

iceoryx其实主要分两大部分IceOryxRouDiMemoryManager, PortManager。IceOryxRouDiMemoryManager 负责内存创建、分配、管理。 PortManager 负责消息通讯的接口管理,处理usrapp发来的消息。roudi.cpp接口消息并调用PortManager来处理。 IceOryxRouDiMemo…

Tkinter 面向对象框架《一》

一、说明 在本教程中,您将学习如何在 Tkinter 中应用面向对象编程以使代码更有条理。首先介绍Tk下小部件,然后介绍Ttk小部件,即如何从ttk.Frame类继承并在根窗口中使用它。 二、定义 Tkinter 面向对象的窗口 2.1 最基本的对象 以下简单程序创…

leetcode-206-反转链表(C语言实现)

题目: 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head [1,2,3,4,5] 输出:[5,4,3,2,1]示例 2: 输入:head [1,2] 输出:[2,1]示例 3&…

TA-Lib学习研究笔记(八)——Momentum Indicators 上

TA-Lib学习研究笔记(八)——Momentum Indicators 上 Momentum Indicators 动量指标,是最重要的股票分析指标,能够通过数据量化分析价格、成交量,预测股票走势和强度,大部分指标都在股票软件中提供。 1. A…

Python函数专题(下)侯小啾python领航班系列(十三)】

Python函数专题(下)侯小啾python领航班系列(十三)】 大家好,我是博主侯小啾, 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹…

不会代码(零基础)学语音开发(语音开发板)

语音开发板板载资源介绍 通过上图可以看到VDB-150S语音开发板应该是集目前上市的所有语音开发板中板载资源最为丰富的一款开发板。板载的主要资源有: 双色LED状态指示灯;两个测试时使用的按键开关;红外寻迹/接近传感器;固件烧录器…

初识Linux:权限

目录 提示:以下指令均在Xshell 7 中进行 Linux 的权限 内核: 查看操作系统版本 查看cpu信息 查看内存信息 外部程序: 用户: 普通用户变为超级用户: su 和 su-的区别: root用户变成普通用户&#…

管理员配置Jupterhub

在Ubuntu上演示如何部署R语言环境,包括 posit的已经编译了一些R的安装 系统已经装了R,我额外编译的R如何让大家都能用到 如何配置RStudio jupyterhub的配置和使用 管理员如何配置jupyterhub 用户如何配置自己的jupyter环境 Ubuntu上的R部署 这一次…

OSI七层模型与TCP/IP四层模型

一、OSI七层模型简述 OSI 模型的七层是什么?在 OSI 模型中如何进行通信?OSI 模型有哪些替代方案? TCP/IP 模型关于专有协议和模型的说明 二、七层模型详解(DNS、CDN、OSI) 状态码DNS nslookup命令 CDN whois命令 …

java商城系统选型技巧

近期有很多网友在知乎、百度上咨询如何选择java商城系统,本文我们介绍目前有哪些java商城系统,如何选择商城系统,希望有所帮助。 我们之前做过调研,目前java语言开发的商城系统主要有shop、javashop、ejavashop、远丰、mall4j、li…

【【FPGA 之 MicroBlaze定时器中断实验】】

FPGA 之 MicroBlaze定时器中断实验 AXI Timer 具有 AXI 总线接口,能够产生不同时间周期和占空比的时钟、脉冲产生电路、产生与时间有关的中断和用于电机控制的脉宽调制信号。 AXI Timer IP 核提供了一个 AXI4 Lite 接口用于与处理器通信;它内部有两个可…

美国站卖家请在今年12/28前更新W-8税务信息

美国税务信息采集指南 根据美国国家税务局的规定,非美国纳税人需要向亚马逊提供W-8BEN表格,以豁免美国报税要求。美国国家税务局W-8BEN表格将在卖家向亚马逊提供此表格三年后过期。收到提示时,海外卖家需要重新接受税务信息采集以提交新表格。…

探索APP自动化测试工具的重要作用是什么?

随着移动应用市场的蓬勃发展,保障应用程序的质量和性能成为开发团队至关重要的任务。在这个背景下,APP自动化测试工具崭露头角,成为提高开发效率、减少错误率的关键工具。本文将探讨APP自动化测试工具的用途,以及它们在移动应用开…

Qt开发 之 安装程序错误--安装进程(qt.tool.perl)的解决办法

文章目录 1、问题描述2、问题原因3、解决方案3.1、不关闭错误弹出窗口3.2、手动安装Perl3.3、安装Perl完成后,点击“ignore”继续安装 1、问题描述 Win11下,安装qt5.12.12时遇到“安装进程(qt.tools.perl)运行期间出现错误” 问题描述: Err…

C++-详解智能指针

目录 ​编辑 一.什么是智能指针 1.RAII 2.智能智能指针 二.为什么需要智能指针 1.内存泄漏 a. 什么是内存泄漏,内存泄漏的危害 b.内存泄漏分类 c.如何检测内存泄漏 d.如何避免内存泄漏 总结一下: 2.为什么需要智能指针以及智能指针的原理 三.智能指针的使用 1.C…