CentOS 7 MegaRAID 管理磁盘
<p>http://www.chenshake.com/megaraid-manager-centos/</p><p> </p>
<p class="first-para">对于OpenStack来说,存储基本都是Ceph,那么磁盘一般都会做成raid0或者使用直通模式。对于直通模式,SATA盘的性能,会相对差不少,通过Raid卡,由于有raid卡的缓存,raid0,磁盘的性能会好很多。那么通过Raid卡,设置Raid0,一个问题就是,换盘,机器必须重启设置raid,能不能在运行的机器,把磁盘的raid 重建一下呢?</p>
<p>我在一台3年前的广达的四字星服务器上做验证。</p>
<p>我的raid卡是:LSI MegaRAID SAS PCI Express ROMB</p>
<p> </p>
<div id="toc_container" class="no_bullets">
<p class="toc_title">Contents <span class="toc_toggle"></span></p>
<ul class="toc_list">
<li><span class="toc_number toc_depth_1">1 确认Raid卡</span></li>
<li><span class="toc_number toc_depth_1">2 安装megacli</span></li>
<li><span class="toc_number toc_depth_1">3 查看</span>
<ul>
<li><span class="toc_number toc_depth_2">3.1 查看硬盘信息</span></li>
<li><span class="toc_number toc_depth_2">3.2 查看单盘的详细信息</span></li>
<li><span class="toc_number toc_depth_2">3.3 查看逻辑盘详细信息</span></li>
<li><span class="toc_number toc_depth_2">3.4 查看raid卡全部信息</span></li>
</ul>
</li>
<li><span class="toc_number toc_depth_1">4 Raid配置过程</span>
<ul>
<li><span class="toc_number toc_depth_2">4.1 点亮指定硬盘(定位)</span></li>
<li><span class="toc_number toc_depth_2">4.2 修改磁盘状态</span></li>
<li><span class="toc_number toc_depth_2">4.3 Foreign</span></li>
<li><span class="toc_number toc_depth_2">4.4 创建raid0</span></li>
<li><span class="toc_number toc_depth_2">4.5 JBOD模式</span></li>
</ul>
</li>
</ul>
</div>
<h1><span id="Raid">确认Raid卡</span></h1>
<pre># dmesg | grep -i raid
[ 2.981279] megaraid_sas 0000:06:00.0: FW now in Ready state
[ 2.981330] megaraid_sas 0000:06:00.0: irq 36 for MSI/MSI-X
[ 2.981532] megaraid_sas 0000:06:00.0: irq 51 for MSI/MSI-X
[ 2.981585] megaraid_sas 0000:06:00.0: firmware supports msix : (16)
[ 2.981587] megaraid_sas 0000:06:00.0: current msix/online cpus : (16/24)
[ 2.981589] megaraid_sas 0000:06:00.0: RDPQ mode : (disabled)
[ 2.982991] megaraid_sas 0000:06:00.0: FW supports sync cache : No
[ 3.003325] megaraid_sas 0000:06:00.0: Init cmd success
[ 3.025320] megaraid_sas 0000:06:00.0: firmware type : Legacy(64 VD) firmware
[ 3.025323] megaraid_sas 0000:06:00.0: controller type : MR(1024MB)
[ 3.025324] megaraid_sas 0000:06:00.0: Online Controller Reset(OCR): Enabled
[ 3.025325] megaraid_sas 0000:06:00.0: Secure JBOD support : No
[ 3.125498] scsi host0: Avago SAS based MegaRAID driver</pre>
<p>我的理解市场上99%服务器,基本都会是LSI的raid卡,都可以通过mega raid的工具进行管理。</p>
<h1><span id="megacli">安装megacli</span></h1>
<p>https://www.broadcom.com/support/download-search</p>
<p>搜索框里搜索 megacli</p>
<p><img src="http://www.chenshake.com/wp-content/uploads/2017/05/Snap2_thumb.png"></p>
<p>一个zip文件,上传到linux下,解压,进入linux目录下,就一个rpm包</p>
<pre>rpm -ivh MegaCli-8.07.14-1.noarch.rpm
</pre>
<h1><span id="i">查看</span></h1>
<p>现在就根据文档,一步一步进行测试</p>
<h2><span id="i-2">查看硬盘信息</span></h2>
<pre>/opt/MegaRAID/MegaCli/MegaCli64 -PDList -aALL</pre>
<p>信息量很多。</p>
<p>可以通过命令过滤一下</p>
<pre>/opt/MegaRAID/MegaCli/./MegaCli64 -PDList -aALL \
| egrep 'Adapter|Enclosure Device ID|Coerced Size|Drive Temperature|PD Type|Slot|Inquiry'</pre>
<p>这样输出有效信息</p>
<pre>Adapter #0
Enclosure Device ID: 252
Slot Number: 0
PD Type: SATA
Non Coerced Size: 446.630 GB
Coerced Size: 446.625 GB
Inquiry Data: BTWL502105DX480QGNINTEL SSDSC2BB480G4 D2010370
Drive Temperature : N/A
Enclosure Device ID: 252
Slot Number: 1
PD Type: SATA
Non Coerced Size: 446.630 GB
Coerced Size: 446.625 GB
Inquiry Data: BTWL502201GP480QGNINTEL SSDSC2BB480G4 D2010370
Drive Temperature : N/A
Enclosure Device ID: 252
Slot Number: 2
PD Type: SATA
Non Coerced Size: 931.012 GB
Coerced Size: 931.0 GB
Inquiry Data: 9XG6PQX4ST91000640NS SN03
Drive Temperature :25C (77.00 F)
Enclosure Device ID: 252
Slot Number: 3
PD Type: SATA
Non Coerced Size: 931.012 GB
Coerced Size: 931.0 GB
Inquiry Data: 9XG2XPCBST91000640NS SN03
Drive Temperature :24C (75.20 F)
Enclosure Device ID: 252
Slot Number: 4
PD Type: SATA
Non Coerced Size: 931.012 GB
Coerced Size: 931.0 GB
Inquiry Data: 9XG6Q1F6ST91000640NS SN03
Drive Temperature :24C (75.20 F)
Enclosure Device ID: 252
Slot Number: 5
PD Type: SATA
Non Coerced Size: 931.012 GB
Coerced Size: 931.0 GB
Inquiry Data: 9XG5ARPZST91000640NS SN03
Drive Temperature :25C (77.00 F)</pre>
<p>我的理解</p>
<ul>
<li>Adapter0:第一块卡的意思</li>
<li>Enclosure Device ID:252 这个参数很重要,设置raid要用到</li>
<li>slot neumber :0,硬盘插入的位置</li>
<li>PD type:接口是SATA接口,不是SAS接口</li>
<li>core size:容量</li>
<li>inquiry data:硬盘产商,可以看出是intel出的ssd</li>
<li>Drive temperature:磁盘温度,SATA盘是有温度,ssd没有</li>
</ul>
<p> </p>
<h2><span id="i-3">查看单盘的详细信息</span></h2>
<pre> /opt/MegaRAID/MegaCli/MegaCli64 -pdInfo -PhysDrv -aALL</pre>
<p>252,就是Enclosure Device ID</p>
<p>3:就是slot neumber</p>
<h2><span id="i-4">查看逻辑盘详细信息</span></h2>
<pre>/opt/MegaRAID/MegaCli/MegaCli64 -LdPdInfo -aALL</pre>
<p> </p>
<h2><span id="raid">查看raid卡全部信息</span></h2>
<pre># /opt/MegaRAID/MegaCli/MegaCli64 -AdpAllInfo -aAll</pre>
<p>基本上raid卡的功能,都是可以通过这个命令查看。</p>
<p><img src="http://www.chenshake.com/wp-content/uploads/2017/05/Snap3_thumb.png"></p>
<p>你所使用的raid卡型号是:LSI MegaRAID SAS PCI Express ROMB</p>
<p>另外默认 JBOD是关闭的,底下有介绍,可以通过命令打开这个功能。</p>
<h1><span id="Raid-2">Raid配置过程</span></h1>
<h2><span id="i-5">点亮指定硬盘(定位)</span></h2>
<pre>/opt/MegaRAID/MegaCli/MegaCli64 -PdLocate -start -physdrv -a0</pre>
<p>一排绿色的硬盘灯,有一个变成红色</p>
<p><img src="http://www.chenshake.com/wp-content/uploads/2017/05/raid_thumb.png"></p>
<p>start改成stop,就会恢复绿色。很实用。</p>
<p>拔出亮红灯磁盘,再次插入</p>
<pre># /opt/MegaRAID/MegaCli/MegaCli64 -PDList -aALL -Nolog|grep '^Firm'
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Unconfigured(bad)</pre>
<h2><span id="i-6">修改磁盘状态</span></h2>
<pre># /opt/MegaRAID/MegaCli/MegaCli64 -PDMakeGood -PhysDrv-a0
Adapter: 0: EnclId-252 SlotId-5 state changed to Unconfigured-Good.</pre>
<p>查看状态</p>
<pre>]# /opt/MegaRAID/MegaCli/MegaCli64 -PDList -aALL -Nolog|grep '^Firm'
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Unconfigured(good), Spun Up</pre>
<h2><span id="Foreign">Foreign</span></h2>
<p>扫描 Foreign</p>
<pre>/opt/MegaRAID/MegaCli/MegaCli64 -cfgforeign -scan -a0
There are 1 foreign configuration(s) on controller 0.
Exit Code: 0x00</pre>
<p>发现有一个 Foreign</p>
<p>清除Foreign</p>
<p>/opt/MegaRAID/MegaCli/MegaCli64 -cfgforeign -clear –a0</p>
<p>Foreign configuration 0 is cleared on controller 0. Exit Code: 0x00</p>
<p>再次扫描</p>
<p>/opt/MegaRAID/MegaCli/MegaCli64 -cfgforeign -scan –a0</p>
<p>There is no foreign configuration on controller 0. Exit Code: 0x00</p>
<h2><span id="raid0">创建raid0</span></h2>
<pre># /opt/MegaRAID/MegaCli/MegaCli64 -CfgLdAdd -r0 WT Direct -a0
Adapter 0: Created VD 5
Adapter 0: Configured the Adapter!!
Exit Code: 0x00</pre>
<p>252,就是raid卡里的 Enclosure Device ID</p>
<p>5:Slot Number</p>
<p>a0:表示Adapter #0</p>
<p> </p>
<h2><span id="JBOD">JBOD模式</span></h2>
<p>启用raid卡的JBOD模式</p>
<pre># /opt/MegaRAID/MegaCli/MegaCli64 -AdpSetProp -EnableJBOD -1 -aALL
Adapter 0: Set JBOD to Enable success.</pre>
<p>查看raid卡的功能的时候,就会发现</p>
<p><img src="http://www.chenshake.com/wp-content/uploads/2017/06/jbod_thumb.png"></p>
<p>删掉 raid0</p>
<pre># /opt/MegaRAID/MegaCli/MegaCli64 -CfgLdDel -L5 -a0
Adapter 0: Deleted Virtual Drive-5(target id-5)</pre>
<p>磁盘状态</p>
<pre># /opt/MegaRAID/MegaCli/MegaCli64-PDList -aALL -Nolog|grep '^Firm'
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Unconfigured(good), Spun Up</pre>
<p>JBOD模式</p>
<pre># /opt/MegaRAID/MegaCli/MegaCli64 -PDMakeJBOD -PhysDrv -a0
Adapter: 0: EnclId-252 SlotId-5 state changed to JBOD.</pre>
<p>再查看磁盘状态</p>
<pre># /opt/MegaRAID/MegaCli/MegaCli64-PDList -aALL -Nolog|grep '^Firm'
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: Online, Spun Up
Firmware state: JBOD</pre>
<p> </p>
<p>参考文章</p>
<p>http://blog.csdn.net/msdnchina/article/details/52475383</p>
<p>http://blog.sina.com.cn/s/blog_57c70e190101ebl9.html</p>
<p>http://www.tuicool.com/articles/nmU3i2f</p>
<p> </p>
<p>脚本</p>
<pre>/opt/MegaRAID/MegaCli/MegaCli64 -LdPdInfo -aAll -NoLog|grep -Ei '(^Virtual Disk|^RAID Level|^PD type|^Raw Size|^Enclosure|^Slot|error|firmware)' | awk '{if($0~/^Virtual/||$0~/^RAID/){printf("\033[35m%s\033[0m\n",$0)}else if($0 ~ /^Enclosure/){printf("\033[31m%s: %s\033[0m ",$1,$4)}else if($0 ~ /^Slot/){printf("\033[31m%s\033[0m\n",$0)}else if($0~/^Other/||$0~/Firmware/){printf("\033[33m%s\033[0m\n",$0)}else if($0~/^Raw/){printf("\033[33m%s%s\033[0m\n",$2,$3)}else{printf("\033[33m%s\033[0m ",$0)}}'</pre>
<p>会显示所有硬盘raid的情况</p>
<pre>RAID Level : Primary-0, Secondary-0, RAID Level Qualifier-0
Enclosure: 252 Slot Number: 0
Enclosure:Media Error Count: 0 Other Error Count: 0
PD Type: SATA Size:447.130
Firmware state: Online, Spun Up
Device Firmware Level: 0370
RAID Level : Primary-0, Secondary-0, RAID Level Qualifier-0
Enclosure: 252 Slot Number: 1
Enclosure:Media Error Count: 0 Other Error Count: 0
PD Type: SATA Size:447.130
Firmware state: Online, Spun Up
Device Firmware Level: 0370
RAID Level : Primary-0, Secondary-0, RAID Level Qualifier-0
Enclosure: 252 Slot Number: 2
Enclosure:Media Error Count: 0 Other Error Count: 0
PD Type: SATA Size:931.512
Firmware state: Online, Spun Up
Device Firmware Level: SN03
RAID Level : Primary-0, Secondary-0, RAID Level Qualifier-0
Enclosure: 252 Slot Number: 3
Enclosure:Media Error Count: 0 Other Error Count: 0
PD Type: SATA Size:931.512
Firmware state: Online, Spun Up
Device Firmware Level: SN03
RAID Level : Primary-0, Secondary-0, RAID Level Qualifier-0
Enclosure: 252 Slot Number: 4
Enclosure:Media Error Count: 0 Other Error Count: 0
PD Type: SATA Size:931.512
Firmware state: Online, Spun Up
Device Firmware Level: SN03</pre>
<hr>
<p> </p><br><br>
来源:https://www.cnblogs.com/xiaodoujiaohome/p/11729103.html
頁:
[1]