[TOC]

## 功能简述

块存储服务(cinder)为实例提供块存储。通过驱动程序可支持的各种各样的存储,如NAS/SAN,NFS,LVM,Ceph等。

**常用组件:**

cinder-api: 接收和响应外部有关块存储请求

cinder-volume: 提供存储空间

cinder-scheduler:调度器,决定将要分配的空间由哪一个cinder-volume提供

cinder-backup: 备份卷

**openstack服务通用步骤**

1. 数据库创库授权

2. 在keystone创建系统用户关联角色

3. 在keystone上创建服务,注册api

4. 安装相应服务软件包

5. 修改相应服务的配置文件

6. 同步数据库

7. 启动服务

## 服务部署-控制节点

这里先以默认的lvm存储为例进行演示,后续会有专门使用NFS存储的章节

### 1:数据库创库授权

```sh

CREATE DATABASE cinder;

GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' IDENTIFIED BY 'CINDER_DBPASS';

GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' IDENTIFIED BY 'CINDER_DBPASS';

```

### 2:在keystone创建系统用户关联角色

```sh

openstack user create --domain default --password CINDER_PASS cinder

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

```

### 3:在keystone上创建服务和注册api

```sh

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

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

openstack endpoint create --region RegionOQe 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://controller:8776/v1/%\(tenant_id\)s

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

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

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

```

### 4:安装服务相应软件包

```sh

yum install openstack-cinder -y

```

### 5:修改相应服务的配置文件

**备份配置**

```sh

cp /etc/cinder/cinder.conf{,.bak}

grep -Ev '^$|#' /etc/cinder/cinder.conf.bak >/etc/cinder/cinder.conf

my_ip=$(ip addr show dev eth0|awk -F"[ |/]+" 'NR==3 {print $3'})

```

**非交互式修改cinder.conf配置**

```sh

openstack-config --set /etc/cinder/cinder.conf DEFAULT rpc_backend rabbit

openstack-config --set /etc/cinder/cinder.conf DEFAULT auth_strategy keystone

openstack-config --set /etc/cinder/cinder.conf DEFAULT my_ip $my_ip

openstack-config --set /etc/cinder/cinder.conf database connection mysql+pymysql://cinder:CINDER_DBPASS@controller/cinder

openstack-config --set /etc/cinder/cinder.conf keystone_authtoken auth_uri http://controller:5000

openstack-config --set /etc/cinder/cinder.conf keystone_authtoken auth_url http://controller:35357

openstack-config --set /etc/cinder/cinder.conf keystone_authtoken memcached_servers controller:11211

openstack-config --set /etc/cinder/cinder.conf keystone_authtoken auth_type password

openstack-config --set /etc/cinder/cinder.conf keystone_authtoken project_domain_name default

openstack-config --set /etc/cinder/cinder.conf keystone_authtoken user_domain_name default

openstack-config --set /etc/cinder/cinder.conf keystone_authtoken project_name service

openstack-config --set /etc/cinder/cinder.conf keystone_authtoken username cinder

openstack-config --set /etc/cinder/cinder.conf keystone_authtoken password CINDER_PASS

openstack-config --set /etc/cinder/cinder.conf oslo_concurrency lock_path /var/lib/cinder/tmp

openstack-config --set /etc/cinder/cinder.conf oslo_messaging_rabbit rabbit_host controller

openstack-config --set /etc/cinder/cinder.conf oslo_messaging_rabbit rabbit_userid openstack

openstack-config --set /etc/cinder/cinder.conf oslo_messaging_rabbit rabbit_password RABBIT_PASS

```

**非交互式修改novw.conf配置**

```sh

#/etc/nova/nova.conf

openstack-config --set /etc/nova/nova.conf cinder os_region_name RegionOne

```

### 6:同步数据库

```sh

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

```

### 7:启动服务

```sh

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

```

**检查:**

`cinder service-list`

## 服务部署-计算节点

### 1. 先决条件-安装启动lvm

```sh

yum install lvm2 -y

systemctl enable lvm2-lvmetad.service

systemctl start lvm2-lvmetad.service

```

### 2. 增加两块硬盘

先在虚拟机设置中为计算节点分别添加30G和10G两块硬盘,然后按下面方法可以在不重启虚拟机的情况下使硬盘生效,然后就可以创建lvm的pv和vg

```sh

echo '- - -' >/sys/class/scsi_host/host0/scan

fdisk -l

pvcreate /dev/sdb

pvcreate /dev/sdc

vgcreate cinder-ssd /dev/sdb

vgcreate cinder-sata /dev/sdc

```

### 3. 修改/etc/lvm/lvm.conf

```sh

在130下面插入一行:

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

```

### 安装配置cinder服务

```sh

**安装**

yum install openstack-cinder targetcli python-keystone -y

```

**配置**

```sh

[root@compute1 ~]# cat /etc/cinder/cinder.conf

[DEFAULT]

rpc_backend = rabbit

auth_strategy = keystone

my_ip = 10.0.0.31

glance_api_servers = http://10.0.0.32:9292

enabled_backends = ssd,sata

[BACKEND]

[BRCD_FABRIC_EXAMPLE]

[CISCO_FABRIC_EXAMPLE]

[COORDINATION]

[FC-ZONE-MANAGER]

[KEYMGR]

[cors]

[cors.subdomain]

[database]

connection = mysql+pymysql://cinder:CINDER_DBPASS@controller/cinder

[keystone_authtoken]

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 = CINDER_PASS

[matchmaker_redis]

[oslo_concurrency]

lock_path = /var/lib/cinder/tmp

[oslo_messaging_amqp]

[oslo_messaging_notifications]

[oslo_messaging_rabbit]

rabbit_host = controller

rabbit_userid = openstack

rabbit_password = RABBIT_PASS

[oslo_middleware]

[oslo_policy]

[oslo_reports]

[oslo_versionedobjects]

[ssl]

[ssd]

volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver

volume_group = cinder-ssd

iscsi_protocol = iscsi

iscsi_helper = lioadm

volume_backend_name = ssd

[sata]

volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver

volume_group = cinder-sata

iscsi_protocol = iscsi

iscsi_helper = lioadm

volume_backend_name = sata

```

