首页 > 其他分享 >服务器Raid配置的一些思考

服务器Raid配置的一些思考

时间:2023-01-15 18:22:33浏览次数:40  
标签:缓存 RAID 性能 写入 back Raid 思考 磁盘 服务器

背景

随着公司软件的发展.客户越来越多.
测试环境和兼容环境也越来越多.
不管是虚拟化,还是裸金属做数据库
存储都是绕不开的一道门槛.
最近又上架了几台服务器, 所以想趁着周末总结一下
最近服务器上架的一些得失, 
以及未来客户现场部署的一些可能的事项.

关于存储

存储是一切软件的基础
没有存储软件几乎是无法运行和交付的.
存储也是数据的栖身之所,他的性能和稳定性会影响良多.

现阶段服务器看的很多是CPU和内存,但是在传统应用里面
存储的性能也会决定非常多的地方.

甚至存储性能不好会导致再高的CPU和内存都无法弥补的性能下降.

存储比较核心的地方在于Raid的设置
虽然可以单盘,但是单盘的性能和容量都非常有限,安全性也不是很好.
所以需要进行一些Raid设置.这一块是非常关键的.

RAID的一些说明

磁盘阵列(Redundant Arrays of Independent Disks,RAID),
有"数块独立磁盘构成具有冗余能力的阵列”之意。

RAID 一般常用的有 0 1 10 5 6 50 60 
用的比较多的是 5 6 10
但是因为有写惩罚
RAID0  写惩罚 是1 
RAID1  写惩罚 是2
RAID10 写惩罚 是2
RAID5  写惩罚 是4
RAID6  写惩罚 是6

所以一般很不建议将RAID6用于生产, 如果想节约成本可以使用
RAID5+HOT_Spare盘的方式进行部署. 安全和写入基本上都可以保证. 

关于RAID的设置

除了核心的Raid级别的设置还有以下事项也比较重要:
是否开启缓存.
是否开启写缓存
写入的方式是wirte through还是write back
是否开启磁盘缓存
是否开启条带化
是否最大化性能还是最大化安全

RAID设置的说明

是否开启缓存
以装机量比较大的LSI 9361-8i 或者是PMC8204-2G进行说明
都可以有2G DDR的缓存.
但是大家也都知道DDR是易失性的,如果一场断电或者是宕机会导致无法挽回的损失.
所以一般会要求带一个BBU
但是BBU 一般有时效性可能需要定期更换.
能够保证再宕机或者是断电时能够将RAID卡内存缓存中的数据写入到非易失性的设备中
保证数据的安全与稳定. 

RAID设置的说明

Write through和Write back
则是两种方式, 是写入到缓存就告知操作系统, 写入完成
还是必须写入到磁盘才能告知操作系统, 写入完成

使用缓存模式能够极大的提高写入性能 back的效率可能有十倍甚至一百倍的提升
但是如果缓存耗尽,磁盘写入来不也会导致性能断崖式的下降
所以虽然可以使用缓存. 但是也必须保证磁盘的性能不能太差

对应的write back 虽然性能好,但是存在丢失数据的风险, 除非有非常全面的数据保护机制
核心的数据库还是建议慎用.

磁盘缓存

现阶段因为 叠瓦硬盘的存在, 硬盘的缓存一般都有了巨大的提升
开启硬盘的缓存对硬盘写入也是有所提升的
但是与write back 一样需要有机制来保证数据安全

也跟write back一样缓存被耗尽,性能也会出现断崖式的下降
甚至导致上层应用出现爆CPU 大量等待磁盘返回的故障.
所以这一块性能测试 必须要长时间大压力进行压测, 压穿缓存才可以验证具体的性能. 

关于数据库的配置

1. 操作系统最好在单独的RAID磁盘组上面. 避免跟核心数据在相同的硬盘上面,出现问题难以解决.
   操作系统可以单独一个两块盘的RAID1进行处理. 可以不用太大,不用强求SSD.
2. 数据库的数据盘最好采用搞转速的HDD SAS盘,或者是高吞吐的SSD进行部署搭建.
   因为数据库的数据盘更多的是离散读和离散写.对磁盘的性能要求极高.
3. 数据库的日志盘可以放到顺序写性能比较好的RAID10的HDD磁盘组上面.
   日志盘需要大量的顺序写并且读比较少. 所以可以如此设置. 缓存也可以开除大量的写入缓存保证性能. 
4. 备份盘建议走场外, 如果必须在当前机器上面建议至少再简历单独的RAID组进行设置
   避免部分村损坏出现严重的数据丢失无法挽回. 

标签:缓存,RAID,性能,写入,back,Raid,思考,磁盘,服务器
From: https://www.cnblogs.com/jinanxiaolaohu/p/17053885.html

相关文章

  • idea本地调试远程服务器的代码
    1.服务器暴露远程调试端口java-Xdebug-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8089-jardemo-1.0.0-SNAPSHORT.jar2.暴露服务端口http://12......
  • 服务器租用价格抉择哪些合适免备案
    服务器租用的费用,一般是由以下几个不同的方面决定的:1.服务器的配置,服务器的配置是决定租用价格的主要因素。品牌不同、配置不一样的服务器的性能差距是非常大的,所以价......
  • Redis 高可用: twemproxy实现缓存服务器分片集群
    Twemproxy又称nutcracker,是一个memcache、redis协议的轻量级代理,一个用于sharding的中间件。有了Twemproxy,客户端不直接访问Redis服务器,而是通过twemproxy代理中间件......
  • 在Linxu云服务器中创建Java版MC服务器
    前言因为学校的课程里有华为云的Linux课程,课程发放有2佰代金券用于开启云服务器,现在课程基本结束了,代金券还剩一百五十多,之前已经试过和舍友开过MC服务器,那趁现在结课的时......
  • centos7 搭建nfs服务器及目录挂载
    服务端配置第一步:安装nfs服务器yuminstallnfs-utils-y如果已经安装过会有已经有该服务的提醒,如下   第二步:创建共享目录并赋予权限mkdir-p/fx/nfs......
  • 通过tcpdump抓取lldp/cdp报文判断服务器上联网络配置
    在一般运维工作中,时常要检查服务器的网络配置,例如服务器有几个网卡,有没有做绑定,上联网络情况等。一般可以从以下几个方面判断:查看布线表查看CMDB搜索相关信息通过上行交换机......
  • 影响云服务器租用价格的因素有哪些
    1、付费方式和地域关于云服务器租用的价格,往往是多方面因素影响得出的结果。不同的付费方式,会影响最终的借个,一般会分为预付费和后付费,一般来说选择预付费的话价格......
  • 透视HTTP协议课程实验环境配置(基于阿里云服务器Ubuntu)
    tags:UbuntuNetwork写在前面最近看看罗剑锋老师的​​透视HTTP协议​​,折腾一下实验环境.本来是想用mac(arm)来做的,无奈Openresty的一个lua扩展不给力,本地编译之后......
  • HttpClient服务器调用发送接收参数对比介绍
    前言:一直使用HttpClient做服务器调用但是老是接收参数有问题,今天把它的常见的方法,用CRUD写了一遍希望对你有用1.POST©sendpostForEntity(url,request就是需要保存的对......
  • 【论文导读】- SpreadGNN: Serverless Multi-task Federated Learning for Graph Neur
    文章目录​​论文信息​​​​摘要​​​​SpreadGNNFramework​​​​用于图层次学习的联邦图神经网络​​​​图神经网络的联邦多任务学习​​​​SpreadGNN​​​​DPA-......