JBOD详解

JBOD是存储领域中一类重要的存储设备。

英文全称Just a bunch of disks, 中文也称之为硬盘存储扩展柜。

它是传统存储系统赖以生存的根基之一,如果没有JBOD,那一下子就会省去很多部件:后端HBA、SAS扩展器/FC成环器、线缆、JBOD控制模块等等。可以这么讲,如果把JBOD从传统存储系统中去掉,那么其就简化为一款分布式块存储系统,或者俗称Server-SAN,只剩下Server+互联网络。

JBOD在逻辑上把几个物理磁盘一个接一个串联到一起,从而提供一个大的逻辑磁盘。数据简单的第一个磁盘开始存储,当第一个磁盘的存储空间用完后,再依次从后面的磁盘开始存储数据。存取性能完全等同于对单一磁盘的存取操作。不提供数据安全保障。它只是简单的提供一种利用磁盘空间的方法,JBOD的存储容量等于组成JBOD的所有磁盘的容量的总和。

传统存储系统也正是由于JBOD的加入,一下子格调和门槛提升了很多。在广电影视领域,4U60存储平台这一类的JBOD系统的应用就更为广泛,比如说在大容量存储备份、VR虚拟存储、真人秀(光纤共享)存储、视频/音频(网络共享)存储等领域都被各大电视台、制播机构普遍使用着。

为满足这类企业需求,西部数据提供了Ultrastar DC系列硬盘。而JBOD(磁盘簇)作为一种被广泛应用的存储方案,被各企业应用。JBOD以扩展容量为目的,可以包含多个磁盘,总存储容量十分巨大。西部数据 Ultrstar Data60(4U60)混合存储平台,可以供监控企业选择。

西部数据 Ultrstar Data60/102的产品特点如下:

l4U尺寸

l12*12Gb/s SAS3 主机接口

l60/102 西部数据企业级机械硬盘/24个固态硬盘

l支持图形化管理

lIO模块、电源、风扇等都是冗余连接,易于维护

l支持SSD与HDD 混插,用于存储分层提升性能

l西部数据专用的防震&冷却专利,提升硬盘的工作的稳定性

如何保证JBOD 的数据安全呢?

1.数据备份,当JBOD 发生突发事故后,可以完整、快速恢复原有数据,在数据备份方面英定期进行数据库备份、网络数据备份和更新。

2.建立容灾中心,面对区域性、毁灭性灾难,例如地震、火灾的时候,仅仅是数据备份是无法恢复的,这时需要有一个容灾中心,做数据的远程备份,确保重要的数据不会丢失或者遭到破坏,数据容灾的恢复时间比较长,构建实施相对简单。

3.存储RAID 磁盘阵列

RAID,冗余磁盘阵列,就是把多块硬盘按不同的方式组成一个硬盘池,从而大大增强的数据安全性,组成磁盘阵列的不同方式称为RAID 级别,用户根据自己的实际情况选择适当的RAID 级别可以满足用户对存储系统的可用性、性能、容量的要求,采用RAID 方式,只要不是所用的硬盘同时损坏,就可以比较容易恢复数据。

raid,简称为独立冗余磁盘阵列,就是把多块独立的硬盘按不同的方式组合起来形成一个硬盘组,提供比单个硬盘更高的存储性能和提供数据备份技术,从而大大增强数据的安全性。组成磁盘阵列的不同方式称为raid级别,根据实际情况选择适当的raid级别可以满足用户对存储系统可用性、性能和容量的要求。采用这种的方式存储数据,只要不是所有的硬盘同时损坏,就能比较容易地恢复受损的数据。

JBOD 应用案例?

备份、归档、邮件存储、冷数据存储等,采用1台或者2台 X86 服务器,每台服务器配置Broadcom RAID卡连接JBOD Ultrastar data 102存储,JBOD 配置102个18TB的氦气盘,单个服务器配置2个存储节点,独立进行数据传输,总共4U的机架空间提供裸容量达到1.8PB存储容量.

RAID及JBOD模式介绍

RAID 0

RAID 0又称为Stripe或Striping,中文称之为条带化存储,它代表了所有RAID级别中最高的存储性能。

  • 原理

把连续的数据分散到多个磁盘上存取,系统有数据请求就可以被多个磁盘并行的执行,每个磁盘执行属于它自己的那部分数据请求。这种数据上的并行操作可以充分利用总线的带宽,显著提高磁盘整体存取性能。

磁盘空间 = 磁盘总量 = 100%

