ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

四大存储品牌运维实战:从巡检、换盘到性能优化与容灾

四大存储品牌运维实战:从巡检、换盘到性能优化与容灾 1. 四大存储品牌的前世今生先搞懂你手里的是哪类兵器干了这么多年存储运维有个特别深的体会很多人报错时说我这边存储出问题了但NetApp、华为、HP 3PAR、EMC这四家的存储从底层架构到运维逻辑完全不是一回事。用武侠小说打比方这四家分别是不同门派的武功招式套路、内功心法差异极大。你要是用对付EMC的思路去处理NetApp十有八九会踩坑。先简单梳理一下这四家的血统和定位这决定了后续所有的运维动作。NetApp网络存储血统纯正的NAS专家主打CIFS/SMB和NFS文件共享WAFL文件系统和Snapshot快照是它的看家本领。在VMware虚拟化和数据库备份场景里NetApp的FlexClone和SnapMirror简直是好用到让人感动。它的核心卖点是文件级的精细管理和近乎无限的快照能力。国内金融和制造行业用得非常多。华为OceanStor系列国产存储的一哥产品线极广从入门级S2200T到高端Dorado全闪系列覆盖了高中低端全部市场。华为存储最大的特点是软硬结合紧密OceanStor的InfoReplication远程复制、HyperMetro双活、SmartTier分层等功能在政企和运营商市场占有率极高。它的管理界面是中文友好的但底层也是完整的企业级SAN架构千万别把它当高级硬盘盒看。HP 3PAR这是HP收购来的高端存储品牌企业级SSD优化和ASIC芯片加速是它的强项。3PAR的Mesh-Active架构天生就是为双活和负载均衡设计的多控制器并行处理能力在四家里是非常突出的。虽然现在HP主推Alletra和Primera但存量3PAR在国内还有大量装机量会修3PAR依然是很多企业硬性需求的技能点。EMCDell EMC存储界的老牌霸主VNX、Unity、VMAX、XtremIO、PowerMax等一系列产品线让人眼花缭乱。EMC的PowerPath多路径软件、TimeFinder快照、SRDF远程复制是企业级灾备方案的标配。尤其要说的是EMC很多中高端产品都是基于VNX的Block架构操作习惯和华为、3PAR呈现出比较明显的差异入门成本更高但学会了收益巨大。我的建议是新人入门先把这四家的架构图找来看一遍重点理解它们的控制架构和数据通路有什么不同。这决定了你下一条命令、点哪一个菜单之前脑子里应该预判到它会怎么运作。2. 日常巡检的正确姿势别等亮红灯才想起来看存储很多运维兄弟巡检就是看一眼状态灯绿色就完事。这是大错特错的。存储的故障往往是渐进式的等你在界面看到红色告警底层可能已经折腾好几个小时了。根据我的经验一份靠谱的巡检至少要覆盖五个维度硬件状态、性能趋势、容量水位、链路健康度和日志告警。2.1 硬件状态的检查清单硬件巡检是基础但不是光看灯。四家存储各有各的工具和命令我平时是这样做的NetApp登录ONTAP命令行用system node hardware health show和storage shelf show查看控制器和扩展柜的健康状态。重点看电池状态、风扇转速、温度传感器是否异常。NetApp的电池如果老化会直接导致write cache被迫禁用性能会遭到断崖式下跌这可是非常严重的问题。华为OceanStor在DeviceManager管理界面里看系统→硬件检查控制框和硬盘框的所有部件状态。命令行可以用show hardware status。华为的硬盘故障灯是橙色但其实界面上很多隐性故障更值得关注比如BBU电池备份单元的充放电次数。HP 3PAR主要靠SSMC3PAR Service Manager Console或CLI工具查看控制器节点shownode和硬盘状态showpd。3PAR的ASIC和缓存状态需要特别关注它比较有特点的地方是全局热备空间设计日志里会经常报ld和pd的状态需要看得懂。EMC VNX/UnityUnisphere界面下方有硬件状态栏也可以用naviseccli -h 管理IP getdisk等命令查看盘的状态。EMC的SP存储处理器故障切换是看家本领巡检时重点看SP是否发生过意外重启。Dell EMC Unity则用UEMCLI命令类似。特别提醒巡检不是看一眼而是要有基线基线再基线。第一次巡检记录下来的硬件温度、风扇转速、IO延迟才是后续判断是否异常的黄金标准。没有基线你看到的所有数据都只是数字而已。2.2 性能与容量比你想象中更能说明问题容量巡检大家都会做但我要说的是容量不只是满了没有还要看增长趋势和热点分布。NetAppdf -h看得不全因为还要看WAFL的文件系统保留空间和快照占用。用df -A可以看到聚合的使用率volume show看每个卷的空间重点要看的是快照空间是否被慢慢吃光这在NetApp里是最常见的隐形杀手。性能用statit或statistics show -object vserver看关注CPU、NFS/SMB延迟、以及FCP的IOPS。华为DeviceManager里的监控模块很强大可以下钻到每个LUN的IOPS、带宽和时延。华为的SmartTier功能在做容量和性能平衡时需要看数据迁移状态如果不停地在冷热数据之间搬移也是会给前端业务带来明显影响的。3PARshowpd -c看磁盘容量showvv看虚拟卷statpd、statvv看性能。3PAR的写惩罚Write Penalty在R5和R6中需要重点观察它默认的RAID策略如果是R6那写性能不能按照理论值去预估巡检时如果发现后端磁盘延迟高要优先想到是不是RAID级别在作祟。EMCUnisphere的性能标签能看SP的CPU、吞吐量和延迟。VNX的写缓存刷入策略Write Aside值得关注如果SP的写缓存命中率很低说明前端写入压力已经很大了。容量水位我一般按照70%预警、80%告警、90%紧急扩容的标准来把控。不同的RAID级别热备空间、快照预留、文件系统元数据开销对实际可用容量的计算是有差异的一定要用厂商的容量计算工具别自己拿硬盘容量去乘那大概率算出乐观值其实根本不够用。3. 磁盘更换的完整流程那块亮红灯的盘不是你想拔就能拔磁盘故障与更换是存储运维日常工作中碰到频率最高的事。很多同行觉得换盘嘛拔出来插新的不就行了——行是行但在一套有业务运行的存储上一时冲动的行很可能会导致数据重建失败甚至数据丢失。这里我按品牌分别说下规范和实战技巧。3.1 换盘前的三查三确认不管什么品牌在拔盘前都建议完成以下动作确认故障盘位不要只看管理界面的报错最好用命令把盘所在的位置和序列号对一遍。有次我遇到华为报slot 10故障结果现场灯闪的却是slot 11是之前盘位映射乱掉了直接拔就出大事了。确认RAID冗余状态看这块盘所在的RAID组是不是处于降级Degraded状态。如果已经是降级状态那说明已经掉了一块盘了此时再拔第二块会直接导致RAID失效必须立即处理而不是等备件。确认是否属于热备盘有些盘虽然亮故障灯但实际是全局热备盘Spare你在换之前最好看下是否有正在进行的重建任务Rebuilding如果有那么热备盘正在替故障盘进行数据重建此时你拔掉的是正在工作且非常重要的盘后果不堪设想。3.2 各品牌的换盘细节差异NetApp换盘NetApp的盘位很好认扩展柜上有小指示灯。换盘时注意戴好防静电手环在ONTAP中用storage disk show -broken确认故障盘然后直接物理拔出插入新盘后系统会自动识别并开始重建。NetApp相对省心的一点是WAFL会自动把新盘纳入聚合不需要手动重建。但注意老型号NetApp比如DS4243柜子的盘托有锁扣别硬拽。插新盘时确保推到底听到咔嗒声再锁住。华为OceanStor换盘华为管理界面会明确显示故障盘位置如框号-槽位号。拔盘前在DeviceManager里把故障盘如果系统允许设置为离线状态再进行物理更换。华为SATA/NL-SAS盘的盘托螺丝位置容易拧滑丝要用原装螺丝刀别用普通十字口硬拧。新盘插入后在界面硬盘管理中确认新盘被识别状态变为未使用或重构中即可。如果是V3/V5系列浏览器最好用适配版本有时界面显示了重建完成但后台还在搬数据要多观察一段时间。3PAR换盘3PAR的命令行思维很强换盘几乎离不开CLI。先用showpd -i查看盘的状态normal、degraded、failed确定故障盘后用removeduty -f 盘号将该盘设置为移除状态然后物理拔盘。插上新盘后需要用createpd -f将新盘加回磁盘组Disk Group然后再用admitpd或movesp -f等命令把它作为热备或加入现有池。切记3PAR很多版本不会自动把新盘纳入你不手动处理它就永远在那躺着当孤儿。EMC换盘VNX/Unity系列相对友好。在Unisphere中确认盘故障后物理拔盘、换新系统一般会自动开始重建Rebuild。但VNX的盘位有时候在背面且有防误拔卡扣需要按压旁边的卡扣才拔得出来不要硬拽。换完后需要观察重建进度如果SP的Cache里面有脏数据重建完成前不建议执行其他高负载操作。VMAX系列则是另一套逻辑需要SRDF或TimeFinder的配合普通运维少碰建议让原厂来。3.3 换盘后的重建监控换盘只是开始重建才是关键。重建过程中最怕的就是二次故障——另一块盘在重建压力下也挂了。所以重建期间建议做几件事降低前端业务压力如果是核心库和业务方沟通一下不要在重建窗口跑大查询或批量任务。监控重建进度NetApp的storage disk show -rebuilding华为的 重构任务3PAR的showpd -rEMC的 Unisphere Rebuild Progress。同时检查其他盘的SMART信息看有没有潜在隐患。4. 性能优化实战业务慢了到底卡在哪性能问题排查是存储运维技能里最有含金量的一部分。很多应用层慢查到最后DBA和开发都指向存储如果是存储的锅而你反驳不了那就很容易陷入被动的局面。学会自己判断和定位是提高话语权的关键。4.1 先判断是存储慢还是主机侧慢有个基本的排查顺序是应用 → 网络 → 主机HBA/驱动 → 多路径 → 存储端口 → 存储控制器 → 存储硬盘。在存储侧接到性能变慢的反馈时第一件事不是看存储而是看主机侧的多路径状态和HBA卡日志。如果是Windows主机看看MPIO是否所有路径都是Active/Optimized如果是Linux用multipath -ll看路径是否都正常。一旦有链路切换发生在存储端往往主机侧会有短暂超时如果多路径软件没配好业务直接就中断了。确认主机侧没问题后再上存储看监控。4.2 各品牌的性能瓶颈诊断要点NetApp看延迟ONTAP的statistics show -object disk和vserver是核心工具。重点指标NFS/CIFS延迟、FCP延迟、以及Cache Hit率。NetApp读路径上还依赖缓存如果某个卷的读延迟高先看缓存命中率是否下降了。另外NetApp的Snapshot如果太多太深也会影响写性能尤其是没启用snapshot auto-delete的老版本。华为看队列华为DeviceManager的性能监控能看到每个LUN的IOPS、带宽和时延还有控制器CPU和前端端口流量。这里有个经验值控制器CPU超过70%时一般建议开始做压力评估和调整超过85%则基本进入饱和区间。华为SmartQoS可以用来限流但不要滥用先分清是容量瓶颈还是性能瓶颈。如果盘是机械盘IOPS上不去很正常不要指望SEServer Engineer调参能把物理盘的IOPS调上去这是物理极限。3PAR看后端3PAR的ASIC技术让它前端控制器处理能力很强但瓶颈往往会在后端磁盘。用statpd看每个磁盘PD的busy和avg svc time。如果大多数盘都处于高busy状态说明盘数不够或RAID策略太重办法是加盘或考虑做tunevv调整RAID级别比如从R6改成R5但要注意安全性。3PAR特别适合做SSD与HDD分层但前提是配置了相应功能。EMC看缓存命中VNX/Unity性能好坏写缓存命中率是一个非常关键的指标。登录Unisphere看缓存页面如果写缓存命中率长期很低会出现写IO直接打到后端盘上的情况延迟自然就上来了。此时可以考虑增加SP的缓存需要停业务谨慎操作优化前端连接的FC交换机Zone配置避免链路拥塞检查是否有慢盘 / 坏盘导致后端重建持续吃性能4.3 快速缓解性能问题的三板斧当业务已经很慢但一时找不到根因时可以先做一些保命操作Check并清理孤立快照尤其是NetApp和EMC快照太多会导致读写性能明显下降。删除不再需要的快照往往能立竿见影。调整主机侧的队列深度Windows的Disk Queue、Linux的nr_requests适当调高可以提升吞吐但不要盲目加太猛反而会增加存储端压力。提高多路径负载均衡策略确认各品牌的ALUUA机制是否正常、路径是否全部激活有些时候主机侧某条链路断了多路径没有自动Failback业务就等于少一半通道在跑。性能排查最忌讳头痛医头脚痛医脚。不要只看一个指标要结合IOPS、带宽、时延、队列深度、缓存命中率、盘利用率多个维度去交叉判断。不然你调了半天可能只是把压力从瓶颈A搬到了瓶颈B。5. 快照、复制与容灾这些高级功能用好了是神器用不好是灾难存储上的高级功能并不高不可攀它们在你的日常运维中发挥着重要作用。但越强大的功能往往也越容易在配置失误时造成较大风险。下面重点讲快照Snap和远程复制Replication在四家产品上的运维要点。5.1 快照的空间陷阱快照的原理是写时复制或写重定向它本身不占空间等数据发生变化时才逐渐占用空间。所以很多人误以为快照不要空间结果某天突然发现存储空间报警——其实是快照把空间悄无声息地吃掉了。NetApp默认自动启用Snapshot而且频率可能很高每小时一份。在文件变化量很大的卷上如果不控制快照数量那么快照占用空间会很快七八成。建议用snapshot autodelete配合volume modify -snapshot-policy控制。另外删除快照时系统会做后台的合并操作会短暂增加IO负载生产高峰期最好不要大批量删。华为OceanStor华为叫快照和HyperSnap它默认是创建在独立的快照空间Copy里。界面创建时有个预分配空间的选项建议根据数据日变化量来设不要给太少否则快照写满后新的写IO会失败对业务影响不小。3PAR3PAR的快照依赖虚拟卷VV的空间用showvv -p看预留空间。它的快照机制是写重定向所以创建快照很快也不会占大量空间。但要注意3PAR的快照和父卷共享底层物理空间如果父卷删除了快照空间会被特殊处理别在没搞懂依赖关系时随便删除。EMC VNX/UnityVNX的快照是写时复制Unity开始转向写重定向。用Unisphere查看快照空间常见问题是快照太多随着数据变动越来越大甚至超过原卷大小。建议定期清理过期快照保留重要时间点即可。我的个人习惯是快照策略要跟着数据变更是频率走而不是默认计划。比如业务发版前、数据库大操作前临时做一份手动快照然后保留3~5天即可。自动快照则保持较低频率一天一次或两次即可。5.2 远程复制与双活的注意点远程复制如华为HyperReplication、3PAR Remote Copy、EMC SRDF、NetApp SnapMirror在灾备场景里属于核心能力。日志里经常看到复制链路中断或RPO延迟的告警。运维上要特别注意以下几点别轻易断开复制关系链路抖动很多是物理线路造成的一旦你在存储侧手动断开了复制对重新建立同步需要做全量初始化这会占用大量带宽和后端IO反而可能把生产性能拖垮。关注复制限速华为和3PAR都支持设置复制带宽上限。如果业务高峰期发现远程复制占用WAN带宽太大可以适当限制复制速度。但要注意限速可能导致RPO拉长灾备指标就会受影响。Failover测试别嫌麻烦真正到灾难发生时才第一次演练Failover的团队很多都会在现场出现各种小状况。建议每半年至少做一次模拟切换把主备角色换来换去让所有相关人员熟悉操作手册。测试完别忘了failback我就见过有人只做切换不切回来的生产链路和灾备角色全乱了。6. 常见告警与故障实战复盘那些让人深夜起床的坑存储告警里有很多看起来要命其实虚惊一场的情况也有一些看着是小问题结果是大事的。分享几个我处理过的真实场景都是一些典型的案例。6.1 NetApp: 突然出现 WAFL inconsistent 告警有次凌晨收到NetApp告警显示某个聚合Aggr出现WAFL不一致。当时心里还是有点紧张的。处理方式先确认卷是否在线业务是否已中断。确认后立刻安排维护窗口使用revert-to-snapshot将聚合回滚到最近的快照必须保证快照存在且业务接受的RPO范围然后执行wafl scan检查。整个过程我总结出几个教训平时一定要确保快照策略有效那次能快速恢复靠的就是几天前的快照没被自动清掉。不要在业务高峰期做revert-to-snapshot会导致前端IO短暂中断。如果触发原因是异常断电先检查BBU电池和电源模块别只重启完存储就不管了。6.2 华为: 控制器出现镜像通道异常导致LUN不可用华为OceanStor双控架构中两个控制器之间通过镜像通道Mirror Channel同步缓存数据。如果这个通道故障控制器之间无法镜像写缓存就会自动禁用写缓存Write Cache前端写IO性能瞬间暴跌甚至报错。排查经验法则是检查两根控制器间的互联线缆SAS/FC内部线是否松动有时候是机房保洁搞卫生碰到线缆了。如果线缆正常看看是不是控制器内部软件异常导致Cache镜像功能降级。可以先尝试reset ctrl cache或进行控制器重启必须确认另外一台控制器健康能接管业务后再重启。如果重启后依然异常优先联系厂家不要自己反复重启避免两侧控制器都拉起单边运行而出现脑裂Split Brain。6.3 3PAR: 控制器节点频繁重启3PAR如果经常出现节点重启Node reboot多半情况下是内存错误或固件Bug。有一次遇到3PAR一台控制器反复重启前端业务时断时续。排查用shownode看节点状态和重启原因代码。检查系统事件日志showalert -d里的硬件告警特别是内存/CPU寄存器类错误。不推荐强行频繁重启节点这会让另一个节点负载过高甚至引发双节点故障。这种场景下备份好配置和告警信息后联系原厂更换硬件或升级固件是最稳妥的选择。6.4 EMC VNX: SP的写缓存Flush操作时间过长VNX的SP中如果写缓存积累了大量数据比如突然掉电或SP重启重启后SP会做Cache Flush这段时间前端会经历一段写性能下降。遇到这种情况我的建议是先观察不要急着把SP再重启一遍重复重启只会让Flush不断重新开始难以完成。通过Unisphere查看Flush进度同时检查后端的磁盘组有没有异常盘在拖慢Flush速度。如果Flush时间异常长检查是不是有坏盘一直处于重建状态那相当于一边Flush一边重建系统当然会很繁忙。这些案例的共同教训是什么故障发生时第一反应不是怎么修而是业务影响多大、是否需要立即切换、需要不需要叫原厂。存储设备一般都有冗余保持冷静分析按优先级处理即可。7. 日常运维管理经验把经验沉淀成自己的文件关于存储运维最后分享一些长期积累的管理心得比较零散但对实际工作很有帮助。7.1 资产管理比记住密码更重要的是有文档我见过太多项目存储管理员的个人电脑里存着一堆密码、一堆命令、一堆告警截图一旦这个人休假或离职其他人就寸步难行。建议把每个存储的以下信息整理到团队共享文档里资产信息说明设备型号/序列号/固件版本是否在当前厂商支持矩阵内管理IP / 存储业务IP / 子网规划排障时快速定位各业务LUN的映射关系主机-存储-数据库的对应关系快照/复制策略配置表包含保留周期、复制目标、RPO密码保管方式不能明文放在桌面应放入企业密码保险箱原厂服务编号 / 服务热线关键时刻能少走很多弯路存储变更必须走变更流程即便你觉得只是调个小参数也可能导致全公司核心数据库停机几小时——先申请窗口、备份配置、准备回退方案再执行操作。别嫌麻烦这个流程往往会在关键时刻保护你自己。7.2 定期检查固件和驱动版本存储固件不是越新越好但也不能常年不升级。华为、NetApp、EMC、3PAR在一定时间后都会发布固件补丁修复已知问题。但在升级前必须确认以下事项固件版本是否与后端磁盘、扩展柜、主机HBA驱动兼容升级窗口是否有足够时间高门槛存储升级可能要一两个小时甚至更久是否通知了业务方是否有回退方案升级完是否有验证清单很多存储故障其实是新旧硬件/固件混跑导致的兼容性问题保持各部件版本在同一个兼容列表内比一味追求新版本重要得多。7.3 关于文档化的最后一点我的习惯是每处理一个故障就写一份故障复盘纪要包含现象、影响、排查链路、根因、解决方案、预防措施。这些纪要一年积攒下来就是团队最宝贵的知识库。存储运维领域很多东西不靠灵光一现而是靠经验积累。很多人让我总结老运维和新运维差别在哪我想差别就在这些文档里新运维在翻手册老运维在翻自己踩坑记录速度和准头完全不一样。搞存储说到底是个细致活。市面上这四个主流品牌都有各自的脾气但很多底层的原理是相通的RAID、多路径、缓存、快照、复制这些都是存储的通用语言。把基本功打扎实再逐个击破各品牌的差异化操作工作起来就会顺手很多。
返回列表