**启动**

```sh

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

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

```

Linux中cinder的作用,11-cinder块存储服务部署相关推荐

  1. openstack块存储服务基础:Linux LVM硬盘管理及LVM扩容

    在Openstack中,有3个与存储相关组件:Swift--提供对象存储(object storage),Glance--提供虚机镜像(image)存储和管理,Cinder--提供块存储(block ...

  2. 块存储服务(Cinder)安装配置,这一篇就够了!

    本实验是一个比较综合的实验,需要结合前面所学的OpenStack基础环境安装配置,身份认证服务(Keystone)安装配置等一些基础的实验来做这个块存储服务(Cinder)安装配置实验.为了更好地理解 ...

  3. OpenStack之部署块存储服务cinder

    块存储服务 简介 部署环境 在控制节点上安装和配置块设备存储服务(cinder) 安装并配置一个存储节点 图形化界面访问 简介 OpenStack块存储服务(cinder)为虚拟机添加持久的存储,块存 ...

  4. Linux中常用目录作用

    Linux中常用目录作用 1.可以在家目录root或home,以及temp目录下随便放东西. 2.根目录下的bin和sbin,usr目录下的bin和sbin,这四个目录都是用来保存系统命令的.其中,普 ...

  5. 7 安装Cinder块存储服务

    7.1 通过脚本安装Cinder服务 7.2-7.12块存储服务的操作命令已经编写成shell脚本,通过脚本进行一键安装.如下: #Controller 执行脚本iaas-install-cinder ...

  6. Cinder块存储服务

    ​ 项目介绍​Cinder 是 OpenStack Block Storage 的项目名称:它为来宾虚拟机 (VM) 提供了持久块存储.Cinder块存储是虚拟基础架构中必不可少的组件,是存储虚拟机镜 ...

  7. 文件服务和对象存储服务器,对象存储与块存储服务

    介绍 灵活和可扩展的数据存储是使用现代技术和工具开发的大多数应用程序和服务的基准要求. 无论存储大量或少量的图像,视频或文本块,应用程序开发人员都需要一个用于存储和检索用户生成的内容,日志,备份等的解 ...

  8. openstack云计算平台 4(镜像封装、块存储服务)

    目录 一.镜像封装 二.块存储服务 1.简介 2.环境部署 3.安装并配置控制节点 4.安装并配置一个存储节点 5.验证操作 一.镜像封装 目前我们只有一个测试镜像,接下来我们去构建一个镜像 点击虚拟 ...

  9. 达沃时代发布分布式块存储服务系统 启动存储生态圈

    10月27日,达沃时代在北京召开主题为"打造数据沃土,营造千亿生态"的新闻发布会,发布存储新品逸存B系列(YeeStor B serials)分布式块存储服务系统,同时宣告了&qu ...

  10. linux中var的作用,linux中var是什么意思

    在搭建Kubernetes集群过程中,安装了kube-dns插件后,运行一个ubuntu容器,发现容器内无法解析集群外域名,一开始可以解析集群内域名,一段时间后也无法解析集群内域名. $ nslook ...

最新文章

  1. EditPlus 更新到 v2.31 Build 488(附下载)
  2. Sass学习笔记 -- 初步了解函数、运算、条件判断及循环
  3. 【数据库】关系型数据库优化操作
  4. DocKer linux Centos 安装DocKer 只需要十步
  5. 索引超出矩阵维度_搜索引擎技术之倒排索引原理详解,及案例分析
  6. C语言 define 防止头文件重复包含 - C语言零基础入门教程
  7. 检验mysql安装成功win7,手把手教你win7系统成功安装 RMySQL的处理对策
  8. rk3399_android10编译说明
  9. C#实现简单的邮件发送功能
  10. 小米手机鸿蒙开机动画,华为“鸿蒙”来了!开机动画美炸了,用PPT一分钟就搞定...
  11. #博学谷it学习技术支持# Java学习心得
  12. Android Studio 统计代码行数插件 — Statistic 申请软著写源程序量
  13. 国内外云服务器运维面板有哪些?运维面板全面汇总
  14. python版webpower的edm的api接口
  15. 山东理工大学ACM平台题答案 1235 计算球体积
  16. 关于 ‘cosylocal‘ 进程占满内存的问题
  17. 模块一:深度学习入门算法
  18. 案例驱动python编程入门-郑州高薪python全栈工程师
  19. java计算机毕业设计小区物业管理系统录像展示.mp4源程序+mysql+系统+lw文档+远程调试
  20. iOS视频通话问题总结及心路历程。。。

热门文章

  1. 在线文本加密解密工具
  2. 公司发展历程企业项目进度大事记时间轴PPT模板
  3. gradle教程java_Gradle教程系列 ——Gradle基本语法
  4. 案例1-合并2个不同文件夹中的csv文件到另外一个目录,相同的文件名进行数据合并,不同的文件名直接移到新文件夹...
  5. 如何实现电子签章效果
  6. 如何生成微信小程序二维码(uniapp开发)
  7. 解决cadence导入网编Symbol ‘SOD_123‘ used by RefDes D31 for device ‘XXXXX‘ not found的问题
  8. 软件项目管理测试题----含答案
  9. 对计算机科学与技术专业课程的认识,计算机科学与技术专业课程
  10. CocosCreator 框架设计