读写性能 = 优秀 = 磁盘个数(n)*I/O速度 =n*100%

  • 优点
  1. 充分利用I/O总线性能使其带宽翻倍,读/写速度翻倍。
  2. 充分利用磁盘空间,利用率为100%。
  • 缺点
  1. 不提供数据冗余。
  2. 无数据检验,不能保证数据的正确性。
  3. 存在单点故障。

RAID 1

RAID 1又称为Mirror或者Mirroring,中文称之为镜像存储。RAID 1是磁盘阵列中单位成本最高的,磁盘利用率最低,但提供了很高的数据安全性和可用性。

  • 原理

将一个两块硬盘所构成RAID磁盘阵列,其容量仅等于一块硬盘的容量,因为另一块只是当作数据“镜像”通过镜像实现数据冗余,成对的独立磁盘上产生互为备份的数据。当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1可以提高读取性能。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。最大允许互为镜像内的单个磁盘故障,如果出现互为镜像的两块磁盘故障则数据丢失。

磁盘空间 = 磁盘总量/2 = 50%

需要的磁盘数(n) ≥ 2

读性能 = 优秀 = I/O性能*n = 200%

写性能 = 正常 = I/O性能 = 100%

  • 优点
  1. 提供数据冗余,数据双倍存储。
  2. 提供良好的读性能。
  • 缺点
  1. 无数据校验。
  2. 磁盘利用率低,成本高。

JBOD

JBOD(just a bunch of disks)是一个不太正规的术语,官方术语称作“Spanning”,它用来指还没有根据RAID(独立磁盘冗余阵列)系统配置以增加容错率和改进数据访问性能的硬盘。和RAID阵列不同,JBOD没有前端逻辑来管理磁盘上的数据分布,相反,每个磁盘进行单独寻址,作为分开的存储资源,或者基于主机软件的一部分,或者是RAID组的一个适配器卡。JBOD与RAID阵列相比较的优势在于它的低成本,可以将多个磁盘合并到共享电源和风扇的盒子里。

配置RAID模式

启用Smart Array Mode

1. 在服务器启动界面,按“F10”进入“Intelligent Provisioning”

2. 进入“Intelligent Provisioning”后,选择“Smart Storage Administrator”

3. 需要加载引导程序,等待几分钟,即可进入配置界面

4. 点击服务器对应的RAID卡,我这里是P840ar,然后点击Configure

5. 点击“Enable Smart Array Mode”

6. 点击“OK”。

因为我之前已经给服务器配置了JBOD模式,所以这里会提示,在启用Smart Array mode后,所有在HBA mode中的Drivers上的数据都将不可用,需要重启服务器使配置生效。

7. 关闭配置窗口,点击重启按钮,选择Reboot,重启服务器。

3.2 为系统盘配置RAID 1

1. 在服务器启动界面,按“F10”进入“Intelligent Provisioning”

2. 进入“Intelligent Provisioning”后,选择“Smart Storage Administrator”

3. 选中RAID卡,点击“Configure”

4. 选中“Unassigned Drives”

可以看到,一共有14块硬盘,其中2块SATA SSD(固态硬盘),用于安装操作系统,做RAID 1;12块SATA HDD,用于存储数据,做单盘RAID 0。

5. 勾选两块SSD,点击“Create Array”

6. 选择RAID 1,其他参数保持默认,确认无误后,点击“Create Logical Drive”

7. 等待自动创建Logical Drive,创建完成后,点击“Finish”

3.3 为数据盘配置单盘RAID 0

1. 勾选一块数据盘,点击“Create Array”

2. 参数保持默认,点击“Create Logical Drive”

3. 等待自动创建Logical Drive,创建完成后,点击“Finish”

4. 其他11块数据盘做相同操作即可完成所有硬盘的RAID配置。

为硬盘创建“Logical Drive”后,点击“Logical Devices”,可以看到所有已创建的Logical Drive,如下图所示:

5. 配置完成后,关闭配置窗口,重启服务器使配置生效,至此,为硬盘配置RAID模式已完成。

配置JBOD模式

1. 删除Logical Drives

配置JBOD模式需要先删除已配置的Logical Drives,选中Logical Drive,点击右侧的“Delete Logical Drive”,删除所有已配置的Logical Drives。

删除完成后,“Logical Devices”界面没有Array,“Unassigned Drives”下存在14块盘,与物理磁盘数量一致。

2. 选中RAID卡,点击“Enable HBA Mode”,启用JBOD模式

3. 点击“Finish”

4. HBAMode已成功启用

5. 关闭配置窗口

6. 重启服务器使配置生效

至此,为硬盘配置JBOD模式已完成。

总结

