MegaCLI Cheatsheet

30/12/2020

Megaraid CLI hay còn được gọi tắt MegaCLI là một công cụ thao tác trên dòng lệnh command line nhằm quản lý các controller của dòng LSI MegaRaid. MegaCLI có thể quản lý thông tin, giám sát tình trạng về raid, tạo xóa raid.

1. Kiểm tra thông tin card RAID đang sử dụng

Sử dụng lspci để kiểm tra thông tin card RAID mà bạn đang sử dụng

yum install -y pciutils  lspci -knn | grep 'RAID bus controller'

MegaCLI chỉ sử dụng được đối với dòng LSI MegaRaid cho nên đến bước này nếu đúng là card RAID của bạn là dòng LSI MegaRaid thì chúng ta tiếp tục theo dõi bài viết để cùng xem xem: MegaCLI sử dụng như thế nào?

2. Các khái niệm cơ bản

  • Adapter: Physical controller mà chúng ta sử dụng, được biểu diễn bởi ID (đa số là 0)
  • Enclosure: Là các chassis backplan dùng để gắn các ổ vật lý , biểu diễn bởi các id, giống như: 32, 33…
  • Physical Drives: Là các ổ cứng vật lý được gắn vào slot (khe) ổ cứng tương ứng biểu diễn bằng các id: 0, 1, 2, …
  • Virtual Drives: Là các ổ Logical được Raid từ các ổ Physical biểu diễn bằng các id: 0, 1, 2, … Nó bao gồm các thông tin như cấp độ Raid (0,1,5,10…) các ổ Physical được sử dụng, strip size ,…

3. Cài đặt MegaCLI

Nội dung bài viết sẽ tập trung chủ yếu vào cài đặt sử dụng MegaCLI trên Linux (CentOS7, Ubuntu18). Chúng ta có thể download file cài đặt tại trang chủ

Cài đặt MegaCLI trên CentOS7

yum install sg3_utils wget git -y git clone https://github.com/nhanhoadocs/ghichep-megacli.git rpm -ivh ghichep-megacli/MegaCli8.07.14/Linux/MegaCli-8.07.14-1.noarch.rpm echo "alias megacli='/opt/MegaRAID/MegaCli/MegaCli64'" >> /root/.bashrc source /root/.bashrc

Cài đặt MegaCLI trên Ubuntu18

sudo apt-get install wget sg3_utils git -y git clone https://github.com/nhanhoadocs/ghichep-megacli.git sudo dpkg -i ghichep-megacli/MegaCli8.07.14/Linux/megacli_8.07.14-1_all.deb echo "alias megacli='/opt/MegaRAID/MegaCli/MegaCli64'" >> /root/.bashrc source /root/.bashrc

4. Các lệnh thao tác cơ bản với MegaCLI

Hiển thị trạng thái tổng quan hệ thống

megacli -ShowSummary -aALL

Hiển thị thông tin chi tiết của SAS/SATA

megacli -AdpAllInfo -aALL megacli -CfgDsply -aALL megacli -AdpEventLog -GetEvents -f events.log -aALL && cat events.log

Hiển thị thông tin ngắn gọn

megacli -EncInfo -aALL

Thông tin về các đổ đĩa vật lý (Physical Devices)

megacli -PDList -aALL megacli -PDList -a0

Thông tin về các ổ đĩa được RAID(Virtual Devices)

megacli -LDInfo -Lall -aALL

Thông tin về Pin của card RAID (Batery Backup Unit – BBU)

megacli -AdpBbuCmd -aALL

5. Các lênh quản trị nâng cao

Cho phép cảnh báo báo động trong chế độ im lặng

megacli -AdpSetProp AlarmSilence -aALL

Vô hiệu hóa cảnh báo báo động

megacli -AdpSetProp AlarmDsbl -aALL

Bật lại cảnh báo báo động

megacli -AdpSetProp AlarmEnbl -aALL

