14.2. Fonctionnement des événements "bare-metal


Le relais d'événements Bare Metal permet aux applications fonctionnant sur des clusters bare-metal de répondre rapidement aux changements et aux défaillances du matériel Redfish, tels que les dépassements de seuils de température, les pannes de ventilateur, les pertes de disque, les coupures de courant et les pannes de mémoire. Ces événements matériels sont transmis via un canal de transport fiable à faible latence basé sur le protocole AMQP (Advanced Message Queuing Protocol). Le temps de latence du service de messagerie est compris entre 10 et 20 millisecondes.

Le Bare Metal Event Relay fournit un service de publication et d'abonnement pour les événements matériels, où plusieurs applications peuvent utiliser les API REST pour s'abonner et consommer les événements. Le Bare Metal Event Relay prend en charge le matériel conforme à Redfish OpenAPI v1.8 ou supérieur.

14.2.1. Flux de données du relais d'événements Bare Metal

La figure suivante illustre un exemple de flux de données d'événements bare-metal :

Figure 14.1. Flux de données du relais d'événements Bare Metal

Bare-metal events data flow

14.2.1.1. Nacelle gérée par l'opérateur

L'opérateur utilise des ressources personnalisées pour gérer le pod contenant le Bare Metal Event Relay et ses composants à l'aide du CR HardwareEvent.

14.2.1.2. Relais d'événements Bare Metal

Au démarrage, le Bare Metal Event Relay interroge l'API Redfish et télécharge tous les registres de messages, y compris les registres personnalisés. Le Bare Metal Event Relay commence alors à recevoir les événements souscrits du matériel Redfish.

Le relais d'événements Bare Metal permet aux applications fonctionnant sur des clusters bare-metal de répondre rapidement aux changements et aux défaillances du matériel Redfish, tels que les dépassements de seuils de température, les pannes de ventilateur, les pertes de disque, les coupures de courant et les pannes de mémoire. Les événements sont signalés à l'aide de HardwareEvent CR.

14.2.1.3. Événement "cloud native

Cloud native events (CNE) est une spécification d'API REST pour définir le format des données d'événements.

14.2.1.4. CNCF CloudEvents

CloudEvents est une spécification neutre développée par la Cloud Native Computing Foundation (CNCF) pour définir le format des données d'événements.

14.2.1.5. Routeur de distribution AMQP

Le routeur de distribution est responsable du service de livraison des messages entre l'éditeur et l'abonné. AMQP 1.0 qpid est une norme ouverte qui prend en charge une messagerie fiable, performante et entièrement symétrique sur l'internet.

14.2.1.6. Sidecar de proxy d'événement cloud

L'image du conteneur sidecar du proxy d'événements en nuage est basée sur la spécification de l'API ORAN et fournit un cadre d'événements de publication et d'abonnement pour les événements matériels.

14.2.2. Service d'analyse de messages Redfish

Outre le traitement des événements Redfish, le Bare Metal Event Relay assure l'analyse des messages pour les événements sans propriété Message. Le proxy télécharge tous les registres de messages Redfish, y compris les registres spécifiques aux fournisseurs, à partir du matériel lorsqu'il démarre. Si un événement ne contient pas de propriété Message, le proxy utilise les registres de messages Redfish pour construire les propriétés Message et Resolution et les ajouter à l'événement avant de le transmettre au cadre d'événements en nuage. Ce service permet aux événements Redfish d'avoir une taille de message plus petite et une latence de transmission plus faible.

14.2.3. Installation de Bare Metal Event Relay à l'aide de l'interface de programmation (CLI)

En tant qu'administrateur de cluster, vous pouvez installer Bare Metal Event Relay Operator à l'aide de la CLI.

Conditions préalables

  • Cluster installé sur du matériel bare-metal avec des nœuds dotés d'un contrôleur de gestion de carte de base (BMC) compatible avec RedFish.
  • Installez le CLI OpenShift (oc).
  • Connectez-vous en tant qu'utilisateur disposant des privilèges cluster-admin.

