OVH Guide

Remplacement à chaud - Raid Matériel

Retrouvez ici les principales étapes à suivre pour permettre le remplacement d’un disque à chaud sur un serveur en Raid Materiel.

Prérequis

Le remplacement à chaud n'est possible que sur les gammes de serveur mHG, HG, et bHG.

Pour réaliser les différentes étapes de ce guide, il faut :

  • Disposer d'un serveur mHG, HG, ou bHG.
  • Avoir un serveur en RAID Matériel (avec une carte MegaRAID).
  • Disposer d'un accès SSH (Linux et VmWare ESXi).
  • Disposer d'un accès RDP (Windows).
  • Les utilitaires MegaCLI et/ou StorCLI doivent être installés (normalement par défaut).

Sous Linux

Étape 1 : Identifier le disque a remplacer

En vue d'un remplacement de disque, il faudra fournir au technicien l'Enclosure ID, le slot ID, et le Serial Number du disque à remplacer.

Ou à défaut (disque non détecté par ex), les mêmes informations mais pour les disques qui ne sont PAS à remplacer et le spécifier au technicien.

On va dans un premier temps lister les disques présents sur le serveur. Tout en pouvant récupérer les informations citées ci-dessus.

Lister les disques

Pour lister les disques, vous pouvez utiliser la commande suivante : MegaCli -PdList -aALL | egrep "Slot|Device ID|Device Id"

Par exemple :

 MegaCli -PdList -aALL | egrep "Slot|Device ID|Device Id" Enclosure Device ID: 252 Slot Number: 0 Device Id: 6 Enclosure Device ID: 252 Slot Number: 1 Device Id: 5 Enclosure Device ID: 252 Slot Number: 2 Device Id: 4 Enclosure Device ID: 252 Slot Number: 3 Device Id: 7 

La commande MegaCli -PdList -aALL, sans le GREP permet d'afficher toutes les informations d'un disque.

Equivalent via la commande storcli :

 storcli /call show all   PD LIST : =======   ---------------------------------------------------------------------------- EID:Slt DID State DG       Size Intf Med SED PI SeSz Model               Sp ---------------------------------------------------------------------------- 252:0     6 Onln   0 744.687 GB SATA SSD N   N  512B INTEL SSDSC2BB800H4 U 252:1     5 Onln   0 744.687 GB SATA SSD N   N  512B INTEL SSDSC2BB800H4 U 252:2     4 Onln   0 744.687 GB SATA SSD N   N  512B INTEL SSDSC2BB800H4 U 252:3     7 Onln   0 744.687 GB SATA SSD N   N  512B INTEL SSDSC2BB800H4 U ---------------------------------------------------------------------------- 
Il s'agit d'un extrait du retour de la commande storcli. D'autres informations sont visibles, comme le listing des disques en fonction des raids etc...

Avec MegaCLI, vous pouvez aussi lister les disques en fonction des raids avec cette commande : MegaCli -CfgDsply -a0.

Tester et identifier un disque :

Pour tester un disque / identifier son Serial Number, il faut effectuer la commande smartctl comme suit :

 smartctl -a -d megaraid,6 /dev/sda | grep Serial Serial Number:    BTWH509602CV800CGN 

Le chiffre 6 dans cette commande correspond au Device ID du disque (Device ID sous MegaCLI, et DID sous storCLI).

Cette information se trouve dans le listing des disques, effectué à l'étape précédente.

Nous connaissons donc désormais l'Enclosure ID, le Slot ID, et le Serial Number du disque à remplacer.

Étape 2 : Allumer un disque

Pour permettre au technicien de remplacer votre disque à chauf, il faut allumer (faire clignoter) le disque HS.

Dans notre exemple, nous avons donc le disque Enclosure ID 252, Slot ID 0, et Serial Number BTWH509602CV800CGN à remplacer.

La commande pour faire clignoter le disque est la suivante : MegaCli -PdLocate -start -physdrv[EncID:SlotID] -a0.

 MegaCli -PdLocate -start -physdrv[252:0] -a0   Adapter: 0: Device at EnclId-252 SlotId-0  -- PD Locate Start Command was successfully sent to Firmware   Exit Code: 0x00 