Xem thông tin về trạng thái đọc tuần tự và độ trễ giữa các lần đọc tuần tự

megacli -AdpPR -Info -aALL

Thông tin về tốc độ đọc tuần tự

megacli -AdpGetProp PatrolReadRate -aALL

Để giảm mức sử dụng tài nguyên tuần tự xuống 2% tránh ảnh hưởng đến hiệu suất chung

megacli -AdpSetProp PatrolReadRate 2 -aALL

Vô hiệu quá đọc tuần tự

megacli -AdpPR -Dsbl -aALL

Bắt đầu một quá trình quét đọc tuần tự một cách thủ công

megacli -AdpPR -Start -aALL

Để dừng quá trình quét đọc tuần tự

megacli -AdpPR -Stop -aALL

Kiểm tra cảnh báo đọc tuần tự

megacli -AdpEventLog -GetSinceReboot -warning -fatal -a0 

Tắt bộ đệm vật lý tránh mất dữ liệu trong quá trình không có UPS dự phòng điện

megacli -LDGetProp EnDskCache -LAll -aALL

Enable bộ đệm

megacli -LDGetProp DisDskCache -LAll -aALL

Kiểm tra RAID hiện có là 0, 1, 5, 10…

megacli -LDInfo -L0 -a0 |grep -i raid

6. Xóa cấu hình Foregin

Đối với các ổ có dính cấu hình RAID trước đó sẽ có State là Foregin và không thể sử dụng để cấu hình RAID hay chuyển JBOD. Chúng ta cần phải xóa hết các Foregin trước khi sử dụng disk

Kiểm tra các ổ có Foregin

megacli -CfgForeign -Scan -aALL # or  megacli -PDList -aALL | grep "Foreign State:"

Xóa cấu hình Foregin

megacli -CfgForeign -Clear -a0

7. Cấu hình RAID

Lưu ý: Việc cấu hình RAID trên MegaCLI cần phải thao tác cẩn thận cần phải thực hiện tránh thao tác với các ổ đang sử dụng, có dữ liệu

Lấy Adapter ID, Enclosure ID, Slot ID

megacli -PDList -aALL | egrep 'Adapter|Enclosure|Slot'

Kết quả sơ bộ như sau

Adapter #0 Enclosure Device ID: 252 Slot Number: 0 Enclosure position: N/A Enclosure Device ID: 252 Slot Number: 1 Enclosure position: N/A Enclosure Device ID: 252 Slot Number: 2 Enclosure position: N/A Enclosure Device ID: 252 Slot Number: 3 Enclosure position: N/A Enclosure Device ID: 252 Slot Number: 4 Enclosure position: N/A Enclosure Device ID: 252 Slot Number: 5 Enclosure position: N/A Enclosure Device ID: 252 Slot Number: 6 Enclosure position: N/A Enclosure Device ID: 252 Slot Number: 7 Enclosure position: N/A Enclosure Device ID: 252 Slot Number: 8 Enclosure position: N/A Enclosure Device ID: 252 Slot Number: 9 Enclosure position: N/A

Ở ví dụ trên chúng ta có thể thấy các thông tin sau

Atapter ID    --> 0 Enclosure ID  --> 252 Slot Number   --> 0,1,2,3,4,5,6,7,8,9

Kiểm tra lại các ổ nếu đang được sử dụng bởi Logical Device

megacli -LDInfo -Lall -aALL # or megacli -LdPdInfo -aALL

Cấu hình RAID

megacli -CfgLdAdd -r0 [252:2,252:3] -a0 megacli -CfgLdAdd -r1 [252:2,252:3] -a0 megacli -CfgLdAdd -r5 [252:2,252:3,252:4,252:5] -a0 megacli -CfgLdAdd -r6 [252:2,252:3,252:4,252:5,252:6] -a0 megacli -CfgLdAdd -r50 raid0[252:2,252:3,252:4] raid1[252:5,252:6,252:7] -a0 megacli -CfgLdAdd -r60 raid0[252:2,252:3,252:4,252:5] raid1[252:6,252:7,252:8,252,9] -a0

