
L'organisation d'un espace disque unique est une tâche qui peut être facilement résolue à l'aide d'un contrôleur RAID matériel. Cependant, vous devez d'abord vous familiariser avec les fonctionnalités d'utilisation et de gestion d'un tel contrôleur. Nous en parlerons aujourd'hui dans notre article.
La fiabilité et la vitesse des disques durs préoccupent tous les administrateurs système. Malgré les assurances des fabricants sur la qualité de leurs propres appareils - les disques durs et SSD continuent de tomber en panne au moment le plus inopportun, perdant ainsi de précieuses données. Dans la plupart des cas, la technologie SMART permet d'évaluer la «santé» du lecteur, mais cela ne garantit pas que le lecteur continuera de fonctionner correctement.
Il est impossible de prédire la panne d'un disque avec une précision de 100%, vous devez donc envisager l'option lorsque cela ne pose pas de problème ou ne provoque pas d'arrêt de service. L'utilisation de matrices RAID résout ce problème. Considérez les trois principales approches utilisées pour cette tâche:
- Le RAID logiciel est l'option la moins chère, mais aussi la moins productive. La baie est créée par le système d'exploitation, l'ensemble de la charge de traitement des données incombe au processeur central.
- Le RAID matériel intégré (aussi souvent appelé Fake-RAID) est une micropuce installée sur la carte mère, qui prend en charge une partie des fonctionnalités du contrôleur RAID matériel, en collaboration avec le processeur central. Cette approche fonctionne un peu plus rapidement que le RAID logiciel, mais la fiabilité d'une telle matrice laisse beaucoup à désirer.
- Le RAID matériel est un contrôleur séparé avec son propre processeur et sa propre mémoire cache, prenant entièrement en charge toutes les opérations sur le disque. L'option la plus chère, cependant, la plus productive et la plus fiable à utiliser.
Examinons le RAID matériel en détail.
Apparence
Nous avons sélectionné les solutions Adaptec de Microsemi. Ce sont des contrôleurs RAID avec une facilité d'utilisation éprouvée et de hautes performances. Nous les installons si notre client décide de
commander un serveur de configuration arbitraire ou fixe.

Pour connecter des disques, des câbles d'interface spéciaux sont utilisés. Côté contrôleur, des connecteurs
SFF8643 sont
utilisés . Chaque câble vous permet de connecter jusqu'à 4 disques SAS ou SATA (selon le modèle). De plus, le câble d'interface possède également un connecteur
SFF-8485 à huit broches pour le bus SGPIO, dont nous parlerons un peu plus tard.
En plus du contrôleur RAID lui-même, deux périphériques supplémentaires peuvent augmenter la fiabilité:
- BBU (Battery Backup Unit) est un module d'extension avec une batterie lithium-ion qui vous permet de maintenir la tension sur une puce de cache volatile. En cas de panne soudaine du serveur, son utilisation vous permet de sauvegarder temporairement le contenu du cache, qui n'a pas encore été écrit sur les disques.
Dès que l’alimentation du serveur est rétablie, le contenu du cache est écrit sur les disques en mode normal. Selon le fabricant, une batterie entièrement chargée est capable de stocker des données de cache pendant 72 heures. - ZMCP (Zero-Maintenance Cache Protection) est un module d'extension spécial pour le contrôleur RAID, qui possède sa propre mémoire non volatile et son supercondensateur. En cas de panne de courant du serveur, le supercondensateur fournit au microcircuit une alimentation électrique suffisante pour écrire le contenu de la mémoire cache volatile dans la mémoire NAND ZMCP.
Une fois l'alimentation du serveur rétablie, le contenu du cache sera automatiquement écrit sur les disques. Ces modules sont installés sur nos serveurs avec un contrôleur RAID matériel et une protection de cache.

