Megacli mi sta uccidendo, ogni aiuto è apprezzato


14

Corro un server con 2 unità in raid0 configurato tramite BIOS. Ho appena aggiunto altre 2 unità utilizzando hotplug (il server è dell r610 con RHEL 5.4 a 64 bit) e vorrei configurare una partizione raid0 separata su queste unità. Ricevo il seguente errore:

/ opt / MegaRAID / MegaCli / MegaCli64 -CfgLdAdd r0 [32: 2, 32: 3] -a0

Il disco fisico specificato non ha gli attributi appropriati per completare il comando richiesto.

Codice di uscita: 0x26

Tutti i parametri sono corretti e non c'è motivo per cui questo comando non possa funzionare, vedi questo (fujitsu è il raid corrente, seagate è il nuovo che voglio creare):

/opt/MegaRAID/MegaCli/MegaCli64 -PDList -aALL | egrep 'Adapter|Enclosure|Slot|Inquiry'
Adapter #0
Enclosure Device ID: 32
Slot Number: 0
Enclosure position: 0
Inquiry Data: FUJITSU MBD2147RC       D807D0A4PA101174
Enclosure Device ID: 32
Slot Number: 1
Enclosure position: 0
Inquiry Data: FUJITSU MBD2147RC       D807D0A4PA10115T
Enclosure Device ID: 32
Slot Number: 2
Enclosure position: 0
Inquiry Data: SEAGATE ST9300603SS     FS033SE0TF5K
Enclosure Device ID: 32
Slot Number: 3
Enclosure position: 0
Inquiry Data: SEAGATE ST9300603SS     FS023SE070FK

Ho anche provato a configurare l'unità come hotspare, anche qualche strano errore:

/ opt / MegaRAID / MegaCli / MegaCli64 -PDHSP -Set -physdrv [32: 3] -a0

Adattatore: 0: impostare l'unità fisica su EnclId-32 SlotId-3 come unità di riserva non riuscita.

Descrizione dell'errore FW: il dispositivo specificato si trova in uno stato che non supporta il comando richiesto.

Codice di uscita: 0x32

Come puoi vedere, il disco è in Non configurato, Buono stato:

Enclosure Device ID: 32
Slot Number: 3
Enclosure position: 0
Device Id: 3
Sequence Number: 1
Media Error Count: 0
Other Error Count: 0
Predictive Failure Count: 0
Last Predictive Failure Event Seq Number: 0
PD Type: SAS
Raw Size: 279.396 GB [0x22ecb25c Sectors]
Non Coerced Size: 278.896 GB [0x22dcb25c Sectors]
Coerced Size: 278.875 GB [0x22dc0000 Sectors]
Firmware state: Unconfigured(good), Spun Up
SAS Address(0): 0x5000c50005cd20b1
SAS Address(1): 0x0
Connected Port Number: 3(path0)
Inquiry Data: SEAGATE ST9300603SS     FS023SE070FK
FDE Capable: Not Capable
FDE Enable: Disable
Secured: Unsecured
Locked: Unlocked
Needs EKM Attention: No
Foreign State: Foreign
Foreign Secure: Drive is not secured by a foreign lock key
Device Speed: Unknown
Link Speed: Unknown
Media Type: Hard Disk Device
Drive Temperature :30C (86.00 F)

Risposte:


15

L'unità è contrassegnata come "Foreign", probabilmente proviene da un altro controller RAID. Immagino che potresti aver bisogno di cancellarlo prima:

MegaCli64 -CfgForeign -Scan -Clear


per un breve momento, sebbene tu abbia ragione, ho persino trovato un commento su google che diceva che "le unità con stato straniero non sono utilizzabili in un nuovo controller fino a quando tale stato non viene rimosso", anche le unità che sto cercando di utilizzare sono state utilizzate in precedenza un altro server !!! tuttavia sembra che il nuovo controller non trovi alcuna configurazione esterna, vedi sotto: / opt / MegaRAID / MegaCli / MegaCli64 -CfgForeign -Scan -a0 Non c'è configurazione esterna sul controller 0. ps. perché la formattazione che ha funzionato durante la "risposta a una domanda" non funziona nei commenti?
Stefan,

4
anche / opt / MegaRAID / MegaCli / MegaCli64 -CfgForeign -Clear -aALL Non esiste una configurazione esterna sul controller 0.
Stefan

Ho spostato queste unità su un altro server (non di produzione) e questo ha cancellato lo stato straniero !!! spostato le unità sul server di produzione, lo stato straniero è ancora cancellato, ora provando a creare un raid su queste unità :)
Stefan

1
sì, la creazione del raid ha funzionato ora :) grazie per l'indizio !!
Stefan,

4
La mia versione di MegaRAID non piace l' Scanopzione. Questo ha funzionato: /opt/MegaRAID/MegaCli/MegaCli64 -CfgForeign -Clear -a0. Utilizzare -aALLper tutti gli adattatori.
Banjer,

2

Sono imbarazzato nel dire che ho avuto questo problema oggi e ho perso circa 2 ore della mia vita per non aver guardato le unità prima di provare a sostituirle.

La chiave del problema qui è il codice di uscita: 0x26 , che significa "Impossibile utilizzare l'unità SATA (SAS) per sostituire SAS (SATA)".

FUJITSU MBD2147RC sono unità SAS e SEAGATE ST9300603SS sono unità SATA. Non è possibile creare un RAID hardware con unità che utilizzano protocolli diversi. È tutto SAS o tutto SATA. Se devi mescolarli, puoi creare un software RAID.

https://www.thomas-krenn.com/de/wiki/MegaCLI_Error_Messages ha un elenco dei codici di errore di MegaCli.


1

Ho avuto un problema simile e per me è stato necessario fare:

megacli -PDMakeGood -PhysDrv '[64:6]' -Force -a0

Successivamente ho potuto creare il raid con il comando CfgLdAdd.


1

Ho affrontato lo stesso problema tempo fa. Se è ancora pertinente dovresti:

  • Controlla se hai un'unità non configurata (buona) :

    root@sto:~# sudo python scripts/megaraid_status.py
    c0uXpY  | SSD  | FECA075B010803000281Patriot Blast SAFM11.0 | 446.1 Gb | Unconfigured(good), Spun Up | 6.0Gb/s  | N/A  | [252:3]  | 0
    
  • Verifica configurazione esterna:

    root@sto# megacli -CfgForeign -Scan -aall
    There are 1 foreign configuration(s) on controller 0.
    Exit Code: 0x00
    
  • Cancella:

    root@sto# megacli -CfgForeign -Clear -aall
    Foreign configuration 0 is cleared on controller 0.
    Exit Code: 0x00
    

Fonte: http://sysadm.pp.ua/linux/monitoring-systems/megaraid-assembling-raid6.html

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.