Cinder介绍

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

块存储服务通常包含下列组件:

  • 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都支持

一)创建数据库

1、数据库创建并创建实体服务

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';

2、创建cinder用户

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

添加 admin 角色到 cinder 用户上

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

  

3、创建 cinder 和 cinderv2 服务实体

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

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

4、创建块设备存储服务的 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:
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

  

OpenStack 存储服务 Cinder介绍和控制节点部署 (十三)的更多相关文章

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

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

  2. OpenStack 计算服务 Nova介绍和控制节点部署(七)

    介绍 Nova是openstack最早的两块模块之一,另一个是对象存储swift.在openstack体系中一个叫做计算节点,一个叫做控制节点.这个主要和nova相关,我们把安装为计算节点nova-c ...

  3. Openstack 网络服务 Neutron介绍和控制节点部署 (九)

    Neutron介绍 neutron是openstack重要组件之一,在以前是时候没有neutron项目. 早期的时候是没有neutron,早期所使用的网络的nova-network,经过版本改变才有个 ...

  4. Openstack 网络服务 Neutron介绍和控制节点部署 (十)

    Neutron介绍 neutron是openstack重要组件之一,在以前是时候没有neutron项目. 早期的时候是没有neutron,早期所使用的网络的nova-network,经过版本改变才有个 ...

  5. OpenStack 计算服务 Nova介绍和控制节点部署 (八)

    一)nova在keystone上服务注册 1.1创建nova务实体 [root@controller ~]# source admin-openrc [root@controller ~]# open ...

  6. OpenStack 存储服务 Cinder存储节点部署NFS(十七)

    Cinder存储节点部署 1.安装软件包 yum install -y nfs-utils rpcbind 提示:早期版本安装portmap nfs-utils :包括基本的NFS命令与监控程序 rp ...

  7. OpenStack 存储服务 Cinder存储节点部署LVM(十六)

    Cinder存储节点部署 部署在192.168.137.12主机 1.安装lvm2软件包 yum install lvm2 -y 2.启动LVM的metadata服务并且设置该服务随系统启动 syst ...

  8. OpenStack 存储服务 Cinder存储节点部署LVM (十四)

    部署在block(10.0.0.103)主机 一)配置lvm 1.安装lvm2软件包 yum install lvm2 -y 2.启动LVM的metadata服务并且设置该服务随系统启动 system ...

  9. 探索 OpenStack 之(9):深入块存储服务Cinder (功能篇)

    继研究了Neutron之后,继续Nova的外围研究之旅.本站是研究块存储服务Cinder. 0.验证环境 环境包括: 1.一个controller节点,运行nova-api, nova-schedul ...

随机推荐

  1. android 应用使用Root权限执行linux命令

    要让Android应用使用Root权限,首先Android设备必须已经获得Root权限.之后可以通过下面的代码取得process对象. Process process = Runtime.getRun ...

  2. bzoj 4069 [Apio2015]巴厘岛的雕塑 dp

    [Apio2015]巴厘岛的雕塑 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 494  Solved: 238[Submit][Status][Dis ...

  3. Qt error ------ 出现Error - RtlWerpReportException failed with status code :-1073741823. Will try to launch the process directly

    出现原因: 使用了不存在的对象 数组越界了 用 delete 释放未分配的内存空间,或者超过一次释放同个内存 比如: 顺序不能颠倒 正确: ui->setupUi(this); ui->t ...

  4. LightOJ 1093 - Ghajini 线段树

    http://www.lightoj.com/volume_showproblem.php?problem=1093 题意:给定序列,问长度为d的区间最大值和最小值得差最大是多少. 思路:可以使用线段 ...

  5. python测试rabbitmq简易实例

    生产者 import pika #coding=utf8 credentials = pika.PlainCredentials('guest', '密码') connection = pika.Bl ...

  6. python实现备份gitlab版本库并更改文件名

    脚本的功能是实现备份gitlab版本库,并修改备份后的文件名,成功后发送邮件至相关负责人,脚本如下: #!/usr/bin/env python # -*- coding:utf-8 -*- impo ...

  7. Maven整体认识——详细介绍

    前言 本文可以帮助你加深对Maven的整体认识,不是一篇基础文章.如果你现在还没有用 Maven 跑过 HelloWorld,那么本文可能不适合你. 一.Maven简介 Maven 官网:https: ...

  8. VMware Workstation Pro 14 序列号

    VMware Workstation Pro 14 序列号: AA702-81D8N-0817Y-75PQT-Q70A4 YC592-8VF55-M81AZ-FWW5T-WVRV0 FC78K-FKE ...

  9. eCharts 多个图表自适应窗口大小

    单个图表自适应页面窗口只需要在创建图表节点后面添加一句代码就可以了: window.onresize = myChart.resize; 多图表要自适应页面,创建图表节点后面添加事件,并在事件函数里面 ...

  10. MS16-032提权正确方法

    原版MS16-032提权会Spawn一个System Shell出来,只能通过Remote Desktop获取.这里修改exploit,直接反弹Shell.注意MS16-032依赖 thread ha ...