Equivalent via la commande storcli :

 rescue:~# storcli /call /e252 /s0 start locate Controller = 0 Status = Success Description = Start Drive Locate Succeeded. 

Pour éteindre le disque allumé suite à l'intervention, il suffit de remplacer le "start" par "stop" dans les commandes ci-dessus.

A ce moment là, l'intervention est prête à être effectuée. Vous pouvez alors fournir les informations récoltées précédemment au support et indiquer que le disque est allumé.

Étape 3 : Verifier la reconstruction

Une fois l'intervention effectuée par le Datacentre, vous pouvez lister de nouveau les RAID et les disques, et voir que le disque remplacé est bien en Rebuild.

 MegaCli -PdList -aALL | egrep "Slot|Device ID|state" Enclosure Device ID: 252 Slot Number: 0 Firmware state: Rebuild Enclosure Device ID: 252 Slot Number: 1 Firmware state: Online, Spun Up ... 
 storcli /call show all PD LIST : =======   ---------------------------------------------------------------------------- EID:Slt DID State DG       Size Intf Med SED PI SeSz Model               Sp ---------------------------------------------------------------------------- 252:0     6 Rbld   0 744.687 GB SATA SSD N   N  512B INTEL SSDSC2BB800H4 U 252:1     5 Onln   0 744.687 GB SATA SSD N   N  512B INTEL SSDSC2BB800H4 U 252:2     4 Onln   0 744.687 GB SATA SSD N   N  512B INTEL SSDSC2BB800H4 U 252:3     7 Onln   0 744.687 GB SATA SSD N   N  512B INTEL SSDSC2BB800H4 U 

Le RAID est en état Dégradé le temps de la reconstruction, cela est normal.

 MegaCli -LDInfo -Lall -aALL     Adapter 0 -- Virtual Drive Information:  Drive: 0 (Target Id: 0) Name                : RAID Level          : Primary-1, Secondary-0, RAID Level Qualifier-0 Size                : 1.454 TB Sector Size         : 512 Is VD emulated      : Yes Mirror Data         : 1.454 TB State               : Degraded Strip Size          : 256 KB Number Of Drives per span:2 Span Depth          : 2 Default Cache Policy: WriteThrough, ReadAhead, Direct, No Write Cache if Bad BBU Current Cache Policy: WriteThrough, ReadAhead, Direct, No Write Cache if Bad BBU Default Access Policy: Read/Write Current Access Policy: Read/Write Disk Cache Policy   : Enabled Encryption Type     : None Bad Blocks Exist: No PI type: No PI   Is VD Cached: No   Exit Code: 0x00 

Enfin, vous pouvez également vérifier la progression de la reconstruction avec la commande suivante MegaCli -PDRbld -ShowProg -PhysDrv [EncID:SlotID] -a0

 MegaCli -PDRbld -ShowProg -PhysDrv [252:0] -a0   Rebuild Progress on Device at Enclosure 252, Slot 0 Completed 93% in 0 Minutes.   Exit Code: 0x00 

Equivalent via la commande storcli :

 storcli /call /e252 /s0 show rebuild 

Sous Windows

Ce guide est basé sur un système Windows Server 2012 R2 Standard. L'outil MegaRaid Storage Manager est installé par défaut.

Étape 1 : Verifier que le serveur possede bien une carte MegaRaid

On se rend donc dans le menu de Gestion des périphériques, et on constate bien la présence de la carte MegaRaid (9271-4i)

device

Étape 2 : Identifier le disque

Dans un premier temps, nous allons ouvrir MegaRAID Storage Manager.

login

Cliquez alors sur Login, et renseignez votre login/password. (Les manipulations dans notre cas sont effectuées en étant Administrateur).

On arrive ensuite sur l'écran de Management de la carte MegaRaid.

dashboard

Nous allons à présent vérifier le Serial Number de notre disque HS et sa position dans le serveur (Enclosure ID et Slot ID).

