Pular para o conteúdo
NyverraNyverra
Artigos
⌘K
InícioArtigosSite institucional
🇧🇷

Nyverra

Canal editorial

Artigos sobre tecnologia, operações e parceiros — infraestrutura, monitoramento e ambientes críticos.

Explorar

  • Início
  • Artigos
  • Categorias
  • Tags
  • Autores
  • Sobre
  • Contato
  • RSS
  • Site institucional

© 2026 Nyverra. Todos os direitos reservados.

blog.nyverra.com

  1. Índice
  2. 1. Compatibilidade e Requisitos
  3. 2. Download e Instalação
  4. 3. Identificação da Controladora
  5. 4. MegaCli — Comandos de Consulta
  6. 5. MegaCli — Gerenciamento de Discos Físicos
  7. 6. MegaCli — Criação de RAID
  8. 7. MegaCli — Hot Spare, Rebuild e Configurações Estrangeiras
  9. 8. MegaCli — Patrol Read e Consistency Check
  10. 9. MegaCli — BBU (Battery Backup Unit)
  11. 10. Cenário Real: Sem Backplane (No Backplane Scenario)
  12. 11. Cenário Real: Conversão IBM x3650 M4 — JBOD para RAID
  13. 12. StorCLI — Cheat Sheet Completo
  14. 13. StorCLI — Criação de Volumes (Sintaxe Correta e Flags de Cache)
  15. 14. StorCLI — CacheCade / SSD Caching
  16. 15. Troubleshooting / Problemas Conhecidos
  17. 16. Tabela de Referência Rápida de Status
  18. 17. Boas Práticas Operacionais
  19. Fontes e Referências

Manual LSI / Broadcom MegaRAID — MegaCli e StorCLI

Documentação consolidada de comandos e procedimentos para controladoras RAID LSI/Broadcom/Dell PERC (MegaRAID SAS), cobrindo as duas ferramentas de linha de comando: MegaCli (legada) e StorCLI (atual, recomendada pela Broadcom para controladoras SAS-3 em diante, como a PERC H730P).

Baseado em problemas reais já resolvidos em produção (Dell PowerEdge, IBM x3650 M4, controladoras LSI 1068E, 2108, 3108).

Índice

  1. Compatibilidade e Requisitos

  2. Download e Instalação

  3. Identificação da Controladora

  4. MegaCli — Comandos de Consulta

  5. MegaCli — Gerenciamento de Discos Físicos

  6. MegaCli — Criação de RAID

  7. MegaCli — Hot Spare, Rebuild e Configurações Estrangeiras

  8. MegaCli — Patrol Read e Consistency Check

  9. MegaCli — BBU (Battery Backup Unit)

  10. Cenário Real: Sem Backplane (No Backplane Scenario)

  11. Cenário Real: Conversão IBM x3650 M4 — JBOD para RAID

  12. StorCLI — Cheat Sheet Completo

  13. StorCLI — Criação de Volumes (Sintaxe Correta e Flags de Cache)

  14. StorCLI — CacheCade / SSD Caching

  15. Troubleshooting / Problemas Conhecidos

  16. Tabela de Referência Rápida de Status

  17. Boas Práticas Operacionais

1. Compatibilidade e Requisitos

# Oracle Linux 8.9 / RHEL 8.x
dnf install ncurses-compat-libs -y

Nota: o MegaCli foi descontinuado pela Broadcom em favor do StorCLI. Em controladoras novas (3108 em diante), prefira StorCLI sempre que possível — a sintaxe é mais consistente e o suporte a CacheCade, SED (Self-Encrypting Drives) e telemetria é mais completo.

2. Download e Instalação

MegaCli

# Pacote com vários binários (todas as versões/plataformas)
wget https://docs.broadcom.com/docs-and-downloads/raid-controllers/raid-controllers-common-files/8-07-14_MegaCLI.zip

# RPM direto (mirror próprio)
wget https://nextcloud.wedson.com.br/s/5FL5CFe2PqDG9ax/download/MegaCli-8.07.14-1.noarch.rpm --no-check-certificate

# Instalação
rpm -Uvh MegaCli-8.07.14-1.noarch.rpm

StorCLI

wget https://downloads.hpe.com/pub/softlib2/software1/pubsw-linux/p1544409578/v233762/storcli-007.2613.0000.0000-1.noarch.rpm
rpm -Uvh storcli-007.2613.0000.0000-1.noarch.rpm

