OpenStack块存储服务(Cinder)为虚拟机提供持久化存储,支持卷的管理、快照和卷类型功能。本文将介绍如何在控制节点和存储节点上安装并配置Cinder服务。
Cinder服务通常由以下组件构成:
- cinder-api:接收API请求并路由到cinder-volume执行;
- cinder-volume:与存储服务和调度器交互,响应读写请求;
- cinder-scheduler:选择最优存储节点创建卷;
- cinder-backup:提供卷备份功能。
一、控制节点配置
在安装Cinder之前,需完成以下准备工作:
1、创建Cinder数据库
使用My客户端以root用户登录数据库服务器:
my -u root -p
创建Cinder数据库:
CREATE DATABASE cinder;
授予Cinder数据库访问权限:
替换CINDER_DBPASS为安全密码,退出My客户端。
2、获取管理员权限
加载admin凭证脚本:
source admin-openrc.sh
3、创建Cinder服务凭证
创建cinder用户:
为cinder用户添加admin角色:
openstack role add --project service --user cinder admin
创建Cinder服务实体:
创建API端点
创建Cinder服务的API端点:
二、安装与配置组件
1、安装Cinder软件包
执行以下命令安装Cinder:
sudo apt-get install cinder-api cinder-scheduler
2、配置Cinder配置文件
编辑/etc/cinder/cinder.conf文件,设置以下选项:
在 [database] 部分,配置数据库访问:
注:用你为块设备存储数据库选择的密码替换 CINDER_DBPASS。
在 “[DEFAULT]” 和 “[oslo_messaging_rabbit]”部分,配置 “RabbitMQ” 消息队列访问:
注:用你在 “RabbitMQ” 中为 “openstack” 选择的密码替换 “RABBIT_PASS”。
在 [DEFAULT]和[keystone_authtoken]部分,配置认证服务访问:
注:将 CINDER_PASS 替换为你在认证服务中为 cinder 用户选择的密码。
在 [keystone_authtoken] 中注释或者删除其他选项。
在 DEFAULT 部分,配置my_ip来使用控制节点的管理接口的IP 地址。
在 [oslo_concurrency] 部分,配置锁路径:
3、初始化块设备服务的数据库:
su -s /bin/sh -c "cinder-manage db sync" cinder
4、配置计算节点以使用块设备存储
编辑文件 /etc/nova/nova.conf 并添加如下到其中:
5、完成安装
重启计算API 服务:
service nova-api restart
重启块设备存储服务:
三、存储节点配置
1、安装LVM工具包
执行以下命令安装LVM:
sudo apt-get install lvm2
2、配置LVM卷组
创建物理卷:
创建卷组:
3、配置LVM过滤器
编辑/etc/lvm/lvm.conf文件,设置过滤器:
四、安装与配置组件
1、安装Cinder软件包
执行以下命令安装Cinder:
sudo apt-get install cinder-volume
2、配置Cinder配置文件
编辑/etc/cinder/cinder.conf文件,设置以下选项:
在 [database] 部分,配置数据库访问:
用你为块设备存储数据库选择的密码替换 CINDER_DBPASS。
在 [DEFAULT]和 [oslo_messaging_rabbit]部分,配置 RabbitMQ 消息队列访问:
用你在 RabbitMQ 中为 openstack 选择的密码替换 RABBIT_PASS。
在 [DEFAULT] 和 [keystone_authtoken] 部分,配置认证服务访问:
将 CINDER_PASS 替换为你在认证服务中为 cinder 用户选择的密码。
注:在 [keystone_authtoken] 中注释或者删除其他选项。
在 [DEFAULT] 部分,配置 my_ip 选项:
将其中的MANAGEMENT_INTERFACE_IP_ADDRESS替换为存储节点上的管理网络接口的IP 地址,例如样例架构 <overview-example-architectures>中所示的第一台节点 10.0.0.41 。
在[lvm]部分,配置LVM后端以LVM驱动结束,卷组cinder-volumes ,iSCSI 协议和正确的 iSCSI服务:
在 [DEFAULT] 部分,启用 LVM 后端:
注:后端名字是任意的。比如,本教程使用驱动的名字作为后端的名字。
在 [DEFAULT] 区域,配置镜像服务 API 的位置:
在 [oslo_concurrency] 部分,配置锁路径:
3、完成安装
重启Cinder服务