Procédure

  1. Créer un espace de noms pour le relais d'événements Bare Metal.

    1. Enregistrez le YAML suivant dans le fichier bare-metal-events-namespace.yaml:

      apiVersion: v1
      kind: Namespace
      metadata:
        name: openshift-bare-metal-events
        labels:
          name: openshift-bare-metal-events
          openshift.io/cluster-monitoring: "true"
    2. Créer le CR Namespace:

      $ oc create -f bare-metal-events-namespace.yaml
  2. Créez un groupe d'opérateurs pour l'opérateur de relais d'événements Bare Metal.

    1. Enregistrez le YAML suivant dans le fichier bare-metal-events-operatorgroup.yaml:

      apiVersion: operators.coreos.com/v1
      kind: OperatorGroup
      metadata:
        name: bare-metal-event-relay-group
        namespace: openshift-bare-metal-events
      spec:
        targetNamespaces:
        - openshift-bare-metal-events
    2. Créer le CR OperatorGroup:

      $ oc create -f bare-metal-events-operatorgroup.yaml
  3. S'abonner au relais d'événements Bare Metal.

    1. Enregistrez le YAML suivant dans le fichier bare-metal-events-sub.yaml:

      apiVersion: operators.coreos.com/v1alpha1
      kind: Subscription
      metadata:
        name: bare-metal-event-relay-subscription
        namespace: openshift-bare-metal-events
      spec:
        channel: "stable"
        name: bare-metal-event-relay
        source: redhat-operators
        sourceNamespace: openshift-marketplace
    2. Créer le CR Subscription:

      $ oc create -f bare-metal-events-sub.yaml

Vérification

Pour vérifier que Bare Metal Event Relay Operator est installé, exécutez la commande suivante :

$ oc get csv -n openshift-bare-metal-events -o custom-columns=Name:.metadata.name,Phase:.status.phase

Exemple de sortie

Name                                                          Phase
bare-metal-event-relay.4.12.0-xxxxxxxxxxxx            Succeeded

14.2.4. Installation de Bare Metal Event Relay à l'aide de la console web

En tant qu'administrateur de cluster, vous pouvez installer Bare Metal Event Relay Operator à l'aide de la console web.

Conditions préalables

  • Cluster installé sur du matériel bare-metal avec des nœuds dotés d'un contrôleur de gestion de carte de base (BMC) compatible avec RedFish.
  • Connectez-vous en tant qu'utilisateur disposant des privilèges cluster-admin.

Procédure

  1. Installez le Bare Metal Event Relay à l'aide de la console web d'OpenShift Container Platform :

    1. Dans la console Web OpenShift Container Platform, cliquez sur Operators OperatorHub.
    2. Choisissez Bare Metal Event Relay dans la liste des opérateurs disponibles, puis cliquez sur Install.
    3. Sur la page Install Operator, sélectionnez ou créez un Namespace, sélectionnez openshift-bare-metal-events, puis cliquez sur Install.

Vérification

Facultatif : vous pouvez vérifier que l'installation de l'opérateur s'est déroulée correctement en effectuant le contrôle suivant :

  1. Passez à la page Operators Installed Operators.
  2. Assurez-vous que Bare Metal Event Relay est listé dans le projet avec un Status de InstallSucceeded.

    Note

    Pendant l'installation, un opérateur peut afficher un état Failed. Si l'installation réussit par la suite avec un message InstallSucceeded, vous pouvez ignorer le message Failed.

Si l'opérateur n'apparaît pas tel qu'il a été installé, il convient de poursuivre le dépannage :

  • Allez à la page Operators Installed Operators et inspectez les onglets Operator Subscriptions et Install Plans pour voir s'il y a des défaillances ou des erreurs sous Status.
  • Allez sur la page Workloads Pods et vérifiez les journaux pour les pods dans l'espace de noms du projet.
Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.