O caminho oficial de instalação do StorCLI no Linux varia conforme a fonte: pode instalar em /opt/MegaRAID/storcli/storcli64 (Dell/MegaRAID) ou em /opt/lsi/storcli/storcli (pacote Broadcom genérico). Sempre confirme com find / -iname "storcli*" 2>/dev/null após a instalação.

Aliases permanentes

vim ~/.bash_profile

Adicionar:

alias megacli='/opt/MegaRAID/MegaCli/MegaCli64'
alias storcli='/opt/MegaRAID/storcli/storcli64'

Recarregar:

source ~/.bash_profile

Em sessões não interativas (scripts/cron), use o caminho completo em vez de depender do alias — aliases não são expandidos por padrão em shells não-interativos.

3. Identificação da Controladora

# Via lspci, filtrando por fabricante/classe
lspci -v | grep -E "RAID|SAS|SCSI|LSI|MegaRAID|PERC"

Exemplo de saída (controladora antiga):

05:00.0 SCSI storage controller: Broadcom / LSI SAS1068E PCI-Express Fusion-MPT SAS (rev 08)
	Subsystem: Dell SAS 6/iR Adapter RAID Controller
# Via class code 0104 (RAID bus controller) — mais preciso para identificar o chip exato
lspci -d::0104 -m

Exemplo de saída (controladora moderna):

03:00.0 "RAID bus controller" "Broadcom / LSI" "MegaRAID SAS-3 3108 [Invader]" -r02 "Dell" "PERC H730P Adapter"

Correção: o filtro correto de classe PCI para controladoras RAID é 0104, não 104. Use lspci -d::0104 -m (com os dois pontos antes) para já filtrar apenas dispositivos da classe "RAID bus controller", reduzindo ruído em servidores com múltiplas controladoras SCSI/SAS.

4. MegaCli — Comandos de Consulta

# Informações completas da controladora
megacli -AdpAllInfo -aall

# Todos os volumes lógicos (Virtual Drives)
megacli -LDInfo -Lall -aall

# Todos os discos físicos
megacli -PDList -aall

# Tipo de disco (SAS/SATA/SSD)
megacli -PDList -aall | grep -i "PD Type:"

# Dados de identificação (modelo, fabricante, firmware, serial)
megacli -PDList -aall | grep -i "Inquiry Data:"

# Tamanho bruto do disco
megacli -PDList -aall | grep -i "Raw Size:"

# Tamanho "coerced"/forçado (capacidade utilizável após normalização)
megacli -PDList -aall | grep -i "Coerced Size:"

# Velocidade do dispositivo (negociada)
megacli -PDList -aall | grep -i "Device Speed:"

# Velocidade do link (capacidade da controladora/porta)
megacli -PDList -aall | grep -i "Link Speed:"

# Temperatura do disco
megacli -PDList -aall | grep -i "Drive Temperature"

# Enclosure ID dos discos
megacli -PDList -aall | grep -i "Enclosure Device ID:"

# Enclosure + Slot
megacli -PDList -aall | grep -E "Enclosure Device ID:|Slot Number:"

# Enclosure + Slot + Modelo do disco
megacli -PDList -aall | grep -E "Enclosure Device ID:|Slot Number:|Inquiry Data:"

# Informações do(s) enclosure(s)
megacli -EncInfo -aALL

# Status de firmware de todos os discos (visão geral rápida de saúde do array)
megacli -PDList -aAll | grep "Firmware state"

Correção: no documento original havia "Non Coerced Size" — o atributo correto retornado pelo MegaCli é Coerced Size: (tamanho após normalização/coerção para fins de pareamento de discos no array). Existe também Non Coerced Size: em algumas versões, que é o tamanho real sem ajuste — ambos podem ser úteis dependendo do diagnóstico, mas é importante não confundir um com o outro ao planejar substituição de disco.

5. MegaCli — Gerenciamento de Discos Físicos

# Ejetar disco do SO Linux (antes de remoção fisica seguro / hot-remove)
echo 1 | sudo tee /sys/block/sdb/device/delete

# Criar disco JBOD (apresentar disco bruto sem RAID)
megacli -PDMakeJBOD -PhysDrv[32:9] -a0

