OpenStack块存储服务

2025-03-05 36

OpenStack块存储服务(Cinder)为虚拟机提供持久化存储,支持卷的管理、快照和卷类型功能。本文将介绍如何在控制节点和存储节点上安装并配置Cinder服务。

Cinder服务通常由以下组件构成:

  • cinder-api:接收API请求并路由到cinder-volume执行;
  • cinder-volume:与存储服务和调度器交互,响应读写请求;
  • cinder-scheduler:选择最优存储节点创建卷;
  • cinder-backup:提供卷备份功能。

一、控制节点配置

在安装Cinder之前,需完成以下准备工作:

1、创建Cinder数据库

使用My客户端以root用户登录数据库服务器:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
my -u root -p
my -u root -p
my -u root -p

创建Cinder数据库:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE DATABASE cinder;
CREATE DATABASE cinder;
CREATE DATABASE cinder;

授予Cinder数据库访问权限:

OpenStack块存储服务

替换CINDER_DBPASS为安全密码,退出My客户端。

2、获取管理员权限

加载admin凭证脚本:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
source admin-openrc.sh
source admin-openrc.sh
source admin-openrc.sh

3、创建Cinder服务凭证

创建cinder用户:

OpenStack块存储服务

为cinder用户添加admin角色:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
openstack role add --project service --user cinder admin
openstack role add --project service --user cinder admin
openstack role add --project service --user cinder admin

创建Cinder服务实体:

OpenStack块存储服务

OpenStack块存储服务

创建API端点

创建Cinder服务的API端点:

OpenStack块存储服务

OpenStack块存储服务

二、安装与配置组件

1、安装Cinder软件包

执行以下命令安装Cinder:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo apt-get install cinder-api cinder-scheduler
sudo apt-get install cinder-api cinder-scheduler
sudo apt-get install cinder-api cinder-scheduler

2、配置Cinder配置文件

编辑/etc/cinder/cinder.conf文件,设置以下选项:

在 [database] 部分,配置数据库访问:

OpenStack块存储服务

注:用你为块设备存储数据库选择的密码替换 CINDER_DBPASS。

在 “[DEFAULT]” 和 “[oslo_messaging_rabbit]”部分,配置 “RabbitMQ” 消息队列访问:

OpenStack块存储服务

注:用你在 “RabbitMQ” 中为 “openstack” 选择的密码替换 “RABBIT_PASS”。

在 [DEFAULT]和[keystone_authtoken]部分,配置认证服务访问:

OpenStack块存储服务

注:将 CINDER_PASS 替换为你在认证服务中为 cinder 用户选择的密码。

在 [keystone_authtoken] 中注释或者删除其他选项。

在 DEFAULT 部分,配置my_ip来使用控制节点的管理接口的IP 地址。

OpenStack块存储服务

在 [oslo_concurrency] 部分,配置锁路径:

OpenStack块存储服务

3、初始化块设备服务的数据库:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
su -s /bin/sh -c "cinder-manage db sync" cinder
su -s /bin/sh -c "cinder-manage db sync" cinder
su -s /bin/sh -c "cinder-manage db sync" cinder

4、配置计算节点以使用块设备存储

编辑文件 /etc/nova/nova.conf 并添加如下到其中:

OpenStack块存储服务

5、完成安装

重启计算API 服务:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
service nova-api restart
service nova-api restart
service nova-api restart

重启块设备存储服务:

OpenStack块存储服务

三、存储节点配置

1、安装LVM工具包

执行以下命令安装LVM:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo apt-get install lvm2
sudo apt-get install lvm2
sudo apt-get install lvm2

2、配置LVM卷组

创建物理卷:

OpenStack块存储服务

创建卷组:

OpenStack块存储服务

3、配置LVM过滤器

编辑/etc/lvm/lvm.conf文件,设置过滤器:

OpenStack块存储服务

四、安装与配置组件

1、安装Cinder软件包

执行以下命令安装Cinder:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo apt-get install cinder-volume
sudo apt-get install cinder-volume
sudo apt-get install cinder-volume

2、配置Cinder配置文件

编辑/etc/cinder/cinder.conf文件,设置以下选项:

在 [database] 部分,配置数据库访问:

OpenStack块存储服务

用你为块设备存储数据库选择的密码替换 CINDER_DBPASS。

在 [DEFAULT]和 [oslo_messaging_rabbit]部分,配置 RabbitMQ 消息队列访问:

OpenStack块存储服务

用你在 RabbitMQ 中为 openstack 选择的密码替换 RABBIT_PASS。

在 [DEFAULT] 和 [keystone_authtoken] 部分,配置认证服务访问:

OpenStack块存储服务

将 CINDER_PASS 替换为你在认证服务中为 cinder 用户选择的密码。

注:在 [keystone_authtoken] 中注释或者删除其他选项。

在 [DEFAULT] 部分,配置 my_ip 选项:

OpenStack块存储服务

将其中的MANAGEMENT_INTERFACE_IP_ADDRESS替换为存储节点上的管理网络接口的IP 地址,例如样例架构 <overview-example-architectures>中所示的第一台节点 10.0.0.41 。

在[lvm]部分,配置LVM后端以LVM驱动结束,卷组cinder-volumes ,iSCSI 协议和正确的 iSCSI服务:

OpenStack块存储服务

在 [DEFAULT] 部分,启用 LVM 后端:

OpenStack块存储服务

注:后端名字是任意的。比如,本教程使用驱动的名字作为后端的名字。

在 [DEFAULT] 区域,配置镜像服务 API 的位置:OpenStack块存储服务

在 [oslo_concurrency] 部分,配置锁路径:

OpenStack块存储服务

3、完成安装

重启Cinder服务

OpenStack块存储服务

  • 广告合作

  • QQ群号:707632017

温馨提示:
1、本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。邮箱:2942802716#qq.com(#改为@)。 2、本站原创内容未经允许不得转裁,转载请注明出处“站长百科”和原文地址。
Laravel服务提供者
下一篇: Laravel路由