On va dans l'onglet Logical, et on arrive sur ceci.

logical-view-2

Sur cet écran, énormément d'informations sont présentes.

On retrouve, sur la gauche, la vue logique de notre RAID. Ici, nous avons un RAID 10 (id0) en état optimal. Il est composé de deux grappes de 2 disques.

Nous pouvons voir que notre disque Slot Number 1 est dans la 1ère grappe. Sur la partie droite de l'écran, on récupère les informations dont nous avons besoin (Enclosure/Slot/Serial).

Donc notre disque a pour Enclosure ID 252, Slot Number 1, et Serial Number BTWH509504BN800CGN.

A partir de ce moment, nous allons pouvoir allumer (faire clignoter physiquement) le disque à remplacer en vue du remplacement par un technicien en Datacentre.

Étape 3 : Allumer un disque

Avec l'outil MegaRAID Storage Manager il sera très facile d'allumer la LED du dique à remplacer.

Avant toute chose, il est préférable de stopper les Locator sur chaque disque afin d'éviter toute erreur en Datacentre. En effet, si lors d'une intervention précédente la LED n'a pas été éteinte, il y aura deux disques d'allumés sur le serveur.

Pour cela, il faut donc effectuer un clic-droit sur chaque disque, et cliquer sur stop locating drive.

stop-locate

Maintenant on peut donc allumer le disque qui nous intéresse.

On effectue un clic-droit sur notre disque, Slot ID 1, et Serial Number BTWH509504BN800CGN.

clic-locate

Ensuite, on clique sur start locating drive

A ce moment là, l'intervention est prête à être effectuée. Vous pouvez alors fournir les informations récoltées précédemment (Enclosure ID, Slot ID, et Serial Number), et indiquer que le disque est allumé.

Étape 4 : Verifier la reconstruction

Une fois l'intervention effectuée par le Datacentre, vous pouvez de nouveau aller dans l'outil MegaRAID Storage Manager, dans la partie Background operations, et vérifier que le disque est en cours de Rebuild.

back

Le détail vous retournera ce type de résultat :

1

Egalement, dans l'onglet Logical, nous avons toujours le détails du RAID et des disques.

2

Le disque Slot ID 1 est bien en cours de Rebuild.

Le RAID est en état dégradé lors du Rebuild, ce qui est normal.

Enfin, il est préférable de refaire la manipulation du stop locate vu précédemment pour le disque qui vient d'être remplacé.

Sous VmWare ESXi

Dans ce guide, nous allons partir du principe que vous avez reçu une alerte pour le disque Slot Number 1, Serial Number BTWA547608CE800HGN défectueux et que vous voulez le remplacer à chaud.

Pour cela, nous allons avoir besoin de l'Enclosure ID, le Slot Number, et le Serial Number du disque à remplacer pour les communiquer au Datacentre.

L'outil MegaCLI doit être installé sur le serveur.

Étape 1 : Verifier que le serveur possede bien une carte MegaRaid

Avant de continuer, nous allons vérifier que le serveur possède bien une carte MegaRAID.

 lspci | grep -i mega 0000:81:00.0 Mass storage controller: Avago (LSI / Symbios Logic) MegaRAID SAS Fusion Controller [vmhba2] 

Via le client Vsphere, vous pouvez également retrouver cette information dans Gérer, puis Onglet Matériel.

gerer-host

Nous avons bien une carte LSI MegaRAID.

Étape 2 : Identifier le disque

En vue d'un remplacement de disque, il faudra fournir l'Enclosure ID, le Slot Number, et le Serial Number au Datacentre, du disque à remplacer.

Si le disque n'est plus détecté, par exemple, il faudra alors fournir les mêmes informations de tous les autres disques à NE PAS remplacer.

Dans un premier temps, nous allons lister les disques présents sur le serveur tout en pouvant récupérer les informations listées ci-dessus.