# Marcar disco(s) como "Unconfigured Good" — necessário antes de criar array em discos JBOD/Foreign
megacli -PDMakeGood -PhysDrv[62:0] -a0
megacli -PDMakeGood -PhysDrv[62:1] -force -a0   # -force ignora avisos de dados existentes — USE COM CUIDADO

# Marcar disco como offline
megacli -PDOffline -PhysDrv[32:5] -a0

# Marcar disco como online (após reconexão, se aplicável)
megacli -PDOnline -PhysDrv[32:5] -a0

# Localizar fisicamente o disco (acende o LED da baía)
megacli -PdLocate -start -physdrv[32:5] -a0
megacli -PdLocate -stop  -physdrv[32:5] -a0

# Apagar dados de segurança / preparar disco para reuso completo (SECURE ERASE — IRREVERSÍVEL)
megacli -PDInstantSecureErase -PhysDrv[32:5] -a0

⚠️ -PDInstantSecureErase apaga todos os dados do disco de forma irreversível. Use apenas em descomissionamento ou descarte seguro, nunca em discos em produção.

6. MegaCli — Criação de RAID

Antes de qualquer criação de array, sempre confirme Enclosure ID e Slot Number com:

megacli -PDList -aall | grep -E "Enclosure Device ID:|Slot Number:"

RAID 0

# E = Enclosure, S = Slot
megacli -CfgLdAdd -r0 [E:S] -a0

# Exemplo
megacli -CfgLdAdd -r0 [69:2,69:3] -a0

RAID 1

megacli -CfgLdAdd -r1 [E:S] -a0

# Exemplo
megacli -CfgLdAdd -r1 [69:2,69:3] -a0

RAID 5

# Necessário no mínimo 3 discos
megacli -CfgLdAdd -r5 [E:S,E:S,E:S] WB ADRA -a0

# Exemplo
megacli -CfgLdAdd -r5 [32:0,32:1,32:2] WB ADRA -a0

RAID 10

# Pares de E:S — striping sobre mirrors
megacli -CfgLdAdd -r10 [E:S,E:S,E:S,E:S] WB ADRA -a0

# Exemplo (4 discos: 2 pares espelhados em stripe)
megacli -CfgLdAdd -r10 [69:0,69:1,69:2,69:3] WB ADRA -a0

Nota sobre WB e ADRA: WB = WriteBack (cache de escrita habilitado — melhor performance, requer BBU/supercapacitor saudável para ser seguro). ADRA não é um parâmetro oficial documentado do MegaCli — o termo correto para read-ahead automático é ADRA apenas em alguns builds; o parâmetro padrão e amplamente documentado é RA (Read Ahead) ou NORA (No Read Ahead). Se o comando ADRA for rejeitado pela sua versão do MegaCli, substitua por RA:

megacli -CfgLdAdd -r5 [32:0,32:1,32:2] WB RA -a0

Disco "pass-through" (Non-RAID / apresentar disco sem RAID)

megacli -CfgLdAdd -r0[<Adapter>:<DiskID>] Direct -a0

# Exemplo
megacli -CfgLdAdd -r0[32:6] Direct -a0

Fluxo completo para apresentar um disco "puro" ao SO:

# 1. Identificar o disco
megacli -PDList -aALL

# 2. Criar virtual drive pass-through (RAID0 single-disk, Direct I/O)
megacli -CfgLdAdd -r0[32:6] Direct -a0

# 3. Confirmar criação
megacli -LDInfo -Lall -aALL

# 4. Particionar e formatar no Linux
fdisk /dev/sdX        # ou parted
mkfs.ext4 /dev/sdX1   # ou xfs, conforme necessidade

Renomear Virtual Drive (VD)

# 1. Confirmar o número lógico do VD antes de renomear
megacli -LDInfo -Lall -aall

# 2. Renomear
megacli -LDSetProp -Name 'backup' -L1 -a0

Remover Virtual Drive

megacli -CfgLdDel -L0 -a0   # apaga VD/Logical Drive 0
megacli -CfgLdDel -L1 -a0   # apaga VD/Logical Drive 1

⚠️ CfgLdDel apaga todos os dados do volume lógico. Sempre ter backup confirmado antes.

7. MegaCli — Hot Spare, Rebuild e Configurações Estrangeiras

Hot Spare

# Hot spare dedicado a um array específico
megacli -PDHSP -Set -Dedicated -Array0 -PhysDrv[32:8] -a0

