ANAVEM
Référence
Languageen
Server management visualization representing Redfish API connectivity
ExpliquéRedfish

Qu'est-ce que Redfish ? Définition, fonctionnement et cas d'utilisation

Redfish est une norme API RESTful moderne pour la gestion des serveurs, remplaçant l'IPMI hérité. Découvrez comment fonctionne Redfish, ses avantages et les meilleures pratiques de mise en œuvre.

Emanuel DE ALMEIDAEmanuel DE ALMEIDA
16 mars 2026 9 min 6
RedfishAdministration système 9 min
Présentation

Présentation

Imaginez ceci : vous gérez un centre de données avec des centaines de serveurs, et l'un d'eux tombe en panne à 2 heures du matin. Avec des protocoles de gestion traditionnels comme IPMI, vous auriez besoin d'outils spécialisés, d'interfaces de ligne de commande complexes, et vous vous heurteriez souvent à des implémentations spécifiques aux fournisseurs. Mais que se passerait-il si vous pouviez gérer ce serveur en utilisant les mêmes principes d'API RESTful qui alimentent les applications web modernes ? C'est exactement ce que Redfish offre : une approche standardisée et moderne de la gestion des serveurs qui transforme la manière dont les professionnels de l'informatique gèrent l'infrastructure matérielle.

Développé par le Distributed Management Task Force (DMTF), Redfish représente un changement fondamental par rapport aux protocoles de gestion hérités vers une norme conviviale pour le web, basée sur JSON, qui parle le langage des opérations informatiques modernes. Depuis son introduction en 2015, Redfish a été largement adopté par les principaux fournisseurs de serveurs, devenant la norme de facto pour la gestion des serveurs hors bande dans les environnements d'entreprise.

Qu'est-ce que Redfish ?

Redfish est une spécification standard ouverte de l'industrie qui définit une interface RESTful pour la gestion des serveurs, des systèmes de stockage, des équipements réseau et d'autres infrastructures convergées. Il fournit une interface de gestion de systèmes informatiques sécurisée et multi-nœuds qui utilise des charges utiles JSON sur des protocoles de transport HTTPS.

Pensez à Redfish comme l'équivalent moderne d'une télécommande universelle pour votre matériel de centre de données. Tout comme une télécommande universelle peut contrôler différentes marques de téléviseurs en utilisant des signaux infrarouges standardisés, Redfish vous permet de gérer des serveurs de différents fournisseurs en utilisant des requêtes HTTP standardisées et des réponses JSON. Contrairement aux anciens protocoles qui nécessitaient des outils spécifiques aux fournisseurs et des formats binaires complexes, Redfish utilise des technologies web familières que tout développeur peut comprendre et mettre en œuvre.

La spécification est maintenue par le DMTF et est conçue pour remplacer les protocoles vieillissants comme IPMI (Intelligent Platform Management Interface) et SNMP pour les tâches de gestion matérielle. Redfish fonctionne via le contrôleur de gestion de carte mère (BMC) du serveur, fournissant un accès hors bande aux informations système, à la configuration et aux fonctions de contrôle même lorsque le système d'exploitation principal est hors ligne.

Comment fonctionne Redfish ?

Redfish fonctionne comme un service web RESTful qui s'exécute sur le BMC du serveur, fournissant une interface standardisée pour les opérations de gestion matérielle. Le protocole suit un modèle de données hiérarchique qui représente le système géré comme une collection de ressources organisées dans une structure arborescente.

Le flux de travail principal suit ces étapes :

  1. Découverte de service : Les clients se connectent à la racine du service Redfish à une URI bien connue (généralement /redfish/v1/) pour découvrir les ressources et capacités disponibles.
  2. Authentification : Le client s'authentifie en utilisant des méthodes d'authentification HTTP standard, y compris l'authentification de base, l'authentification basée sur les sessions ou les jetons OAuth 2.0 modernes.
  3. Navigation des ressources : Le client navigue à travers l'arbre des ressources en utilisant des liens hypermédias intégrés dans les réponses JSON, suivant les principes REST pour la découvrabilité.
  4. Exécution des opérations : Les opérations de gestion sont effectuées en utilisant des méthodes HTTP standard—GET pour lire des données, POST pour créer des ressources ou déclencher des actions, PATCH pour les mises à jour, et DELETE pour la suppression.
  5. Gestion des événements : Redfish prend en charge les événements envoyés par le serveur (SSE) et les webhooks pour les notifications en temps réel sur les changements de statut matériel, les alertes et les événements système.