Lister les disques

 [root@ns3043198:/opt/lsi/MegaCLI] ./MegaCli -PdList -aALL | egrep "Slot|Device ID|Device Id" Enclosure Device ID: 252 Slot Number: 0 Device Id: 4 Enclosure Device ID: 252 Slot Number: 1 Device Id: 7 Enclosure Device ID: 252 Slot Number: 2 Device Id: 5 Enclosure Device ID: 252 Slot Number: 3 Device Id: 6 
Nous avons donc récupéré l'ID de notre disque HS Slot Number 1 qui est le Device ID 7, et son Enclosure ID 252.

Étape 3 : Allumer un disque

Pour effectuer l'intervention de remplacement, il faut allumer (faire clignoter) le disque HS.

Avant d'allumer la LED du disque qui nous intéresse ici, nous allons dans un premier temps passer sur chacun des disques pour éteindre les LED (Dans le cas où une LED serait toujours allumée suite à une précédente intervention).

Dans ce cas, nous avons 4 disques qui ont comme Enclosure ID 252, et comme Slot Number 1, 2, 3, et 4.

Nous allons donc utiliser la commande suivante : ./MegaCli -PdLocate -stop -physdrv[EncID:SlotID] -a0

 [root@ns3043198:/opt/lsi/MegaCLI] ./MegaCli -PdLocate -stop -physdrv[252:0] -a0   Adapter: 0: Device at EnclId-252 SlotId-0  -- PD Locate Stop Command was successfully sent to Firmware   Exit Code: 0x00 [root@ns3043198:/opt/lsi/MegaCLI] ./MegaCli -PdLocate -stop -physdrv[252:1] -a0   Adapter: 0: Device at EnclId-252 SlotId-1  -- PD Locate Stop Command was successfully sent to Firmware   Exit Code: 0x00 [root@ns3043198:/opt/lsi/MegaCLI] ./MegaCli -PdLocate -stop -physdrv[252:2] -a0   Adapter: 0: Device at EnclId-252 SlotId-2  -- PD Locate Stop Command was successfully sent to Firmware   Exit Code: 0x00 [root@ns3043198:/opt/lsi/MegaCLI] ./MegaCli -PdLocate -stop -physdrv[252:3] -a0   Adapter: 0: Device at EnclId-252 SlotId-3  -- PD Locate Stop Command was successfully sent to Firmware   Exit Code: 0x00 

On passe désormais au disque que nous souhaitons remplacer pour allumer la LED.

Pour cela, nous utilisons la commande suivante : ./MegaCli -PdLocate -start -physdrv[EncID:SlotID] -a0

 [root@ns3043198:/opt/lsi/MegaCLI] ./MegaCli -PdLocate -start -physdrv[252:1] -a0   Adapter: 0: Device at EnclId-252 SlotId-1  -- PD Locate Start Command was successfully sent to Firmware   Exit Code: 0x00 

A ce moment, l'intervention est prête à être effectuée. Vous pouvez alors fournir les informatiosn récoltées précédemment (Enclosure ID, Slot Number ou Slot ID, Serial Number), et indiquer que le disque est allumé.

Étape 4 : Verifier la reconstruction

Une fois l'intervention effectuée par le Datacentre, vous pouvez lister de nouveau les RAID et les disques afin de vérifier que le disque remplacé est bien en Rebuild.

 [root@ns3043198:/opt/lsi/MegaCLI] ./MegaCli -PdList -aALL | egrep "Slot|Device ID|state" Enclosure Device ID: 252 Slot Number: 0 Firmware state: Online, Spun Up Enclosure Device ID: 252 Slot Number: 1 Firmware state: Rebuild Enclosure Device ID: 252 Slot Number: 2 Firmware state: Online, Spun Up Enclosure Device ID: 252 Slot Number: 3 Firmware state: Online, Spun Up 

Le RAID est en état dégradé lors du rebuild, ce qui est normal.

Vous pouvez également vérifier la progression de la reconstruction avec la commande suivante :

 [root@ns3043198:/opt/lsi/MegaCLI] ./MegaCli -PDRbld -ShowProg -PhysDrv [252:1] -a0   Rebuild Progress on Device at Enclosure 252, Slot 1 Completed 93% in 0 Minutes.   Exit Code: 0x00