RAID模式除了RAID 0和RAID 1,还有RAID 2,RAID3,RAID 4,RAID 5,RAID 6,RAID 7,RAID 8,RAID 01,RAID 10等。由于篇幅所限,这里不做介绍,有兴趣可自行了解。

单块数据盘可以做RAID0,只是没有任何增益效果,唯一作用是能让RAID卡识别硬盘。组成RAID 0的磁盘改变为无RAID的模式或无RAID模式的磁盘改变为RAID 0的模式时,系统需要对相应的磁盘重新分区,原硬盘里的所有数据将全部丢失。

一块RAID卡无法同时启用RAID模式和JBOD模式,如果数据盘采用JBOD模式,SSD(固态硬盘)无法使用RAID1;如果SSD要使用RAID 1,那么数据盘无法采用JBOD模式。除非有两张RAID卡,把SSD和数据盘分开管理,或者在软件层面实现操作系统的软RAID。

这里留了一个坑,单块RAID卡为所有硬盘配置了JBOD模式后,两块SSD无法通过RAID卡做RAID 1。如何为操作系统配置软RAID,将在下一篇文章中做介绍,请持续关注。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/617010.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【已解决】如何用递归实现位运算计算两数之和

本博文源于笔者正在思考的如何用递归进行计算两数之和。读者一般都会想到用while循环进行操作&#xff0c;位运算两数之和的思想就犹如辗转相除法。文章并附加了对这个方法的流程演示 问题来源 想要用递归实现两数之和。 代码实现 #include<stdio.h> int add(int num…

68.网游逆向分析与插件开发-角色数据的获取-利用蓝量属性分析角色数据基址

内容参考于&#xff1a;易道云信息技术研究院VIP课 上一个内容&#xff1a;67.网游逆向分析与插件开发-角色数据的获取-分析角色数据基址-CSDN博客 然后分析任何一个东西&#xff0c;逆向分析的本质就是找东西的意思&#xff0c;找东西核心的观念是内存里得有&#xff0c;就是…

[足式机器人]Part2 Dr. CAN学习笔记 - Ch03 傅里叶级数与变换

本文仅供学习使用 本文参考&#xff1a; B站&#xff1a;DR_CAN Dr. CAN学习笔记-Ch03 傅里叶级数与变换 1. 三角函数的正交性2. 周期为 2 π 2\pi 2π的函数展开为傅里叶级数3. 周期为 2 L 2L 2L的函数展开4. 傅里叶级数的复数形式5. 从傅里叶级数推导傅里叶变换FT6. 总结 1. …

高效底座模型LLaMA

论文标题&#xff1a;LLaMA: Open and Efficient Foundation Language Models 论文链接&#xff1a;https://arxiv.org/pdf/2302.13971.pdf 论文来源&#xff1a;Meta AI 1 概述 大型语言模型&#xff08;Large Languages Models&#xff0c;LLMs&#xff09;通过大规模文本数…

TMC2226步进电机驱动---学习记录

基于TMC2226数据手册的学习 主要内容介绍&#xff1a; Package Outline TMC2226 手册中引脚解释&#xff08;按照手册表格顺序&#xff09; 了解每个引脚是接什么的&#xff0c;之后看原理图 &#xff08;借用立创广场kirito的原理图&#xff0c;后期换个&#xff09; 以前的疑…

UIUC CS241 讲义:众包系统编程书

原文&#xff1a;angrave/SystemProgramming 译者&#xff1a;飞龙 协议&#xff1a;CC BY-NC-SA 4.0 欢迎来到 Angrave 的众包系统编程维基书&#xff01;这个维基是由伊利诺伊大学的学生和教师共同建立的&#xff0c;是伊利诺伊大学 CS 的 Lawrence Angrave 的众包创作实验。…

SpringMVC的四种跳转方式

默认的跳转是请求转发&#xff0c;直接跳转到jsp页面展示&#xff0c;还可以使用框架提供的关键字redirect:&#xff0c;进行一个重定向操作&#xff0c;包括重定向页面和重定向action&#xff0c;使用框架提供的关键字forward:&#xff0c;进行服务器内部转发操作&#xff0c;…

如何解决NAND系统性能问题?--NAND分类

一、故事引言 想象一下&#xff0c;你正在管理一座神奇的数据仓库&#xff0c;这个仓库没有沉重的门、旋转的磁盘和机械手臂&#xff0c;而是由一群训练有素的“数据小飞侠”组成。这些小飞侠们居住在一个叫做闪存芯片&#xff08;NAND Flash&#xff0c;本文主人公&#xff0…