Ceci est particulièrement important lorsque l'écriture différée est activée. En cas de panne de courant, le contenu du cache ne sera pas vidé sur les disques, ce qui entraînera une perte de données et, par conséquent, le fonctionnement normal de la matrice de disques sera interrompu.
Spécifications techniques
La température
Tout d'abord, je voudrais aborder une chose aussi importante que le régime de température des contrôleurs RAID matériels Adaptec. Tous sont équipés de petits radiateurs passifs, ce qui peut provoquer une fausse impression d'une petite dissipation thermique.
Le fabricant du contrôleur cite 200 LFM (pieds linéaires par minute) comme valeur de débit d'air recommandée, ce qui correspond à un indicateur de 8,24 litres par seconde (ou 1,02 mètre par seconde). Ces contrôleurs sont conçus exclusivement pour une installation dans des boîtiers montés en rack, où un tel flux d'air est créé par des refroidisseurs standard à grande vitesse.
De 0 ° C à 40-55 ° C - la température de fonctionnement de la plupart des contrôleurs RAID Adaptec (selon la disponibilité des modules installés), recommandée par le fabricant. La température maximale de fonctionnement de la puce est de 100 ° C. L'utilisation du contrôleur à des températures élevées (supérieures à 85 ° C) peut l'endommager. Pour des raisons de commodité, nous fournissons une plaque sous le becquet des températures recommandées pour différents contrôleurs de la série Adaptec.
Températures recommandées Nos clients n'ont pas à se soucier de la surchauffe des contrôleurs, car nos centres de données maintiennent un
régime de température constant , et l'assemblage de serveurs de configuration arbitraires prend en compte les caractéristiques de ces composants (comme nous l'avons mentionné dans notre
article précédent ).
Vitesse de travail
Afin de démontrer comment la disponibilité d'un contrôleur RAID matériel contribue à augmenter la vitesse du serveur, nous avons décidé d'assembler un banc de test avec la configuration suivante:
- Processeur Intel Xeon E3-1230v5;
- RAM 16 Go DDR4 2133 ECC;
- 4 disques durs d'une capacité de 1 To.
Le système d'exploitation sera installé CentOS 7. Le rôle de l'application serveur prendra sur 1C Bitrix24. Tout d'abord, nous allons construire un RAID logiciel à l'aide de mdadm et mesurer les performances à l'aide du test intégré dans Bitrix24. Nous n’apportons pas de modifications ni de paramètres supplémentaires au système. Une configuration de démonstration avec des paramètres par défaut est installée.
Ensuite, nous placerons le contrôleur RAID Adaptec ASR 7805 avec le module de protection de cache AFM-700 dans le même support, y connecterez les mêmes disques durs et effectuerez exactement le même test.
Avec RAID logiciel
L'avantage incontestable du RAID logiciel est sa facilité d'utilisation. Un tableau sous Linux est créé à l'aide de l'utilitaire mdadm standard. Lors de l'installation du système d'exploitation, le plus souvent, la création d'un tableau est fournie directement par le programme d'installation. Dans le cas où l'installateur ne fournit pas une telle opportunité, il suffit d'aller à la console suivante en utilisant la combinaison de touches Ctrl + Alt + F2 (où le numéro de la touche de fonction est le numéro du tty appelé).
La création d'un tableau est très simple. La
commande fdisk -l recherche les disques présents dans le système. Dans notre cas, ce sont 4 disques:
/dev/sda /dev/sdb /dev/sdc /dev/sdd
Vérifiez qu'il n'y a pas de métadonnées sur les disques, par exemple, du tableau précédent:
mdadm --examine /dev/sda /dev/sdb /dev/sdc /dev/sdd
Sur les 4 disques, il devrait y avoir un message:
mdadm: No md superblock detected
S'il y a des métadonnées sur un ou plusieurs disques, vous pouvez les supprimer comme suit (où sdX est le disque requis):
mdadm --zero-superblock /dev/sdX
Créez des partitions sur chaque disque pour la future baie à l'aide de
fdisk . Le type de partition doit être
fd (Linux RAID autodetect) .
fdisk /dev/sdX
Nous collectons la matrice RAID 10 à partir des partitions créées à l'aide de la commande:
mdadm --create --verbose /dev/md0 --level=10 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
Immédiatement après cela, le tableau / dev / md0 sera créé et le processus de reconstruction des données sur les disques démarrera. Pour suivre l'état actuel du processus, entrez:
cat /proc/mdstat