Le modèle de données représente les composants physiques et logiques comme des ressources avec des propriétés, des actions et des relations. Par exemple, un châssis de serveur contient plusieurs systèmes, chaque système a des processeurs et des modules de mémoire, et chaque composant a des capteurs et des paramètres de configuration associés. Cette structure hiérarchique reflète l'organisation matérielle réelle, la rendant intuitive pour les administrateurs à naviguer et gérer.

Les implémentations Redfish incluent généralement un registre de schémas qui définit la structure et les règles de validation pour toutes les ressources, assurant la cohérence entre les différentes implémentations des fournisseurs tout en permettant des extensions spécifiques aux fournisseurs lorsque nécessaire.

À quoi sert Redfish ?

Gestion du cycle de vie des serveurs

Redfish excelle dans la gestion complète du cycle de vie des serveurs, depuis le déploiement initial jusqu'à la mise hors service. Les équipes informatiques utilisent les API Redfish pour automatiser le provisionnement des serveurs, configurer les paramètres du BIOS, gérer les mises à jour du firmware et surveiller la santé matérielle de l'ensemble des flottes de serveurs. Cela inclut des tâches telles que définir l'ordre de démarrage, configurer les matrices RAID et gérer les états d'alimentation—tout cela via des appels d'API standardisés qui fonctionnent de manière cohérente sur différents fournisseurs de matériel.

Surveillance et alerte de l'infrastructure

Les centres de données modernes s'appuient sur Redfish pour la surveillance matérielle en temps réel et les systèmes d'alerte intelligents. Le protocole fournit un accès à des centaines de capteurs surveillant la température, la tension, la vitesse des ventilateurs et la santé des composants. Contrairement aux implémentations SNMP héritées, Redfish fournit ces données dans un format JSON structuré avec des métadonnées riches, ce qui facilite l'intégration avec des plateformes de surveillance modernes comme Prometheus, Grafana ou des solutions d'observabilité natives du cloud.

Intégration des plateformes cloud et de virtualisation

Les principales plateformes cloud et solutions de virtualisation exploitent Redfish pour la gestion des serveurs bare-metal. OpenStack Ironic, VMware vSphere et Microsoft System Center utilisent les API Redfish pour provisionner des serveurs physiques, gérer les opérations d'alimentation et collecter des données d'inventaire matériel. Cette intégration permet de véritables scénarios de cloud hybride où l'infrastructure physique est gérée avec les mêmes approches programmatiques utilisées pour les ressources virtuelles.

DevOps et Infrastructure as Code

La nature RESTful de Redfish le rend idéal pour les flux de travail DevOps et les pratiques d'Infrastructure as Code. Les équipes utilisent les API Redfish dans les playbooks Ansible, les fournisseurs Terraform et les scripts d'automatisation personnalisés pour traiter la configuration matérielle des serveurs comme du code. Cette approche permet des changements d'infrastructure contrôlés par version, des vérifications de conformité automatisées et des modèles de déploiement cohérents à travers les environnements de développement, de test et de production.

Informatique de périphérie et infrastructure IoT

À mesure que les déploiements d'informatique de périphérie se développent, Redfish fournit une gestion standardisée pour l'infrastructure de serveurs distribués. Les emplacements de périphérie manquent souvent de personnel informatique sur site, rendant les capacités de gestion à distance cruciales. Le protocole léger basé sur HTTP de Redfish fonctionne bien sur les connexions WAN, permettant une gestion centralisée des serveurs de périphérie, des ordinateurs industriels et des passerelles IoT depuis un centre d'opérations central.

Avantages et inconvénients de Redfish

Avantages :

  • Normes Web modernes : Utilise des principes HTTP/HTTPS, JSON et REST familiers que les développeurs comprennent déjà, réduisant la courbe d'apprentissage et la complexité d'intégration.
  • Neutralité des fournisseurs : Fournit des API cohérentes sur différents fournisseurs de matériel, éliminant le besoin d'outils de gestion spécifiques aux fournisseurs et réduisant la complexité opérationnelle.
  • Sécurité renforcée : Prend en charge les méthodes d'authentification modernes, le chiffrement TLS et le contrôle d'accès basé sur les rôles, répondant aux faiblesses de sécurité des protocoles hérités comme IPMI.
  • Modèle de données riche : Offre une représentation matérielle complète avec des métadonnées détaillées, des relations et une extensibilité pour les fonctionnalités spécifiques aux fournisseurs.
  • Événements en temps réel : Fournit des mécanismes de notification d'événements efficaces via des événements envoyés par le serveur et des webhooks, permettant une surveillance et des alertes réactives.
  • Évolutivité : Conçu pour les échelles modernes de centres de données avec des opérations en masse efficaces et des capacités de traitement parallèle.

