Redfish est une norme de réseau et une interface de programmation d'applications (API) pour la gestion des serveurs, des réseaux, des dispositifs de stockage, des équipements d'installations et d'autres composants d'infrastructure convergente (CI) dans les environnements IT hybrides définis par logiciel, comme les centres de données à l'échelle du web et l'infrastructure Cloud.
Redfish est basé sur des schémas et fournit une interface RESTful (Representational State Transfer) sur le protocole de transfert hypertexte (HTTP) en utilisant le format JavaScript Object Notation (JSON) et le langage de définition de schéma commun (CSDL), tel que défini par Open Data Protocol (OData) v4.
Redfish comprend de multiples spécifications, y compris des normes communes pour l'internet et les services web, afin d'exposer les informations à la chaîne d'outils moderne. En IT, une chaîne d'outils comprend les outils de programmation utilisés pour effectuer des tâches complexes de développement de logiciels. La norme Redfish comprend des spécifications non seulement pour la messagerie client, mais aussi pour des services builds tels que la gestion des tâches et des utilisateurs, ainsi que le contrôle des sessions et des événements.
Redfish est une API hypermédia. Le terme hypermédia fait référence à sa capacité à gérer le multimédia comme le texte, l'audio, la vidéo, les graphiques et les hyperliens, ce qui le rend bien adapté aux systèmes riches en médias et aux systèmes de stockage.
Redfish a été développé par la Distributed Management Task Force (DTMF), une organisation de normalisation industrielle à but non lucratif qui crée des normes pour les infrastructures IT. Redfish a été conçu à l'origine comme une norme de gestion des serveurs, mais la dernière version prend en charge toute la gamme de matériel que l'on trouve dans un centre de données.
La première version de la norme Redfish, Redfish 1.0, a été publiée en 2015 et fournissait des modèles de schéma de base qui décrivaient les ressources prises en charge par Redfish et la manière d'y accéder. Les versions suivantes ont ajouté de nouveaux modèles de schéma, par exemple pour normaliser la gestion de la mémoire, des disques, du stockage, des points de terminaison, etc. et ont ajouté de nouvelles spécifications pour des fonctionnalités telles que la composabilité et la télémétrie qui étaient essentielles pour gérer efficacement les ressources matérielles, ainsi que pour une interface in-band.
Les objectifs de la DMTF lors de la conception de Redfish étaient de développer une interface inter-fournisseurs qui : exposait les informations directement à la chaîne d'outils moderne ; fournissait un modèle de données évolutif et extensible pour la gestion de l'IT hybride définie par logiciel ; exploitait les normes web, les meilleures pratiques et les méthodes de sécurité couramment utilisées ; disposait d'une capacité multi-nœuds sécurisée ; était lisible par l'homme mais compatible avec les machines ; et permettait une interopérabilité maximale entre les différents composants matériels tels que les appareils de plus en plus divers intégrés à l'Edge computing et à l'IoT.
La tâche principale d'un gestionnaire de serveur est de gérer, configurer et contrôler l'infrastructure d'un serveur à distance, et de répondre aux alertes et notifications du serveur. Cela se fait par l'intermédiaire d'une interface hors bande (OOB). La gestion OOB est un moyen de gérer à distance l'infrastructure IT à l'aide d'une connexion sécurisée via une interface physiquement séparée du réseau de production. Cela permet aux administrateurs de prendre le contrôle du matériel à distance en cas de défaillance d'un système ou d'un composant. Par opposition, la gestion en bande fait référence à la gestion des composants à travers le réseau lui-même, en utilisant une connexion Telnet ou SSH, ou des outils basés sur SNMP. La dernière spécification de l'interface hôte Redfish fournit une fonctionnalité in-band qui permet aux applications et aux outils fonctionnant sur un système d'exploitation (OS) de communiquer avec Redfish. C'est l'une des caractéristiques qui permet aux administrateurs de gérer les centres de données de manière globale via une interface unique.
Redfish remplace l'interface de gestion de plate-forme intelligente (IPMI), largement utilisée, qui a été publiée en 1998. Comme Redfish, IPMI spécifie des normes pour la gestion des composants d'infrastructure basés sur le matériel, comme les serveurs. Cependant, IPMI n'était pas très évolutive, n'était pas conviviale et ne permettait pas de relever efficacement les défis modernes en matière de sécurité. Les fournisseurs ayant souvent développé leurs propres versions et extensions, l'IPMI connaissait des problèmes d'interopérabilité et devenait de plus en plus fragmentée.
Les alertes personnalisées et la visualisation des données vous permettent d'identifier et de prévenir rapidement les problèmes de santé et de performance du réseau.
Dans les centres de données, ce ne sont pas seulement les serveurs qui doivent être supervisés à distance, accessibles et potentiellement redémarrés ou dont les paramètres doivent être modifiés, mais aussi les équipements des installations tels que les caméras CCTV ou les unités d'air conditionné.
Redfish supervise la santé des composants matériels tels que les capteurs, les blocs d'alimentation, les ventilateurs et les châssis, ainsi que leur statut ou des mesures telles que la tension ou la température. IT exécute et peut également automatiser des tâches de maintenance telles que le redémarrage de différents types de matériel, la définition de seuils d'alimentation, la configuration des paramètres réseau du contrôleur de gestion de carte de base (BMC) et la modification des paramètres du BIOS. Redfish récupère des informations sur les capteurs, la consommation d'énergie, la mémoire, l'espace de stockage et le système d'exploitation lui-même. Il est utilisé pour effectuer des procédures de récupération à distance, fournir des journaux du système et des événements, répondre aux avertissements et aux événements critiques, et gérer les comptes d'utilisateurs.
Redfish a été conçu pour réduire les frais généraux, augmenter la productivité des administrateurs système, réduire le verrouillage des fournisseurs et permettre une interopérabilité évolutive pour l'IT convergente et hybride dans les centres de données définis par logiciel (SDDC). Il a été développé pour répondre à la complexité croissante des SDDC et pour combler les lacunes des solutions traditionnelles de gestion des centres de données, telles que l'incompatibilité des API, des normes, des protocoles et des interfaces, ainsi que le nombre croissant de nouveaux types de matériel. Il a été conçu pour combler les lacunes de la norme ITMI et de l'interpréteur de ligne de commande (CLI) en matière de gestion des serveurs dans les centres de données et, à terme, pour les remplacer.
Dans les SDDC modernes, les logiciels virtualisés représentent les services et les ressources du réseau. Cela signifie qu'il n'est pas nécessaire de modifier manuellement les connexions physiques et le matériel. Redfish permet de réaffecter virtuellement un périphérique à un client différent sans que quelqu'un doive se trouver physiquement dans le centre de données.
Redfish ne se limite pas à la gestion des composants. Il est également utilisé pour gérer l'alimentation et le refroidissement du Data Center Infrastructure Management (Data Center Infrastructure Management), ainsi que le domaine Ethernet à l'aide de YANG, un langage de modélisation des données. Il est de plus en plus utilisé dans des réseaux tels que l'IT et l'Edge. Redfish fournit également des outils et des extensions pour des frameworks comme Ansible et Puppet qui automatisent des tâches comme le provisionnement du Cloud et les déploiements d'applications.
Redfish peut être utilisé avec des serveurs autonomes, dans des environnements montés en rack et à lames, et dans des environnements Cloud à grande échelle.
Parmi les serveurs commerciaux qui utilisent Redfish figurent les serveurs Dell PowerEdge 13G/14G, les serveurs Supermicro X10/X11 et les serveurs HPE ProLiant avec iLO 5. Les logiciels populaires qui utilisent Redfish comprennent OpenStack Ironic, Ansible et ManageIQ.
Redfish est notamment pris en charge par Supermicro, Oracle, Cisco, Lenovo, Dell, HPE, Intel, Microsoft et Huawei.
Les notifications en temps réel sont synonymes de dépannage plus rapide afin que vous puissiez agir avant que des problèmes plus graves ne surviennent.
La chaîne d'outils Redfish comprend REST, HTTPS, JSON et OData. Ces technologies couramment utilisées sont familières aux développeurs et rendent Redfish facile à mettre en œuvre et à utiliser, et sont facilement accessibles aux applications, aux bibliothèques clientes et aux scripts.
L'une des principales caractéristiques de Redfish est la séparation entre le protocole et le modèle de données, ce qui rend les données agnostiques en termes de transport et de protocole.
L'API Redfish est définie indépendamment d'un modèle de données. Elle utilise une interface RESTful pour accéder à un modèle de données basé sur un schéma.
Un schéma décrit la relation entre les objets d'un système. La DMTF héberge des fichiers de schémas pour les données standard utilisées dans Redfish dans le référentiel de schémas de la DMTF. Le schéma Redfish peut être étendu en ajoutant de nouvelles propriétés à un schéma existant ou en créant une nouvelle collection ou une ressource subordonnée au sein d'une collection.
La fonction d'un service Redfish est de recevoir une requête HTTPS et de renvoyer une réponse concernant la ressource. HTTPS est un protocole de couche d'application qui est utilisé pour transporter les demandes et les réponses en utilisant TCP/IP au niveau de la couche de transport. Le terme "protocole Redfish" fait référence à une carte RESTful du protocole de messagerie HTTP.
Un service Redfish renvoie un code d'état HTTPS standard et peut renvoyer plusieurs réponses d'erreur supplémentaires pour fournir des informations étendues sur une erreur.
OData est un protocole de couche d'application qui spécifie comment les services REST sont appelés via HTTP et comment ils répondent. Redfish utilise la norme OData v4 pour définir le schéma et les formats de données utiles afin que les applications OData prêtes à l'emploi puissent interagir de manière native avec Redfish.
JSON est un format de fichier et d'échange de données largement utilisé qui stocke et transmet des objets de données dans un texte lisible par l'homme. En utilisant JSON, la sortie de Redfish peut être visualisée dans un navigateur. OData prescrit la structure des données codées au format JSON.
La DMTF fournit également le schéma Redfish au format YAML (Yet Another Markup Language). YAML est un langage de sérialisation de données lisible par l'homme, souvent utilisé pour écrire des fichiers de configuration.
Un contrôleur de gestion de base supervise le statut physique, comme la température ou la tension, d'un ordinateur ou d'un autre périphérique à l'aide de capteurs. Il fonctionne indépendamment du logiciel du serveur et permet aux administrateurs de contourner le système d'exploitation pour contrôler les périphériques et les composants du serveur à distance, ce qui réduit les frais généraux et augmente la fiabilité.
Lorsque l'IPMI ou son concurrent Active Management Technology (AMT) était utilisé pour la gestion de la bande de base, les fournisseurs étaient traditionnellement en mesure d'enfermer les clients dans leurs produits. Redfish s'appuie sur des solutions de gestion de la bande de base telles que l'IPMI. Il rend le processus de gestion de la bande de base sous-jacent transparent pour les développeurs et permet d'interagir avec n'importe quel BMC à l'aide de charges utiles JSON. Une charge utile JSON est une donnée associée à une ressource spécifique à laquelle on accède via l'API Redfish.
CI intègre des composants d'infrastructure de calcul, de stockage, de virtualisation et de réseau, ce qui réduit la complexité de la gestion des centres de données et atténue l'incompatibilité du matériel. Avec Redfish, la gestion de ces composants peut se faire à l'aide d'une interface unique et simple.
Redfish fournit une authentification de base HTTP en utilisant l'en-tête Authorization dans une requête HTTPS. L'authentification de base est généralement utilisée pour des requêtes uniques. L'authentification basée sur la session est réalisée par un client qui enregistre l'en-tête X-Auth-Token renvoyé dans une réponse HTTPS à partir d'une demande de démarrage d'une session. L'authentification basée sur la session est utilisée lorsque plusieurs demandes sont effectuées successivement. LDAP et Microsoft Active Directory peuvent également être utilisés pour les informations d'identification.
Un service Redfish est une application ou un système géré qui met en œuvre la norme Redfish via une interface définie par Redfish. Un service comprend toujours un localisateur de ressources uniformes (URL) ou un identificateur de ressources uniformes (URI) de base qui représente un type particulier de ressource, par exemple un service, une collection ou un fichier. Les services renvoient les ressources sous forme de données utiles JSON.
Les ressources comprennent une propriété vide appelée OEM, qui est utilisée pour contenir des propriétés spécifiques au fournisseur et permet l'extensibilité de la ressource.
Les ressources Redfish, qu'elles soient standard ou créées par d'autres, suivent un ensemble de conventions de dénomination afin de garantir un nommage cohérent. Elles sont organisées dans une structure arborescente avec des collections qui peuvent inclure plusieurs ressources liées. Une collection est un ensemble de ressources qui partagent la même définition de schéma. Les collections sont utilisées pour soutenir les systèmes autonomes, multi-nœuds et agrégés au niveau des racks.
Les principales ressources Redfish sont divisées en trois collections : systèmes, gestionnaires et châssis. La collection des systèmes fournit une vue logique d'un système informatique et comprend des ressources système telles que le CPU et le stockage. La collection de gestion comprend des ressources de gestion telles que les BMC et les gestionnaires de boîtiers. La collection de châssis comprend les ressources liées aux éléments physiques d'une infrastructure, tels que les boîtiers, les racks et les lames. Les collections de châssis relient les composants physiques aux logiciels d'un système.
Les registres sont des ressources Redfish utilisées pour fournir des informations supplémentaires sur d'autres ressources. Par exemple, les informations sur le BIOS varient d'une plate-forme à l'autre, et Redfish ne peut donc pas définir un schéma fixe pour ces informations. Les registres sont utilisés pour fournir plus d'informations sur ces valeurs.
Redfish exploite des ressources supplémentaires par le biais de services. Les collections de services comprennent les tâches, les sessions, les comptes, les événements, les mises à jour, les registres et les schémas. Les services de composition et de télémétrie sont deux services qui fournissent les capacités nécessaires à deux fonctionnalités clés de Redfish : la composabilité et la collecte de métriques.
Pour améliorer les performances, les composants matériels des centres de données sont désagrégés ou découplés, c'est-à-dire décomposés en éléments constitutifs tels que la mémoire, le stockage, les modules de calcul, etc. Ces composants sont affectés à des pools de ressources disponibles qui peuvent être optimisés pour des charges de travail spécifiques en fonction des besoins. Cela signifie qu'ils peuvent être réassemblés pour des utilisations différentes, ce qui optimise la résolution des problèmes de ressources. Cette architecture est appelée "infrastructure composable".
Le service de composition Redfish fournit un modèle de données pour décrire les ressources composables et une interface qui permet aux clients de réassembler et de configurer les composants composables à distance.
La télémétrie est le processus de collecte de métriques sur des données brutes provenant de capteurs situés dans des sources matérielles distantes. Une métrique est la valeur d'une qualité ou d'une quantité mesurable, comme la température ou le courant électrique. Les métriques sont utilisées pour obtenir des métadonnées sur une ressource, pour établir des rapports sur le comportement des ressources et pour spécifier des seuils de déclenchement pour les métriques qui sont supervisées, par exemple la température de fonctionnement maximale autorisée d'un appareil.
Les métriques apparaissent dans les ressources Redfish sous forme de propriétés JSON facultatives. Le service de télémétrie Redfish décrit les ressources qu'un client peut utiliser pour obtenir des métriques d'un composant Redfish.
Redfish s'intègre facilement aux technologies couramment utilisées telles que REST, JSON et Odata, et offre de meilleures fonctionnalités, performances et sécurité que les autres solutions de gestion de plate-forme.
Redfish a une faible empreinte mémoire et supporte la plupart des systèmes d'exploitation, ce qui permet une gestion efficace des centres de données multi-fournisseurs. Redfish est totalement extensible et comprend un cadre de développement et une suite de tests complets, ainsi que des extensions OEM pour les déploiements personnalisés.
Redfish utilise la gestion OOB qui permet aux administrateurs de gérer à distance les composants du centre de données même si l'équipement est éteint. Cela permet de superviser en continu et de remédier immédiatement à la situation en cas de défaillance du système.
Redfish peut être déployé sur des contrôleurs de gestion existants et libère les serveurs de la dépendance à l'égard des fournisseurs. Il réduit la complexité et l'inefficacité inhérentes à l'utilisation de plusieurs outils incompatibles, permettant aux développeurs d'innover des solutions plus flexibles, plus stables, plus rentables et plus extensibles.
Grâce à Redfish, l'interopérabilité peut être gérée tout au long du cycle de vie d'un produit ou d'un service, du déploiement au support.
Bien que Redfish améliore l'interopérabilité entre les composants des centres de données, un client Redfish peut toujours avoir besoin d'utiliser différents éléments de message pour les produits de différents fournisseurs.
Redfish ne permet pas à un client de copier le contenu d'une arborescence de ressources directement vers un autre service, car la configuration peut être différente. De même, la valeur des liens de ressources peut varier d'une implémentation à l'autre.
Le logiciel client devra être mis à jour lors des mises à jour du modèle de données et de l'ajout de nouveaux composants.
Redfish est une norme de nouvelle génération de l'industrie ouverte à croissance rapide qui permet l'évolutivité dans les environnements multi-serveurs comme les centres de données et les infrastructures Cloud.
La DMTF collabore avec un certain nombre de partenaires d'alliance pour construire de nouvelles extensions Redfish. Par exemple, la DMTF, NVMe et la Storage Networking Industry Association (SNIA) ont collaboré au développement de Swordfish pour la gestion des appareils et services de stockage dans les centres de données. Le groupe de fabricants d'ordinateurs industriels PCI (PICMG) travaille sur des extensions pour prendre en charge les déploiements IoT. L'American Society of Heating, Refrigerating and Air Conditioning Engineers (ASHRAE) a adopté Redfish pour la gestion de l'alimentation et de la thermique dans les centres de données. En collaboration avec la DMTF, l'OpenFabrics Alliance développe de nouveaux modèles et schémas Redfish pour différents tissus. Dans le domaine de l'IT, le terme "fabric" fait référence aux réseaux de données ou de stockage, ainsi qu'aux serveurs des plates-formes Cloud, et aux connexions et commutateurs à haut débit. Redfish devrait également remplacer l'IPMI dans le cadre de l'Open Compute Project (OCP). Il s'agit d'utiliser Redfish pour spécifier la gérabilité de la plate-forme dans les applications de l'OCP.
Le principal inconvénient potentiel de Redfish est le gonflement à l'avenir en raison du grand nombre d'extensions créées, en particulier en ce qui concerne l'Edge computing.
PRTG est un logiciel de supervision Network complet qui assure le suivi de l'ensemble de votre infrastructure IT.
Lasupervision des données de supervision est essentielle pour toute entreprise. Ce n'est pas seulement l'infrastructure réseau qui doit être supervisée, mais aussi les applications et services hébergés et l'environnement physique du centre de données lui-même. PRTG Network Monitor supervise l'ensemble de l'écosystème réseau. Il supervise tous les dispositifs d'infrastructure - comme les commutateurs, les routeurs, les serveurs, les pare-feu et les équilibreurs de charge - ainsi que les logiciels système et client - comme les environnements virtuels et les applications web. PRTG Network Monitor suit également les informations fournies par les capteurs du centre de données physique qui supervisent la température, l'humidité, l'accès physique, l'approvisionnement en énergie et les images CCTV. La fonctionnalité de supervision la plus importante est sans doute celle qui concerne la sécurité.
Dans PRTG, vous pouvez créer des appareils virtuels qui représentent des appareils physiques de votre réseau, tels que des serveurs, des dispositifs de stockage, etc. Des capteurs peuvent ensuite être ajoutés à ces appareils. Les capteurs de PRTG sont des éléments de supervision de base qui supervisent des valeurs mesurées, comme la charge du CPU ou l'espace libre sur un disque. Les alertes préviennent les administrateurs en cas de problème ou d'anomalie dans le système, qu'il s'agisse d'un problème critique comme une coupure de courant ou d'un avertissement indiquant que le toner d'une imprimante spécifique est en train de s'épuiser.
PRTG a récemment lancé le capteur Redfish System Health, qui supervise la santé globale du système et l'état des appareils pour un serveur compatible Redfish.
Le capteur Redfish Health supervise les temps d'arrêt, la mémoire du système et les fonctions du processeur. IT supervise en permanence l'état des composants matériels tels que les châssis, les disques, les ventilateurs, les blocs d'alimentation et les périphériques PCIe (Peripheral Component Interconnect Express).