使用MegaCli64快速查看RAID和定位故障硬盘实践

前言

MegaCli 是 LSI 公司官方提供的 SCSI 卡管理工具,由于 LSI 被收购变成了现在的 Broadcom,所以想下载 MegaCli,需要去 Broadcom 官网查找。现在官方有 Storcli,整合了 LSI 和 3ware 所有产品,本文主要以 MegaCli64 为例,无论选择 MegaCli 还是 Storcli 只要在线上环境运行稳定可以获取正确数据就都是合适的方法。

使用MegaCli64快速查看RAID和定位故障硬盘实践

更新历史

2019年07月21日 - 初稿

阅读原文 - https://wsgzao.github.io/post/megacli64/

扩展阅读

MegaCLI vs tw_cli vs Storcli
Extracting the RAID-Controller Logs via MegaCLI


MegaCli简介

MegaRaid 阵列卡管理工具。他可以查看当前 RAID 卡的所有信息,包括 RAID 卡型号、类型、磁盘状态、电池状态等等。学会了如何使用 MegaCli,我们可以在硬盘没有彻底嗝屁(Failed)之前,监测到是否已经出现预告警报错,不需要现场逐台巡检磁盘状态灯。

  1. 使用Zabbix监控硬盘或者使用IPMI接入OOB(Out-of-Band)监控硬件状态
  2. 使用更加成熟的商业化工具管理如云霁科技CloudBoot,拒绝被单一厂商绑架

MegaCli64官网地址: http://docs.avagotech.com/docs/12351587

Linux下默认路径: /opt/MegaRAID/MegaCli/MegaCli64

MegaCli安装

  1. Download the MegaCli utility from the Broadcom support site

  2. Unzip the downloaded files and install them to any directory of your installed operating system (e.g.: Linux – /tmp/megacli)

  3. From a terminal window in Linux, install the using the the following command:

    Note: root priviledges required to install MegaCLI:

    rpm -i MegaCli-8.07.14-1.noarch.rpm

  4. Then change directory into /opt/MegaRAID/MegaCLI/ and run any of the commands from the table below:

Command Action
./MegaCli64 -FwTermLog -Dsply -aALL > /tmp/ttylog.txt Creates the RAID controller log (ttylog)
./MegaCli64 -PDList -aALL > /tmp/disks.txt Creates a list with information about the RAID controllers, virtual disks and hard disks installed
./MegaCli64 -LDInfo -LALL -aALL > /tmp/LDinfo.txt Creates a list with information about existing RAID volumes and configurations
./MegaCli64 -AdpAllInfo -aALL > /tmp/Adapterinfo.txt Creates a list with information about RAID controller settings
./MegaCli64 -AdpBbuCmd -aALL > /tmp/Battery.txt Creates a detailed list of the battery status of the RAID controller (state of charge, learning cycle, etc.)
./MegaCli64 -AdpEventLog -IncludeDeleted -f deleted.txt -aALL Creates the RAID controller log (ttylog) with all information since very first controller initialization( Note: This file will always be saved in the MegaCLI root folder)

使用MegaCli64查看硬盘信息

[root@localhost wangao]# MegaCli -ShowSummary -aALL

System
    Operating System:  Linux version 3.10.0-957.21.3.el7.x86_64
    Driver Version: 07.705.02.00-rh1
    CLI Version: 8.07.06

Hardware
        Controller
                 ProductName       : PERC H730P Mini(Bus 0, Dev 0)
                 SAS Address       : 51866da0a1306300
                 FW Package Version: 25.5.0.0018
                 Status            : Optimal
        BBU
                 BBU Type          : BBU
                 Status            : Healthy
        Enclosure
                 Product Id        : BP13G+EXP
                 Type              : SES
                 Status            : OK

        PD
                Connector          : 00<Internal><Encl Pos 1 >: Slot 0
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 1
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 2
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 3
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 4
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 5
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 6
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 7
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 8
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 9
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 10
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 11
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 12
                Vendor Id          : ATA
                Product Id         : ST9250610NS
                State              : Online
                Disk Type          : SATA,Hard Disk Device
                Capacity           : 232.375 GB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 13
                Vendor Id          : ATA
                Product Id         : ST9250610NS
                State              : Online
                Disk Type          : SATA,Hard Disk Device
                Capacity           : 232.375 GB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 14
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 15
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 16
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

                Connector          : 00<Internal><Encl Pos 1 >: Slot 17
                Vendor Id          : HGST
                Product Id         : HUS726060AL5214
                State              : Online
                Disk Type          : SAS,Hard Disk Device
                Capacity           : 5.457 TB
                Power State        : Active