# Hot spare global (serve qualquer array da controladora)
megacli -PDHSP -Set -PhysDrv[32:8] -a0

# Remover hot spare
megacli -PDHSP -Rmv -PhysDrv[32:8] -a0

Monitorar Rebuild

# Visão geral de status de firmware (identifica qual disco está em "Rebuild")
megacli -PDList -aAll | grep "Firmware state"

# Progresso detalhado de rebuild de um disco específico
megacli -PDRbld -ShowProg -PhysDrv [32:5] -aAll

Exemplo de saída:

Rebuild Progress on Device at Enclosure 32, Slot 5 Completed 62% in 234 Minutes.
Exit Code: 0x00

Dica operacional: rode o comando de progresso em loop (watch -n 60 "megacli -PDRbld -ShowProg -PhysDrv [32:5] -aAll") para acompanhamento sem precisar repetir manualmente.

Configurações Estrangeiras (Foreign Configuration)

Ocorre quando discos com configuração RAID prévia (de outra controladora ou após reinserção) são detectados.

# Listar configurações estrangeiras detectadas
megacli -CfgForeign -Scan -aAll

# Importar a configuração estrangeira (mantém os dados e o array original)
megacli -CfgForeign -Import -aAll

# Limpar (descartar) configurações estrangeiras — APAGA o metadado RAID do disco
megacli -CfgForeign -Clear -aAll

⚠️ -Clear não apaga os dados em si, mas remove o metadado RAID — sem ele, a controladora não reconhece mais o array antigo. Use Import quando quiser recuperar dados; use Clear apenas quando tiver certeza de que vai reconfigurar o disco do zero.

8. MegaCli — Patrol Read e Consistency Check

Comandos não presentes no documento original, mas essenciais para manutenção preventiva de saúde dos discos.

# Ver configuração atual do Patrol Read
megacli -AdpPR -Info -aALL

# Habilitar Patrol Read automático
megacli -AdpPR -EnblAuto -aALL

# Iniciar Patrol Read manualmente
megacli -AdpPR -Start -aALL

# Parar Patrol Read em andamento
megacli -AdpPR -Stop -aALL

# Consistency Check — verificar paridade do array (RAID 5/6/10)
megacli -LDCC -Start -LAll -aALL
megacli -LDCC -ShowProg -LAll -aALL
megacli -LDCC -Stop -LAll -aALL

# Agendar Consistency Check automático
megacli -AdpCcSched -SetConfig -enable -aALL

Patrol Read verifica proativamente erros de mídia em todos os discos (mesmo os não usados em arrays). Consistency Check verifica se os dados de paridade calculados batem com os dados reais — essencial para RAID 5/6/10 antes que uma falha real de disco exponha inconsistência. Recomenda-se agendar ambos mensalmente em horários de baixa carga.

9. MegaCli — BBU (Battery Backup Unit)

Crítico para ambientes com cache WriteBack habilitado — sem BBU saudável, o controlador normalmente reverte automaticamente para WriteThrough (mais lento, mas seguro contra perda de energia).

# Status completo da BBU
megacli -AdpBbuCmd -GetBbuStatus -aALL

# Informações de capacidade/design
megacli -AdpBbuCmd -GetBbuCapacityInfo -aALL

# Iniciar ciclo de aprendizado (recalibração) da bateria
megacli -AdpBbuCmd -BbuLearn -aALL

O ciclo de Learn descarrega e recarrega completamente a bateria para recalibrar a estimativa de carga — durante esse processo o controlador normalmente desabilita temporariamente o WriteBack. Planeje para janelas de manutenção, pois a performance de escrita pode cair durante o ciclo.

10. Cenário Real: Sem Backplane (No Backplane Scenario)

Em discos conectados diretamente (sem backplane/enclosure — comum em SSDs SATA ligados direto à controladora), o Enclosure Device ID aparece como N/A. Nesses casos, omita o enclosure na sintaxe [E:S], usando apenas [:S].

megacli -PDList -aall | grep -E "Enclosure Device ID:|Slot Number:|Inquiry Data:"

Exemplo de saída real (srvoracle-stb):

Enclosure Device ID: 32
Slot Number: 3
Inquiry Data: B9KWJTNF    Hitachi HUA722020ALA331    JKAOA3FD

