OpenStack 存储服务 Cinder介绍和控制节点部署 (十三)

Cinder介绍

       OpenStack块存储服务(cinder)为虚拟机添加持久的存储,块存储提供一个基础设施为了管理卷,以及和OpenStack计算服务交互,为实例提供卷。此服务也会激活管理卷的快照和卷类型的功能。mysql

块存储服务一般包含下列组件:sql

  • cinder-api:接受API请求,并将其路由到cinder-volume执行。
  • cinder-volume:与块存储服务和cinder-scheduler的进程进行直接交互。它也能够与这些进程经过一个消息队列进行交互。cinder-volume服务响应送到块存储服务的读写请求来维持状态。它也能够和多种存储提供者在驱动架构下进行交互。
  • cinder-scheduler守护进程:选择最优存储提供节点来建立卷。其与nova-scheduler组件相似。
  • cinder-backup守护进程:cinder-backup服务提供任何种类备份卷到一个备份存储提供者。就像cinder-volume服务,它与多种存储提供者在驱动架构下进行交互。
  • 消息队列:在块存储的进程之间路由信息。

使用模式三种: 数据库

  • 本地硬盘,优势:IOPS性能最好,缺点:容量限制,迁移麻烦
  • 本地硬盘+云硬盘,系统使用本地硬盘,数据目录使用云硬盘
  • 云硬盘

后端存储:NFS、ISCSI、Glusterfs、ceph都支持后端

一)建立数据库api

一、数据库建立并建立实体服务bash

mysql -u root -p
CREATE DATABASE cinder;
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' IDENTIFIED BY 'cinder';
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' IDENTIFIED BY 'cinder';

二、建立cinder用户架构

source /root/admin-openstack.sh
openstack user create --domain default --password-prompt cinder

添加 admin 角色到 cinder 用户上dom

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

  

三、建立 cinder 和 cinderv2 服务实体memcached

openstack service create --name cinder \
--description "OpenStack Block Storage" volume

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

四、建立块设备存储服务的 API 入口点性能

  • volume服务
openstack endpoint create --region RegionOne \
volume public http://controller:8776/v1/%\(tenant_id\)s

openstack endpoint create --region RegionOne \
volume internal http://controller:8776/v1/%\(tenant_id\)s

openstack endpoint create --region RegionOne \
volume admin http: //192 .168.137.11:8776 /v1/ %\(tenant_id\)s

  • volumev2服务注册
openstack endpoint create --region RegionOne volumev2 public http://controller:8776/v2/%\(tenant_id\)s

openstack endpoint create --region RegionOne volumev2 internal http://conteoller:8776/v2/%\(tenant_id\)s

  

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

 

 

二)安装配置cinder

2.1 安装软件包

# yum install openstack-cinder -y

2.2 编辑配置文件 /etc/cinder/cinder.conf

  • 配置数据库
[database]
connection = mysql+pymysql://cinder:redhat@controller/cinder
[[DEFAULT]]
transport_url = rabbit://openstack:redhat@controller   #消息队列配置
auth_strategy = keystone
my_ip = 10.0.0.101
[keystone_authtoken]                       #keystone配置
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = cinder
password = redhat

 

[oslo_concurrency]            #配置锁路径
lock_path = /var/lib/cinder/tmp 

2.3 同步数据库 

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

2.4  配置nova计算服务使用块设备存储

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

[cinder]
os_region_name = RegionOne

2.5 重启nova计算API 服务

# systemctl restart openstack-nova-api.service

2.6 启动cinder块设备存储服务,并将其配置为开机自启

#systemctl enable openstack-cinder-api.service openstack-cinder-scheduler.service
 #systemctl restart openstack-cinder-api.service openstack-cinder-scheduler.service
相关文章
相关标签/搜索