Bug:Goland左侧丢失项目结构(Goland常用快捷键)

Goland快捷键&小tips 1 常用快捷键 # 格式化代码 optioncommandL# 在项目中搜索文件中的内容 commandshiftF# 搜索.go文件 shiftshift&#xff08;按两次shift&#xff09;# 修改方法、变量&#xff08;同时替换引用处的名称&#xff09; fnshiftF6# 将选中代码抽取为方法…

设计模式—行为型模式之状态模式

设计模式—行为型模式之状态模式 状态&#xff08;State&#xff09;模式&#xff1a;对有状态的对象&#xff0c;把复杂的“判断逻辑”提取到不同的状态对象中&#xff0c;允许状态对象在其内部状态发生改变时改变其行为。 状态模式包含以下主要角色&#xff1a; 环境类&am…

结构体成员 分数比较大小

题目&#xff1a; 代码&#xff1a; #include <bits/stdc.h> #include<cstring>using namespace std;struct Num{double fenzi;double fenmu;char fenhao;};bool cmp(Num r1,Num r2){return r1.fenzi/r1.fenmu<r2.fenzi/r2.fenmu;}int main(){int n;Num num[n…

Android-多线程

线程是进程中可独立执行的最小单位&#xff0c;也是 CPU 资源&#xff08;时间片&#xff09;分配的基本单位&#xff0c;同一个进程中的线程可以共享进程中的资源&#xff0c;如内存空间和文件句柄。线程有一些基本的属性&#xff0c;如id、name、以及priority。 id&#xff1…

管理沟通能力测试

管理沟通能力测试用于测试管理者的潜能在交流和沟通方面的能力&#xff0c;作为管理者的能力测评是一个综合面&#xff0c;而沟通能力则是尤为重要&#xff0c;团队的凝聚力、创造力都跟管理者的沟通能力有着直接的关系。了解和提高管理沟通能力需要在实践中不断学习和总结。 …

php 字符串常用函数

目录 1.一些常用函数 2.代码示例 1.一些常用函数 函数名描述trim()删除字符串两端空行或其它预定义符rtrim()删除字符串右边空行或其它预定义符ltrim()删除字符串左边空行或其它预定义符dirname()返回路径中的目录部分str_split()把字符串分割到数组里explode()使用一个字符串…

写在学习webkit过程的前面

webkit起源于KHTML&#xff0c;是KDE开源项目的KHTML和KJS引擎的一部分。在它的诞生和发展过程中&#xff0c;由两家著名的公司参与开发过程中&#xff0c;造成两次裂变。诞生两个内核webkit和blink&#xff0c;并发展和产生了两个主流的浏览器&#xff0c;分别为safari和chrom…

c++学习笔记-STL案例-机房预约系统2-创建身份类

前言 衔接上一篇“c学习笔记-STL案例-机房预约系统1-准备工作”&#xff0c;本文主要包括&#xff1a;创建身份类&#xff0c;建立了整个系统的框架&#xff0c;Identity基类&#xff0c;派生类&#xff1a;Sudent、Teacher、Manager&#xff0c;基类无实现源文件&#xff0c;…

鸿蒙HarmonyOS兼容JS的类Web开发-开发指导

鸿蒙HarmonyOS兼容JS的类Web开发-开发指导 文章目录 鸿蒙HarmonyOS兼容JS的类Web开发-开发指导常用组件开发指导list开发指导创建list组件添加滚动条添加侧边索引栏实现列表折叠和展开场景示例 dialog开发指导创建dialog组件设置弹窗响应场景示例 form开发指导创建form组件实现…

Python笔记08-面向对象

文章目录 类和对象构造方法内置方法封装继承类型注解多态 类只是一种程序内的“设计图纸”&#xff0c;需要基于图纸生产实体&#xff08;对象&#xff09;&#xff0c;才能正常工作 这种套路&#xff0c;称之为&#xff1a;面向对象编程 类和对象 定义类的语法如下&#xff…

QT上位机开发(利用tcp/ip访问plc)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 plc是工控领域很重要的一个器件。简单的plc一般就是对io进行控制&#xff0c;但是复杂的plc&#xff0c;还可以控制电机、变频器&#xff0c;在工业…

Python3.5如何打包编译

python3.5怎么打包编译 问题&#xff1a;用Python开发的小工具有时需要编译打包为Windows(*.exe)、Mac等操作系统下的可执行性文件以供非程序员使用。 解决方案&#xff1a; 一、py2exe 目前只支持到Python3.4&#xff0c;暂不支持Python3.5 二、PyInstaller 安装&#x…