Enclosure Device ID: N/A
Slot Number: 0
Inquiry Data: YS202010011025AA    SSD 1TB    FW210415
# Progresso de rebuild quando não há enclosure (note o espaço antes dos dois-pontos)
megacli -PDRbld -ShowProg -PhysDrv [:2] -aALL

Saída:

Rebuild Progress on Device at Enclosure N/A, Slot 2 Completed 75% in 1072 Minutes.
Exit Code: 0x00

Atenção ao tempo de rebuild nesse caso real: 1074 minutos (~17,9 horas) parado em 75% indica possível degradação severa de performance (discos antigos Hitachi 2TB SATA, possivelmente com setores realocados) ou alta carga de I/O concorrente durante o rebuild. Quando o rebuild trava em uma porcentagem por muito tempo sem progresso visível entre checagens, verifique:

  • Erros de mídia no disco (megacli -PDList -aall | grep -i "Media Error")

  • Carga de I/O da aplicação durante o rebuild (rebuild compete por IOPS com produção)

  • Taxa de rebuild configurada na controladora (megacli -AdpSetProp RebuildRate -aALL)

11. Cenário Real: Conversão IBM x3650 M4 — JBOD para RAID

Procedimento documentado para converter discos JBOD em discos elegíveis para array RAID, e então criar dois arrays RAID 10 a partir de 8 discos.

# Passo 1: Converter cada disco JBOD para "Unconfigured Good" (necessário antes de qualquer array)
megacli -PDMakeGood -PhysDrv[62:0] -force -a0
megacli -PDMakeGood -PhysDrv[62:1] -force -a0
megacli -PDMakeGood -PhysDrv[62:2] -force -a0
megacli -PDMakeGood -PhysDrv[62:3] -force -a0
megacli -PDMakeGood -PhysDrv[62:4] -force -a0
megacli -PDMakeGood -PhysDrv[62:5] -force -a0
megacli -PDMakeGood -PhysDrv[62:6] -force -a0
megacli -PDMakeGood -PhysDrv[62:7] -force -a0

# Passo 2: Criar dois arrays RAID 10 via CfgSpanAdd
# (cada par é um mirror, e os mirrors são combinados em stripe)
megacli -CfgSpanAdd -r10 -Array0[62:0,62:1] -Array1[62:2,62:3] WT RA Direct -a0
megacli -CfgSpanAdd -r10 -Array0[62:4,62:5] -Array1[62:6,62:7] WT RA Direct -a0

⚠️ -force no PDMakeGood ignora avisos de existência de configuração ou dados prévios no disco — confirme que não há dados relevantes antes de usar. Esse procedimento é destrutivo para qualquer conteúdo anterior dos discos JBOD.

Note que aqui foi usado WT (WriteThrough) em vez de WB — escolha deliberada de segurança em ambiente sem BBU confirmada, já que WriteThrough grava direto em disco sem depender de cache volátil.

12. StorCLI — Cheat Sheet Completo

Em StorCLI, o caminho do binário no Linux é tipicamente /opt/MegaRAID/storcli/storcli64 (Dell) ou /opt/lsi/storcli/storcli (Broadcom genérico) — confirme qual existe no seu sistema. Os exemplos abaixo usam storcli64, mas a sintaxe é idêntica para storcli.

Geral

storcli64 -v                  # Versão da ferramenta
storcli64 show                # Lista controladoras disponíveis
storcli64 show all            # Detalhes de todas as controladoras
storcli64 /c0 show            # Status resumido da controladora 0
storcli64 /c0 show all        # Detalhes completos da controladora 0
storcli64 /c0 show events     # Log de eventos
storcli64 /c0 show termlog    # Log de terminal (eventos recentes)
storcli64 /c0 show alarms     # Status de alarme físico (buzzer)
storcli64 /c0 show help       # Ajuda contextual de comandos

Virtual Drives (Volumes RAID)

