首页 文章 精选 留言 我的

精选列表

搜索[AI运维],共10000篇文章
优秀的个人博客,低调大师

RAID原理分析总结-运维工作记录-51CTO博客

一.简介 Raid全称" 独立磁盘冗余阵列", 有时也简称磁盘阵列(Disk Array)。 RAID是一种把多块独立的硬盘(物理硬盘)按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术。组成磁盘阵列的不同方式成为RAID级别。 Raid的级别: Raid 0,Raid 1,Raid 0+1(也称Raid 10),Raid 2,Raid 3,Raid 5,Raid 6,Raid 7,Raid 53. 原理分析 我们为什么需要磁盘阵列? 目前人们逐渐认识了磁盘阵列技术。磁盘阵列技术可以详细地划分若干个级别0-5RAID技术,并且又发展了所谓的RAID Level 10,30,50的新的级别。RAID是廉价冗余磁盘阵列(Redundant Array of Inexpensive Disk)的简称。用RAID的好处简单的说就是:安全性高,速度快,数据容量超大。 某些级别的RAID技术可以把速度提高到单个硬盘驱动器的400%。磁盘阵列把多个硬盘驱动器连接在一起协同工作,大大提高了速度,同时把硬盘系统的可靠性提高到接近无错的境界。这些"容错"系统速度极快,同时可靠性极高。 本文将讨论这些新技术,以及不同级别RAID的优缺点。 硬盘数据跨盘(Spanning) 数据跨盘技术使多个硬盘像一个硬盘那样工作,这使用户通过组合已有的资源或增加一些资源来廉价地突破现有的硬盘空间限制。 常用的是下面的几种RAID形式 (1)RAID 0 RAID 0又称为Stripe(条带化)或Striping,它代表了所有RAID级别中最高的存储性能。RAID 0提高存储性能的原理是把连续的数据分散到多个磁盘上存取,这样,系统有数据请求就可以被多个磁盘并行的执行,每个磁盘执行属于它自己的那部分数据请求。这种数据上的并行操作可以充分利用总线的带宽,显著提高磁盘整体存取性能。 RAID 0结构图解 如图所示:系统向四个磁盘组成的逻辑硬盘(RADI 0 磁盘组)发出的I/O数据请求被转化为4项操作,其中的每一项操作都对应于一块物理硬盘。我们从图中可以清楚的看到通过建立RAID 0,原先顺序的数据请求被分散到所有的两块硬盘中同时执行。从理论上讲,四块硬盘的并行操作使同一时间内磁盘读写速度提升了4倍。 但由于总线带宽等多种因素的影响,实际的提升速率肯定会低于理论值,但是,大量数据并行传输与串行传输比较,提速效果显著显然毋庸置疑。 RAID 0的缺点是不提供数据冗余,因此一旦用户数据损坏,损坏的数据将无法得到恢复。RAID 0具有的特点,使其特别适用于对性能要求较高,而对数据安全不太在乎的领域,如图形工作站等。对于个人用户,RAID 0也是提高硬盘存储性能的绝佳选择。 (2)RAID 1 RAID 1又称为Mirror或Mirroring(镜像),它的宗旨是最大限度的保证用户数据的可用性和可修复性。RAID 1的操作方式是把用户写入硬盘的数据百分之百地自动复制到另外一个硬盘上。 RAID 1结构图解 如图所示:当读取数据时,系统先从RAID 0的源盘读取数据,如果读取数据成功,则系统不去管备份盘上的数据;如果读取源盘数据失败,则系统自动转而读取备份盘上的数据,不会造成用户工作任务的中断。当然,我们应当及时地更换损坏的硬盘并利用备份数据重新建立Mirror,避免备份盘在发生损坏时,造成不可挽回的数据损失。 由于对存储的数据进行百分之百的备份,在所有RAID级别中,RAID 1提供最高的数据安全保障。同样,由于数据的百分之百备份,备份数据占了总存储空间的一半,因而Mirror(镜像)的磁盘空间利用率低,存储成本高。Mirror虽不能提高存储性能,但由于其具有的高数据安全性,使其尤其适用于存放重要数据,如服务器和数据库存储等领域. (3)RAID 0+1 正如其名字一样RAID 0+1是RAID 0和RAID 1的组合形式,也称为RAID 10。 以四个磁盘组成的RAID 0+1为例,其数据存储方式如图所示:RAID 0+1是存储性能和数据安全兼顾的方案。它在提供与RAID 1一样的数据安全保障的同时,也提供了与RAID 0近似的存储性能。 由于RAID 0+1也通过数据的100%备份功能提供数据安全保障,因此RAID 0+1的磁盘空间利用率与RAID 1相同,存储成本高。 RAID-10结构图解 RAID 0+1的特点使其特别适用于既有大量数据需要存取,同时又对数据安全性要求严格的领域,如银行、金融、商业超市、仓储库房、各种档案管理等。 (4)RAID 3 RAID 3是把数据分成多个"块",按照一定的容错算法,存放在N+1个硬盘上,实际数据占用的有效空间为N个硬盘的空间总和,而第N+1个硬盘上存储的数据是校验容错信息,当这N+1个硬盘中的其中一个硬盘出现故障时,从其它N个硬盘中的数据也可以恢复原始数据,这样,仅使用这N个硬盘也可以带伤继续工作(如采集和回放素材),当更换一个新硬盘后,系统可以重新恢复完整的校验容错信息。由于在一个硬盘阵列中,多于一个硬盘同时出现故障率的几率很小,所以一般情况下,使用RAID3,安全性是可以得到保障的。 RAID 3结构图解 与RAID0相比,RAID3在读写速度方面相对较慢。使用的容错算法和分块大小决定RAID使用的应用场合,在通常情况下,RAID3比较适合大文件类型且安全性要求较高的应用,如视频编辑、硬盘播出机、大型数据库等. (5)RAID 5 RAID 5 是一种存储性能、数据安全和存储成本兼顾的存储解决方案。 以四个硬盘组成的RAID 5为例,其数据存储方式如图4所示:图中,P0为D0,D1和D2的奇偶校验信息,其它以此类推。由图中可以看出,RAID 5不对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当RAID5的一个磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。 RAID 5结构图解 RAID 5可以理解为是RAID 0和RAID 1的折衷方案。RAID 5可以为系统提供数据安全保障,但保障程度要比Mirror低而磁盘空间利用率要比Mirror高。RAID 5具有和RAID 0相近似的数据读取速度,只是多了一个奇偶校验信息,写入数据的速度比对单个磁盘进行写入操作稍慢。同时由于多个数据对应一个奇偶校验信息,RAID 5的磁盘空间利用率要比RAID 1高,存储成本相对较低。 (6)RAID 6 RAID 6等级是在RAID 5基础上,为了进一步加强数据保护而设计的一种RAID方式,实际上是一种扩展RAID 5等级。与RAID 5的不同之处于除了每个硬盘上都有同级数据XOR校验区外,还有一个针对每个数据块的XOR校验区。当然,当前盘数据块的校验数据不可能存在当前盘而是交错存储的,具体形式见图。 这样一来,等于每个数据块有了两个校验保护屏障(一个分层校验,一个是总体校验),因此RAID 6的数据冗余性能相当好。但是,由于增加了一个校验,所以写入的效率较RAID 5还差,而且控制系统的设计也更为复杂,第二块的校验区也减少了有效存储空间。由于RAID 6相对于RAID 5在校验方面的微弱优势和在性能与性价比方面的较大劣势,RAID 6等级基本没有实际应用过,只是对更高级的数据的冗余进行的一种技术与思路上的尝试 RAID-6结构图解 (7)RAID 7 RAID 7等级是至今为止,理论上性能最高的RAID模式,因为它从组建方式上就已经和以往的方式有了重大的不同。基本成形式见图,你会发现在,以往一个硬盘是一个组成阵列的"柱子",而在RAID 7中,多个硬盘组成一个"柱子",它们都有各自的通道,也正因为如此,你可以把这个图分解成一个个硬盘连接在主通道上,只是比以前的等级更为细分了。这样做的好处就是在读/写某一区域的数据时,可以迅速定位,而不会因为以往因单个硬盘的限制同一时间只能访问该数据区的一部分,在RAID 7中,以前的单个硬盘相当于分割成多个独立的硬盘,有自己的读写通道,效率也就不言自明了。 然而,RAID 7的设计与相应的组成规模注定了它是一揽子承包计划。总体上说,RAID 7是一个整体的系统,有自己的操作系统,有自己的处理器,有自己的总线,而不是通过简单的插卡就可以实现的。归纳起来,RAID 7的主要特性如下: 所有的I/O传输都是异步的,因为它有自己独立的控制器和带有Cache的接口,与系统时钟并不同步所有的读与写的操作都将通过一个带有中心Cache的高速系统总线,我们称之为X-Bus专用的校验硬盘可以用于任何通道带有完整功能的即时操作系统内嵌于阵列控制微处理器,这是RAID 7的心脏,它负责各通道的通信以及Cache的管理,这也是它与其他等级最大不同之一 连通性:可增至12个主机接口 扩展性:线性容量可增至48个硬盘 开放式系统,运用标准的SCSI硬盘、标准的PC总线、主板以及SIMM内存 高速的,集成Cache的数据总线(就是上文提到的X-bus) 在Cache内部完成校验生成工作 多重的附加驱动可以随时热机待命,提高冗余率和灵活性易管理性:SNMP(Simple Network Management Protocol,简单网络管理协议) 可以让管理员远程监视并实现系统控制按照RAID 7设计者的说法,这种阵列将比其他RAID等级提高150-600%写入时的I/O性能,虽然这引起了不小的争议。 RAID-7结构图解 (8)RAID 53 与RAID 10一样,RAID 53也是一种组合RAID 等级,但不要拿RAID 10的观点套用,认为它是RAID 5和RAID 3的组合,事实上,RAID 53应该称为RAID 30或RAID 03(也可以说是RAID 0+3),即RAID 3与RAID 0的组合,具体形式见图:与图1相对比,可以发现,RAID 53中将备份等级由RAID 0变为了RAID 3,也就是说把原来的镜像阵列变成了分割式(Segments)存储阵列。但它不是对每个RAID 0硬盘都用一个RAID 3系统进行,而是用RAID 3对所有数据进行冗余存储(或者说是校验),而且读写与ECC效率比RAID 0要高不少。 值得注意的是,RAID 3在RAID 53的数据传输中占有相当重要的位置。在介绍RAID 3时,曾说过它有很高的读写传输率。因此,在进行大数据量吞吐时,由于RAID 3的传输率高的缘故,RAID 53的性能要比RAID 10好(因为冗余备份的时间缩短)。而且,借助于RAID 0,其I/O带宽并没有降低。不过,从它的配置形式上就可以看出来,它的存储空间利用率要比RAID 10低,为40%。