Storage

       Virtual Drives
                Virtual drive      : Target Id 0 ,VD name
                Size               : 232.375 GB
                State              : Optimal
                RAID Level         : 1

                Virtual drive      : Target Id 1 ,VD name
                Size               : 81.862 TB
                State              : Optimal
                RAID Level         : 5


Exit Code: 0x00
# check virutal disk / raid info
if [[ -f /opt/MegaRAID/MegaCli/MegaCli64 ]]; then
    raidlevel=`sudo /opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -Lall -aALL -NoLog | grep 'RAID Level' | awk -F ":" '{print $2}' | awk -F "," {'print $1}' | awk -F "-" '{print $2}'`
    disk_number=`sudo /opt/MegaRAID/MegaCli/MegaCli64 -PDList -aALL -NoLog | egrep 'Device Id' | awk 'BEGIN {RS=""; FS="\n"} {print NF}'`
    disk_type=`sudo /opt/MegaRAID/MegaCli/MegaCli64 -PDList -aALL -NoLog | egrep 'Media Type' | head -1 | awk -F ":" '{print $2}'`
else
    raidlevel="none"
    disk_number="none"
    disk_type="none"
fi

# test
[root@localhost wangao]# echo $raidlevel
1 5
[root@localhost wangao]# echo $disk_number
18
[root@localhost wangao]# echo $disk_type
Hard Disk Device

Ansible安装MegaCLi64

---
- hosts: all
  become: yes
  gather_facts: no

  tasks:
    - name: upload MegaCli64
      copy:
        src: files/MegaCli-8.07.14-1.noarch.rpm
        dest: /tmp/MegaCli-8.07.14-1.noarch.rpm
        
    - name: install MegaCli64 rpm from a local file
      yum:
        name: /tmp/MegaCli-8.07.14-1.noarch.rpm
        state: present
        
    - name: create symlink for MegaCli64
      file:
        src: /opt/MegaRAID/MegaCli/MegaCli64
        dest: /usr/sbin/MegaCli
        state: link

Ansible使用MegaCli64检查故障硬盘

---
- hosts: all
  become: yes
  gather_facts: no

  tasks:
    - name: Check Disk Status
      command: ./MegaCli64 -ShowSummary -aALL
      args:
        chdir: /opt/MegaRAID/MegaCli/
      register: result
    
    - name: Log check info
      lineinfile:
        dest: "{{inventory_dir}}/ansible.log"
        line: '[Ansiable Tasks: Disk Failure info] host={{inventory_hostname}}'
        insertafter: EOF 
        create: yes
      when: '"Failed" in result.stdout'
      delegate_to: localhost
      become: no

# check log
cat ansible.log
[Ansiable Tasks: Disk Failure info] host=10.71.12.89

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,634评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,951评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,427评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,770评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,835评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,799评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,768评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,544评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,979评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,271评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,427评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,121评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,756评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,375评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,579评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,410评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,315评论 2 352

推荐阅读更多精彩内容

  • cache和buffer写buffer 读cache缓冲区 缓存区磁盘--》内存--》CPU Ra...
    Linux_淡忘阅读 427评论 0 0
  • feisky云计算、虚拟化与Linux技术笔记posts - 1014, comments - 298, trac...
    不排版阅读 3,843评论 0 5
  • Linux默认策略,把没有使用的内存,都会作为缓冲区或者缓存区。 1.常规分区 /boot1024 Swap 内存...
    地瓜_fde4阅读 332评论 0 0
  • Linux默认策略,把没有使用的内存,都会作为缓冲区或者缓存区。 1.常规分区 /boot 1024M swap ...
    轨_迹阅读 261评论 0 0
  • 老师们经常说到:“大家一定要学会尊重别人的劳动成果,做到你我尊重,互相尊重。” 上课时,有同学说废话...
    BJFSU阅读 1,514评论 0 0