Jusqu'à ce que le processus de reconstruction des données soit terminé, la vitesse de la matrice de disques sera réduite.
Après avoir installé le système d'exploitation et Bitrix24 sur la baie créée, nous avons lancé le test standard et obtenu les résultats suivants:

Avec RAID matériel
Avant que le serveur puisse utiliser l'espace disque unique de la matrice RAID, il est nécessaire d'effectuer la configuration de base du contrôleur et des unités logiques. Il existe deux façons de procéder:
- en utilisant l'utilitaire de contrôleur interne,
- utilitaire du système d'exploitation.
La première méthode est idéale pour la configuration initiale. La connexion à l'utilitaire en mode hérité (le mode par défaut pour nos serveurs) est effectuée à l'aide de la combinaison de touches CTRL + A lorsqu'une notification apparaît pendant le processus d'initialisation POST.

L'utilitaire permet non seulement de contrôler les paramètres du contrôleur, mais également les périphériques logiques. Nous initialisons les disques physiques (toutes les informations sur les disques lors de l'initialisation seront détruites) et créons une matrice RAID-10 à l'aide de la section Créer une matrice. Lors de la création, le système demandera la taille de bande souhaitée, c'est-à-dire la taille du bloc de données pour une opération d'E / S:
- une taille de bande plus grande est idéale pour travailler avec de gros fichiers;
- une taille de bande plus petite convient au traitement d'un grand nombre de petits fichiers.
Important - la taille de bande n'est définie qu'une seule fois (lors de la création de la matrice) et cette valeur ne pourra plus être modifiée à l'avenir.

Immédiatement après que le contrôleur a reçu la commande de créer une matrice, ainsi qu'avec le RAID logiciel, le processus de reconstruction des données sur les disques commence. Ce processus s'exécute en arrière-plan et le lecteur logique est immédiatement accessible au BIOS. Les performances du sous-système de disque seront également réduites jusqu'à la fin du processus. Si plusieurs tableaux ont été créés, il est nécessaire de déterminer le tableau de démarrage à l'aide du raccourci clavier
Ctrl + B.Après que l'état de la baie soit passé à
Optimal , nous avons installé Bitrix24 et effectué exactement le même test. Résultat du test:

Il devient immédiatement clair que le contrôleur RAID matériel accélère les opérations de lecture et d'écriture sur les supports de disque grâce à l'utilisation d'un cache, ce qui permet un traitement plus rapide des demandes d'utilisateurs de masse.
Gestion du contrôleur
Directement à partir du système d'exploitation, le contrôleur est contrôlé à l'aide d'un logiciel disponible en téléchargement
sur le site Web du fabricant . Des options sont disponibles pour la plupart des systèmes d'exploitation et des hyperviseurs:
- Debian
- Ubuntu
- Red Hat Linux,
- Fedora
- SuSE Linux,
- FreeBSD
- Solaris,
- Microsoft Windows
- Citrix XenServer,
- VMware ESXi
D'autres distributions Linux ont également des codes sources de pilotes disponibles. En plus des pilotes et de l'utilitaire de console ARCCONF, le fabricant propose également un programme avec une interface graphique pour un contrôle pratique du contrôleur - maxView Storage Manager.
En utilisant ces utilitaires, sans interrompre le serveur, vous pouvez facilement gérer les disques logiques et physiques. Vous pouvez également utiliser des fonctionnalités utiles telles que la «mise en évidence du disque». Nous avons déjà mentionné le cinquième câble pour connecter SGPIO - ce câble se connecte directement au fond de panier (à partir du fond de panier anglais - la carte de connexion pour les lecteurs de serveur) et permet au contrôleur RAID de contrôler entièrement l'indication lumineuse de chaque disque.
Gardez à l'esprit que les fonds de panier prennent en charge non seulement SGPIO, mais aussi I2C. La commutation entre ces modes se fait le plus souvent à l'aide de cavaliers sur le fond de panier lui-même.
Chaque périphérique connecté au contrôleur RAID matériel Adaptec se voit attribuer un identifiant composé d'un numéro de canal et d'un numéro de disque physique. Les numéros de canal correspondent aux numéros de port sur le contrôleur.
Le remplacement de disque est une opération régulière, cependant, nécessitant une identification sans ambiguïté. Si vous faites une erreur lors de cette opération, vous pouvez perdre des données et interrompre le serveur. Avec un contrôleur RAID matériel, une telle erreur est rare.
Cela se fait très simplement:
- Une liste des lecteurs mappés au contrôleur est demandée:
arcconf getconfig 1
- On trouve un disque qui doit être remplacé et ses «coordonnées» sont enregistrées (paramètre Canal signalé, appareil (T: L) ).