优秀的个人博客,低调大师

BigOps自动化运维安装以及所遇故障处理

本文参考官方文档进行安装,以及在安装中所遇到的问题呈现给大家。废话就不说了,开始安装。一、准备工作:本机系统环境是CentOS 7 x86 64位 硬件配置建议物理内存8G+、CPU 4 cores+、硬盘20G+。内存低于6G无法安装BigOps程序,所以内存必须6+。1.操作系统CentOS 7 x86 64位 (推荐使用7以上版本,使用7以下版本请参考官网文档)官方文档URL:http://docs.bigops.com/er-jin-zhi-an-zhuang/zhun-bei-huan-jing.html 服务 端口 统一认证 30000、30001 work后端 30002、30003 预留 30004、30005 dv后端 30006、30007 confluence 30008、30009 jira 30010、30011 jenkins 30012、30013 kibana 5601 cerebro 9000 elasticsearch-head 9100 elasticsearch 9200、9300 2.准备2域名(1)sso.xxxx.com,用于统一认证(2)work.xxxx.com,用于主站如果没有注册域名,需要给服务器和笔记本都配置hosts。Linux位置/etc/hosts。Windows位置C:\Windows\System32\drivers\etc\hosts,如果不能直接编辑,可以先拷贝到桌面,编辑完在拷贝回原位置。配置内容,例如:192.168.100.2 sso.bigops.com (换成你服务器IP和你自己的域名)192.168.100.2 work.bigops.com (换成你服务器IP和你自己的域名)切记2个域名都要设置!切记!切记!切记!切记服务器和你的笔记本都要设置!切记!切记!切记!3.初始化环境[root@localhost ~]#cd /usr/local/src[root@localhost src]# wget -O centos_init_env.sh https://raw.githubusercontent.com/yunweibang/bigops-install/master/centos_init_env.sh[root@localhost src]# chmod +x centos_init_env.sh[root@localhost src]# sh centos_init_env.sh 注:建议将所需下载的文件统一放在一个目录下,好管理也好处理。4.关闭IPv6(可选)centos 7编辑/etc/default/grub,在GRUB_CMDLINE_LINUX的值里添加ipv6.disable=1,例如:GRUB_CMDLINE_LINUX="ipv6.disable=1 crashkernel=auto rhgb quiet idle=halt biosdevname=0 net.ifnames=0 console=tty0 console=ttyS0,115200n8 noibrs"再运行命令[root@localhost ~]#grub2-mkconfig -o /boot/grub2/grub.cfg重启系统[root@localhost ~]#reboot5.获取安装包百度网盘地址:地址:https://pan.baidu.com/s/1y8JyQJIUWnzDiH0fX2EpcQ密码:76cm二、安装待初始化系统完成以后,我们进行BigOps环境和BigOps软件安装(1)安装MySQL(推荐使用)[root@localhost src]# wget -O mysql80.sh https://raw.githubusercontent.com/yunweibang/bigops-install/master/mysql80.sh[root@localhost src]#chmod +x mysql80.sh[root@localhost src]# sh mysql80.sh看到下面提示,输入root@127.0.0.1用户密码,保存好一会使用。另外root@localhost密码为空 please input root@127.0.0.1 password, default bigops/>输入你的密码优化MySQL,修改/etc/my.cnf里innodb_buffer_pool_size的值,用命令计算:说明:BigOps系统占用4G,所以innodb_buffer_pool_size等于总内存减去4G后的70%到80% [root@localhost ~]# free -g|egrep -i ^mem|awk '{if($2<7) print "memory is too small";else print int(($2-4)*0.8)"G"}' 比如上面命令返回8G,就这样设置:innodb_buffer_pool_size=8G修改完后需要重启MySQL(2) 安装BigOps程序[root@localhost src]#tar -zxvf bigops-1.0.1.tar.gz[root@localhost src]# mv bigops-1.0.1 bigops[root@localhost src]# cd bigops/bin/[root@localhost bin]# chmod +x bigserver.sh[root@localhost bin]# sh bigserver.sh根据提示填写相关信息,设置完后服务会自动启动。dbhost不要填localhost,填127.0.0.1或对应IP 检查BigOps数据库的tables是否是大小写组合拼写。如果表名都是小写就有问题如果不是请根据官方常见问题文档进行修改。URL:http://docs.bigops.com/er-jin-zhi-an-zhuang/an-zhuang-chang-jian-wen-ti.html检查服务端口有无启动[root@localhost bin]# netstat -nptl | grep 3000检查Nginx状态检查Nginx域名是否配置正确[root@localhost ~]#cat /etc/nginx/conf.d/sso.conf[root@localhost ~]#cat /etc/nginx/conf.d/work.conf[root@localhost bin]# ps aux|grep nginx.conf注:问题在此处我遇到sso.conf和work.conf、default.conf、zabbix.conf文件是空白的,服务重启后Nginx服务无法启动。解决下载配置文件,替换并修改sso.conf、default.conf、work.conf、zabbix.conf里的域名为你网站的域名[root@localhost ~]#wget -O /etc/nginx/nginx.conf https://raw.githubusercontent.com/yunweibang/bigops-install/master/nginx/nginx.conf [root@localhost ~]#wget -O /etc/nginx/conf.d/default.conf https://raw.githubusercontent.com/yunweibang/bigops-install/master/nginx/conf.d/default.conf [root@localhost ~]#wget -O /etc/nginx/conf.d/sso.conf https://raw.githubusercontent.com/yunweibang/bigops-install/master/nginx/conf.d/sso.conf [root@localhost ~]#wget -O /etc/nginx/conf.d/work.conf https://raw.githubusercontent.com/yunweibang/bigops-install/master/nginx/conf.d/work.conf [root@localhost ~]#wget -O /etc/nginx/conf.d/zabbix.conf https://raw.githubusercontent.com/yunweibang/bigops-install/master/nginx/conf.d/zabbix.conf替换修改后Nginx服务正常启动 检查sso服务是否正常启动[root@localhost bin]# curl 127.0.0.1:30001/signin/login如果返回值包括「sso系统正常」,说明运行正常,如果没有返回值说明有问题,需要详细检查数据库配置。检查work服务是否正常启动[root@localhost bin]# curl 127.0.0.1:30003/api/common/ssourl/{"code":0,"message":"ok","data":{"url":"http://sso.swwbigops.com"}}[root@localhost bin]# 如果返回「message」为ok就是正常启动bigserver,bigserver服务用于执行一些内置任务[root@localhost ~]#/usr/local/src/bigops/bin/bigserver.sh restartbigserver配置文件在/usr/local/src/bigops/bin/bigserver.properties可以根据需要调整轮询时间设置定时清理日志[root@localhost ~]#crontab -e 00 01 * /bin/sh /opt/bigops/bin/clean_log.sh 添加开机启动服务 [root@localhost ~]#wget -O /usr/lib/systemd/system/bigweb.service https://raw.githubusercontent.com/yunweibang/bigops-install/master/bigweb.service [root@localhost ~]#systemctl enable bigweb [root@localhost ~]#chmod 754 /usr/lib/systemd/system/bigweb.service [root@localhost ~]#wget -O /usr/lib/systemd/system/bigserver.service https://raw.githubusercontent.com/yunweibang/bigops-install/master/bigserver.service [root@localhost ~]#systemctl enable bigserver [root@localhost ~]#chmod 754 /usr/lib/systemd/system/bigserver.service [root@localhost ~]#systemctl enable nginx [root@localhost ~]#systemctl enable mysqld登录测试访问域名:http://work.swwbigops.com (就是你刚才设置的home url) 默认账号:admin 默认密码:bigops 登陆后请尽快修改密码。软件登录界面展示

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册