storcli64 /c0/vall show           # Todos os VDs da controladora 0
storcli64 /c0/v0 show             # Detalhes do VD 0
storcli64 /c0/v0 show all         # Detalhes completos (inclui propriedades de cache)
storcli64 /c0/v0 delete           # Remove o VD 0 (sem force = falha se houver dados/MBR)
storcli64 /c0/v0 delete force     # Remove o VD 0 mesmo com dados existentes — IRREVERSÍVEL
storcli64 /c0/v0 set wb           # Habilita WriteBack no VD 0
storcli64 /c0/v0 set wt           # Habilita WriteThrough no VD 0
storcli64 /c0/v0 set rdcache=ra   # Habilita Read Ahead
storcli64 /c0/v0 set rdcache=nora # Desabilita Read Ahead
storcli64 /c0/v0 set name=backup  # Renomeia o VD 0
storcli64 /c0/v0 start init       # Inicializa (zera) o VD — apaga dados
storcli64 /c0/v0 show init        # Mostra progresso de inicialização
storcli64 /c0/v0 start cc         # Inicia Consistency Check no VD 0
storcli64 /c0/v0 show cc          # Mostra progresso de Consistency Check
storcli64 /c0/v0 show bgi         # Mostra progresso de Background Initialization
storcli64 /c0/v0 show migrate     # Mostra progresso de migração de RAID level/expansão

Physical Drives

storcli64 /c0/pall show              # Todos os discos físicos
storcli64 /c0/eall/sall show all     # Detalhes completos via enclosure/slot
storcli64 /c0/e32/s5 show            # Detalhes do disco no enclosure 32, slot 5
storcli64 /c0/e32/s5 set good        # Marca disco como Unconfigured Good
storcli64 /c0/e32/s5 set offline     # Marca disco como offline
storcli64 /c0/e32/s5 set missing     # Marca disco como missing
storcli64 /c0/e32/s5 start locate    # Acende LED de localização
storcli64 /c0/e32/s5 stop locate     # Apaga LED de localização
storcli64 /c0/e32/s5 show all        # SMART, temperatura, contadores de erro de mídia

Hot Spares

storcli64 /c0/e32/s3 add hotsparedrive             # Hot spare global
storcli64 /c0/e32/s3 add hotsparedrive dgs=0       # Hot spare dedicado ao Drive Group 0
storcli64 /c0/e32/s3 delete hotsparedrive          # Remove hot spare

Foreign Configuration

storcli64 /c0/fall show       # Lista configurações estrangeiras
storcli64 /c0/fall import     # Importa todas
storcli64 /c0/fall delete     # Descarta todas (apaga metadado, não os dados)

Battery Backup Unit (BBU)

storcli64 /c0/bbu show all      # Status completo da bateria
storcli64 /c0/bbu show events   # Eventos relacionados à BBU
storcli64 /c0/bbu start learn   # Ciclo de aprendizado/recalibração

Cache Global da Controladora

storcli64 /c0 show preservedcache         # Verifica se há cache preservado (write-pending órfão)
storcli64 /c0 delete preservedcache       # Descarta cache preservado órfão — risco de perda de dados não comitados
storcli64 /c0 set cacheflushint=10        # Intervalo de flush de cache em segundos
storcli64 /c0 show cacheflushint          # Mostra intervalo configurado

Consistency Check Agendado (Global)

storcli64 /c0 set cc=conc delay=168 starttime=2026/07/01 00
storcli64 /c0 show cc

Firmware

storcli64 /c0 download file=firmware.rom   # Atualiza firmware da controladora
storcli64 /c0/fwbackup file=backup.rom     # Backup do firmware atual
storcli64 /c0/fwpkg show                   # Informações do pacote de firmware

Configuração Detalhada

storcli64 /c0/cfgdsply        # Exibe configuração detalhada
storcli64 /c0/cfgdsply full   # Exibe configuração RAID completa (todos os DGs/VDs/PDs)

13. StorCLI — Criação de Volumes (Sintaxe Correta e Flags de Cache)

Correção importante em relação ao documento original: a sintaxe storcli64 /c0 add vd r0 drives=0:0,0:1 funciona em algumas versões mais antigas, mas a sintaxe oficial e recomendada pela Broadcom, válida em todas as versões atuais, é:

storcli64 /cX add vd type=raidN drives=<EID>:<Slot> [flags de cache] [name=NOME]

Sintaxe geral

storcli64 /c0 add vd type=raid[0|1|5|6|10|50|60] \
  drives=<EID>:<Slot>[,<EID>:<Slot>...] \
  [WT|WB|AWB] [ra|nora] [direct|cached] [pdcache=on|off|default] \
  [name=<NOME>] [Strip=<8|16|32|64|128|256|512|1024>]

Exemplos práticos

# RAID 0, dois discos, WriteBack + Read Ahead, I/O direto
storcli64 /c0 add vd type=raid0 drives=69:2,69:3 wb ra direct