Inconvénients :

  • Maturité de l'implémentation : Bien que largement adopté, certaines implémentations de fournisseurs peuvent présenter des incohérences ou des fonctionnalités manquantes par rapport aux protocoles hérités.
  • Surcharge des ressources : L'analyse JSON et le traitement HTTP nécessitent plus de ressources informatiques sur les BMC par rapport aux protocoles binaires comme IPMI.
  • Complexité pour les tâches simples : Les opérations de base qui étaient simples dans IPMI peuvent nécessiter plusieurs appels d'API et une logique plus complexe dans Redfish.
  • Défis de transition : Les organisations avec des outils basés sur IPMI étendus font face à des efforts de migration significatifs pour adopter des solutions basées sur Redfish.
  • Dépendances réseau : Dépend fortement de la connectivité réseau et de l'infrastructure HTTP, ce qui peut être problématique dans certains environnements isolés ou à haute sécurité.

Redfish vs IPMI

La comparaison entre Redfish et IPMI représente un changement générationnel dans les approches de gestion des serveurs, chaque protocole reflétant les priorités technologiques de son époque.

AspectRedfishIPMI
Type de protocoleHTTP/HTTPS RESTful avec JSONProtocole binaire sur UDP/TCP
Format des donnéesJSON lisible par l'homme avec schémasPaquets binaires avec variations des fournisseurs
SécuritéTLS moderne, OAuth 2.0, RBACAuthentification de base, chiffrement faible
DécouvrabilitéBasé sur l'hypermédia avec racine de serviceEnsembles de commandes statiques, découverte limitée
Cohérence des fournisseursSchéma standardisé avec extensionsVariations significatives spécifiques aux fournisseurs
Complexité de développementBibliothèques et outils HTTP standardBibliothèques et connaissances spécialisées
Gestion des événementsÉvénements envoyés par le serveur, webhooksTraps SNMP, basé sur le sondage
ÉvolutivitéConçu pour l'échelle moderne des centres de donnéesLimité par la conception du protocole

Bien que IPMI ait bien servi l'industrie pendant plus de deux décennies, ses limitations deviennent apparentes dans les environnements modernes. Le protocole binaire d'IPMI nécessite des connaissances et des outils spécialisés, rendant l'automatisation et l'intégration difficiles. Les vulnérabilités de sécurité dans les implémentations IPMI ont été bien documentées, de nombreuses organisations désactivant complètement IPMI en raison de préoccupations de sécurité.

Redfish répond à ces limitations en adoptant les normes web et les pratiques de sécurité modernes. Cependant, la simplicité et le support universel d'IPMI signifient qu'il reste pertinent pour les tâches de gestion de base, en particulier dans les environnements où les implémentations Redfish sont incomplètes ou indisponibles.

Meilleures pratiques avec Redfish

  1. Mettre en œuvre une authentification et une autorisation appropriées : Utilisez toujours des mécanismes d'authentification forts et mettez en œuvre un contrôle d'accès basé sur les rôles. Évitez les identifiants par défaut et envisagez l'authentification basée sur des certificats pour les systèmes automatisés. Faites tourner régulièrement les identifiants et auditez les journaux d'accès pour maintenir la posture de sécurité.
  2. Utiliser la validation des schémas : Validez toutes les requêtes et réponses API par rapport aux schémas Redfish publiés pour assurer la compatibilité et détecter les problèmes d'implémentation tôt. Mettez en œuvre une gestion appropriée des erreurs pour les échecs de validation des schémas et maintenez des matrices de compatibilité pour différentes implémentations de fournisseurs.
  3. Concevoir pour la portabilité des fournisseurs : Écrivez du code de gestion qui repose sur des ressources et propriétés Redfish standard plutôt que sur des extensions spécifiques aux fournisseurs. Utilisez la détection des fonctionnalités et la dégradation progressive lorsque les capacités spécifiques aux fournisseurs ne sont pas disponibles, assurant que vos solutions fonctionnent sur différentes plateformes matérielles.
  4. Mettre en œuvre un sondage et une gestion des événements efficaces : Utilisez les abonnements aux événements Redfish et les événements envoyés par le serveur au lieu d'un sondage fréquent pour réduire le trafic réseau et la charge du BMC. Mettez en œuvre un backoff exponentiel pour les requêtes échouées et respectez la limitation de débit pour éviter de surcharger les contrôleurs de gestion.
  5. Surveiller les performances et la santé du BMC : Suivez les temps de réponse du BMC, les taux d'erreur et l'utilisation des ressources pour identifier les problèmes de performance avant qu'ils n'impactent les opérations. Mettez en œuvre des vérifications de santé pour les services Redfish et ayez des procédures de secours lorsque les interfaces de gestion deviennent indisponibles.
  6. Maintenir la compatibilité des versions : Testez vos implémentations Redfish par rapport à plusieurs versions de schémas et versions de firmware des fournisseurs. Documentez les exigences de compatibilité et maintenez la compatibilité descendante lorsque possible. Planifiez l'évolution des schémas et mettez en œuvre la négociation de version dans vos applications.