Lưu ý:
– Raid 0 khuyến cáo tối thiểu 2 ổ
– Raid 1 khuyến cáo tối thiểu 2 ổ
– Raid 5 khuyến cáo tối thiểu 3 ổ
– Raid 6 khuyến cáo tối thiểu 4 ổ

– …

8. Cấu hình JBOD

Lưu ý: Tương tự cấu hình RAID, việc cấu hình JBOD trên MegaCLI cần phải thao tác cẩn thận cần phải thực hiện tránh thao tác với các ổ đang sử dụng, có dữ liệu

List kiểm tra các Physical Devices

megacli -PDList -aALL

Show kiểm tra lại các Virtual Devices

megacli LDInfo -Lall -a0

Kiểm tra JBOD đã được enable hay chưa

megacli AdpGetProp EnableJBOD -aALL

Enabe JBOD nếu chưa được cấu hình

megacli AdpSetProp EnableJBOD 1 -a0

Lấy Adapter ID, Enclosure ID, Slot ID

megacli -PDList -aALL | egrep 'Adapter|Enclosure|Slot'

Set trạng thái các disk cần chuyển qua Non-RAID (JBOD) là GOOD – Sẵn sàng sử dụng

megacli -PDMakeGood -PhysDrv[32:4, 32:5, 32:6] -Force -a0

Set các disk trên về JBOD

megacli -PDMakeJBOD -PhysDrv[32:4, 32:5, 32:6] -a0

Kiểm tra bằng cách sử dụng lsblk của linux

9. Tổng kết

Bài viết đã hướng dẫn các bạn sử dụng cơ bản MegaCLI để thao tác tạo RAID, JBOD, … trên các server sử dụng LSI MegaRaid. Bài viết sẽ được bổ sung nếu có thêm các câu lệnh sử dụng hữu ích trong quá trình vận hành.

Bài viết được đăng lại từ Github của Onet Software Company

ONET IDC thành lập vào năm 2012, là công ty chuyên nghiệp tại Việt Nam trong lĩnh vực cung cấp dịch vụ Hosting, VPS, máy chủ vật lý, dịch vụ Firewall Anti DDoS, SSL… Với 10 năm xây dựng và phát triển, ứng dụng nhiều công nghệ hiện đại, ONET IDC đã giúp hàng ngàn khách hàng tin tưởng lựa chọn, mang lại sự ổn định tuyệt đối cho website của khách hàng để thúc đẩy việc kinh doanh đạt được hiệu quả và thành công.
Bài viết liên quan

Cách sử dụng dmesg

Tổng quan Với các hệ điều hành Unix-like | Linux, khi máy tính đang khởi động, trong quá trình nhân...
30/12/2020

[CI/CD] Phần 1: Hướng dẫn cài đặt Gitlab trên CentOS 7

Gitlab là một mã nguồn mở của máy chủ Git để quản lý mã nguồn dự án được sử dụng rộng...
30/12/2020

Hướng dẫn cài đặt Apache CloudStack 4.15.2.0

Bây giờ tôi sẽ hướng dẫn cách thiết lập đám mây riêng tư từng bước bằng cách sử dụng mã...
19/10/2021
Bài Viết

Bài Viết Mới Cập Nhật

SỰ KHÁC BIỆT GIỮA RESIDENTIAL PROXY VÀ PROXY DATACENTER
17/02/2024

Mua Proxy v6 US Private chạy PRE, Face, Insta, Gmail
07/01/2024

Mua shadowsocks và hướng dẫn sữ dụng trên window
05/01/2024

Tại sao Proxy Socks lại được ưa chuộng hơn Proxy HTTP?
04/01/2024

Mua thuê proxy v4 nuôi zalo chất lượng cao, kinh nghiệm tránh quét tài khoản zalo
02/01/2024