# RAID 1
storcli64 /c0 add vd type=raid1 drives=69:2,69:3 wb ra direct

# RAID 5, três discos, com nome customizado
storcli64 /c0 add vd type=raid5 drives=32:0,32:1,32:2 wb ra direct name=dados01

# RAID 10, quatro discos
storcli64 /c0 add vd type=raid10 drives=69:0,69:1,69:2,69:3 wb ra direct

# RAID 10 com 12 discos e 2 discos por array (sintaxe de range)
storcli64 /c0 add vd type=raid10 drives=7:0-11 pdperarray=2 wt cached

# Disco "pass-through" (apresentar disco bruto ao SO) com pdcache desabilitado
# — recomendado para SSDs sem capacitor de energia em uso single-disk
storcli64 /c0 add vd type=raid0 drives=6:2 direct wb ra pdcache=off

Sobre pdcache=off em discos individuais: quando um disco SATA não possui capacitor de energia (power-loss protection) próprio, seu cache de gravação interno pode perder dados não confirmados numa queda de energia, mesmo com BBU da controladora saudável — porque o BBU protege o cache da controladora, não o cache interno do disco. Por isso, em deployments mais conservadores, é comum desabilitar pdcache por disco.

Apagar Virtual Drive

storcli64 /c0/v0 delete          # falha se houver MBR/dados
storcli64 /c0/v0 delete force    # força remoção mesmo com dados — IRREVERSÍVEL
storcli64 /c0/vall delete        # remove todos os VDs da controladora — EXTREMAMENTE DESTRUTIVO

14. StorCLI — CacheCade / SSD Caching

CacheCade usa um SSD (ou pool de SSDs) como camada de cache de leitura/escrita acelerando discos mecânicos. Útil em servidores com discos SATA/SAS convencionais e pelo menos um SSD disponível.

# 1. Criar a VD de CacheCade (RAID0 sobre o SSD dedicado a cache)
storcli64 /c0 add vd cachecade r0 drives=252:0 WB

# 2. Verificar o VD ID criado para o CacheCade
storcli64 /c0/vall show

# 3. Associar/habilitar o caching no VD de dados que vai se beneficiar do cache
storcli64 /c0/v0 set ssdcaching=on

# 4. Confirmar (coluna "Cac" deve indicar "ON")
storcli64 /c0/vall show

# Remover associação de CacheCade de um VD específico
storcli64 /c0/v0 del cachecade

# Remover o CacheCade por completo
storcli64 /c0/v1 del cachecade

⚠️ Atenção ao usar RAID0 single-disk para CacheCade em modo WriteBack: sem redundância, a falha do SSD de cache pode levar à perda dos dados de escrita ainda não comitados ao disco mecânico de origem. Use RAID0 + WB apenas se o servidor for tolerante a esse risco (ex.: proxy cache, dados não críticos) ou, idealmente, use 2+ SSDs em RAID1 para o CacheCade quando o caso de uso exigir confiabilidade.

Leitura da coluna Cache no show: NRWBD = No Read Ahead + WriteBack + Direct I/O. RAWBD = Read Ahead + WriteBack + Direct.

15. Troubleshooting / Problemas Conhecidos

"controller has data in cache for offline or missing virtual disks"

Ocorre quando um disco foi removido sem o procedimento correto e a controladora ainda mantém dados de escrita não confirmados (preserved cache) referentes a um VD agora ausente/offline. Isso bloqueia a criação de novos VDs, mesmo em discos diferentes.

# Verificar se há cache preservado
storcli64 /c0 show preservedcache

# Descartar o cache preservado (PERDE os dados de escrita não confirmados do VD ausente)
storcli64 /c0 delete preservedcache

Em reboot, esse estado também pode aparecer como uma mensagem de POST que trava o boot até ser resolvido na BIOS da controladora (Ctrl+R / tecla de acesso ao BIOS RAID) ou via StorCLI antes do próximo boot.

Rebuild extremamente lento ou parado em uma porcentagem

Verificar:

megacli -AdpSetProp RebuildRate -aALL          # taxa de rebuild configurada (0-100%)
megacli -PDList -aall | grep -i "Media Error"  # erros de mídia no disco em rebuild