Conclusion

Redfish représente une évolution cruciale dans la technologie de gestion des serveurs, amenant l'administration matérielle dans l'ère moderne des API basées sur le web et des opérations natives du cloud. À mesure que les organisations continuent d'adopter l'automatisation, l'Infrastructure as Code et les architectures de cloud hybride, l'approche RESTful de Redfish et son modèle de données riche fournissent la base pour une gestion matérielle évolutive, sécurisée et neutre vis-à-vis des fournisseurs.

L'adoption du protocole par les principaux fournisseurs de serveurs et son intégration dans les principales plateformes cloud démontrent sa maturité et son acceptation par l'industrie. Bien que des défis subsistent dans la transition des protocoles hérités et l'assurance de la cohérence des implémentations des fournisseurs, les avantages de la standardisation, de la sécurité et des interfaces conviviales pour les développeurs font de Redfish une technologie essentielle pour l'infrastructure informatique moderne.

Pour les professionnels de l'informatique cherchant à moderniser leurs pratiques de gestion matérielle, investir dans la connaissance et les outils Redfish portera ses fruits à mesure que l'industrie continue son passage vers une gestion d'infrastructure pilotée par API. L'avenir des opérations de centres de données réside dans le traitement du matériel comme une infrastructure programmable, et Redfish fournit l'interface standardisée pour faire de cette vision une réalité.

Questions fréquentes

Qu'est-ce que Redfish en termes simples ?+
Redfish est une norme moderne basée sur le web pour gérer à distance les serveurs et autres matériels. Il utilise des requêtes HTTP familières et des réponses JSON au lieu de protocoles binaires complexes, ce qui facilite l'automatisation des tâches de gestion du matériel pour les professionnels de l'informatique.
À quoi sert Redfish ?+
Redfish est utilisé pour la gestion complète des serveurs, y compris la surveillance de l'état matériel, la configuration des paramètres du BIOS, la gestion des états d'alimentation, la mise à jour du firmware et la collecte de l'inventaire du système. Il est particulièrement précieux pour l'automatisation des centres de données et la gestion des infrastructures cloud.
Redfish est-il le même que IPMI ?+
Non, Redfish est un remplacement moderne pour IPMI. Bien que les deux fournissent une gestion de serveur hors bande, Redfish utilise des API RESTful avec JSON sur HTTPS, offrant une meilleure sécurité, standardisation et des interfaces conviviales pour les développeurs par rapport au protocole binaire d'IPMI.
Comment puis-je commencer avec Redfish ?+
Commencez par vérifier si vos serveurs prennent en charge Redfish via leurs interfaces BMC. La plupart des serveurs modernes des grands fournisseurs incluent la prise en charge de Redfish. Vous pouvez explorer l'API en utilisant des outils comme curl ou Postman, puis intégrer les appels Redfish dans vos scripts d'automatisation ou plateformes de gestion.
Quels sont les avantages de sécurité de Redfish par rapport à IPMI ?+
Redfish offre des fonctionnalités de sécurité modernes, y compris le chiffrement TLS, l'authentification OAuth 2.0, le contrôle d'accès basé sur les rôles et la gestion sécurisée des identifiants. Ces fonctionnalités répondent à de nombreuses vulnérabilités de sécurité trouvées dans les implémentations IPMI héritées, rendant Redfish beaucoup plus sûr pour les environnements de production.
Références

Ressources officielles (2)

Emanuel DE ALMEIDA
Écrit par

Emanuel DE ALMEIDA

Microsoft MCSA-certified Cloud Architect | Fortinet-focused. I modernize cloud, hybrid & on-prem infrastructure for reliability, security, performance and cost control - sharing field-tested ops & troubleshooting.

Discussion

Partagez vos réflexions et analyses

Vous devez être connecté pour commenter.

Chargement des commentaires...