- Le disque est "surligné" avec la commande:
arcconf identify 1 device 0 0
Le contrôleur donnera la commande de fond de panier appropriée et la LED du lecteur souhaité commencera à clignoter uniformément dans une couleur différente de celle de travail standard.
Par exemple, sur les plates-formes Supermicro, le fonctionnement normal du disque est vert ou bleu et le disque «surligné» clignotera en rouge. Il est impossible de mélanger les disques dans ce cas, ce qui permettra d'éviter les erreurs dues au facteur humain.

Configurer la mise en cache
Maintenant, quelques mots sur les options de travail du cache d'écriture. L'option
Write Through signifie que le contrôleur informe le système d'exploitation du succès de l'opération d'écriture uniquement après que les données ont été réellement écrites sur les disques. Cela augmente la fiabilité de la sécurité des données, mais n'augmente pas la productivité.
Pour atteindre la vitesse maximale, vous devez utiliser l'option d'
écriture différée . Avec ce schéma de fonctionnement, le contrôleur informera le système d'exploitation de la réussite de l'opération d'E / S immédiatement après l'arrivée des données dans le cache.
Important - lorsque vous utilisez Write Back, il est fortement recommandé d'utiliser un module BBU ou ZMCP, car sans lui, lors d'une coupure de courant soudaine, certaines données pourraient être perdues.
Configuration de la surveillance
La question de la surveillance de l'état de l'équipement et de la possibilité de notification est assez aiguë pour tout administrateur système. Afin de configurer le «bundle» de Zabbix et du contrôleur RAID Adaptec, nous vous recommandons d'utiliser les
solutions répertoriées .
Souvent, vous devez surveiller l'état du contrôleur directement à partir de l'hyperviseur, par exemple, VMware ESXi. Le problème est résolu en installant le fournisseur CIM à
l' aide de
l'instruction Microsemi .
Firmware
Le besoin d'un micrologiciel de contrôleur RAID se pose le plus souvent pour résoudre les problèmes identifiés par le fabricant avec le fonctionnement de l'appareil. Malgré le fait que le firmware soit disponible pour l'auto-mise à jour, cette opération doit être abordée de manière très responsable, surtout si la procédure est effectuée sur un système «combat».
Si notre client a besoin de changer la version du firmware du contrôleur, il lui suffit
de créer un ticket dans notre panneau de contrôle. Les ingénieurs système flasheront le contrôleur RAID à la version requise à l'heure spécifiée et le feront aussi correctement que possible.
Important - vous ne devez pas effectuer le flashage vous-même, car toute erreur peut entraîner une perte de données!
Conclusion
L'utilisation d'un contrôleur RAID matériel est justifiée dans la plupart des cas lorsqu'une vitesse et une fiabilité élevées du sous-système de disque sont requises.
Les ingénieurs système de Selectel effectueront gratuitement la configuration de base de la matrice de disques sur le contrôleur RAID matériel lors de la commande d'un serveur de configuration arbitraire. Dans le cas où une assistance supplémentaire pour la configuration est nécessaire, nous serons heureux de vous aider dans le cadre de notre
service d'administration . De plus, nous avons préparé pour nos lecteurs un petit
mémo sur les commandes de l'utilitaire arcconf.
Utilisez-vous des contrôleurs RAID matériels? Rendez-vous dans les commentaires.