Causas comuns: disco de origem com setores defeituosos, alta carga de I/O concorrente da aplicação competindo com o rebuild, taxa de rebuild configurada muito baixa para priorizar produção.

Disco aparece como "UBAD" (Unconfigured Bad)

Ocorre quando um disco anteriormente em uso é removido de forma incorreta e reconectado — a controladora marca como potencialmente inconsistente por segurança.

# Forçar volta a Unconfigured Good (somente se tiver certeza de que o disco está saudável)
megacli -PDMakeGood -PhysDrv[E:S] -force -a0
# ou em StorCLI
storcli64 /c0/eE/sS set good force

Zumbido/alarme físico da controladora

megacli -AdpSetProp AlarmDsbl -aALL    # desabilita o alarme sonoro
megacli -AdpSetProp AlarmEnbl -aALL    # reabilita
# StorCLI equivalente
storcli64 /c0 set alarm=off
storcli64 /c0 set alarm=on

16. Tabela de Referência Rápida de Status

Firmware State (discos físicos)

VD State / Access (StorCLI)

Cache (coluna "Cache" no StorCLI)

17. Boas Práticas Operacionais

  • Sempre confirmar Enclosure ID e Slot Number antes de qualquer comando destrutivo (-PDList/show all) — números errados podem destruir o array errado.

  • Backup confirmado antes de qualquer CfgLdDel, delete force, PDMakeGood -force ou PDInstantSecureErase.

  • Nunca usar WB/AWB sem confirmar que a BBU está saudável (AdpBbuCmd -GetBbuStatus / /c0/bbu show all) — caso contrário, a perda de energia pode corromper dados em trânsito.

  • Monitorar Patrol Read e Consistency Check periodicamente; é a única forma de detectar erros de paridade/mídia silenciosos antes que afetem produção.

  • Documentar o mapeamento Enclosure:Slot → disco fisico → função do VD por servidor — essencial para diagnósticos remotos e handoff entre equipes.

  • Preferir StorCLI a MegaCli em controladoras SAS-3 (3108) ou mais novas — é a ferramenta oficialmente mantida pela Broadcom.

  • Em scripts de automação, sempre usar caminho completo do binário em vez de depender de alias, e capturar o Exit Code retornado para validar sucesso.

Fontes e Referências

  • Broadcom — StorCLI Reference Manual (53419-00, Rev. F)

  • Dell — Knowledge Base: configuração de VDs com StorCLI e tratamento de "preserved cache"

  • Documentação interna Nyverra — procedimentos de campo (IBM x3650 M4, srvoracle-stb, srvoracle-prod)

  • Thomas-Krenn Wiki — StorCLI commands

  • Comunidade (gist pjobson) — instalação MegaCli em Linux Mint 22

Documento de referência interna — Nyverra Tecnologia Ltda. Última revisão: 23/06/2026.

Compartilhar

Continuar a ler

Leia também

  • iSCSI no TrueNAS: Guia Completo de Configuração e Gerenciamento

    iSCSI no TrueNAS: Guia Completo de Configuração e Gerenciamento

    25 de agosto de 202613 min de leitura
  • Certificados SSL/TLS: Guia Completo de Geração e Conversão entre Formatos
    Tutoriais

    Certificados SSL/TLS: Guia Completo de Geração e Conversão entre Formatos

    Este guia técnico cobre a geração de certificados SSL/TLS com Certbot, conversão entre formatos PEM, PFX, DER e as melhores práticas de segurança para proteger chaves privadas e automatizar renovações. Inclui exemplos práticos de configuração para Nginx e Apache.

    14 de agosto de 20269 min de leitura
  • StorCLI - Cheat Sheet Completo

    StorCLI - Cheat Sheet Completo

    11 de agosto de 202612 min de leitura

Comentários

Ainda sem comentários

Seja o primeiro a compartilhar sua opinião sobre este artigo.

Deixe um comentário

Newsletter

Receba novos artigos

Inscreva-se para receber publicações do blog Nyverra no seu e-mail. Enviaremos um link de confirmação.

​
  1. Início
  2. Armazenamento
  3. Manual LSI / Broadcom MegaRAID — MegaCli e StorCLI
ArmazenamentoTutoriais
#Administração de Sistemas#StorCLI#RAID#storage#MegaCli#linux

Manual LSI / Broadcom MegaRAID — MegaCli e StorCLI

AAdministrador Nyverra
23 de junho de 202619 min de leitura