14.5. Abonnement des applications aux événements bare-metal Référence de l'API REST
Utilisez l'API REST des événements bare-metal pour abonner une application aux événements bare-metal générés sur le nœud parent.
Abonnez-vous aux événements Redfish en utilisant l'adresse de ressource /cluster/node/<node_name>/redfish/event, où <node_name> est le nœud de cluster qui exécute l'application.
Déployez votre conteneur d'application cloud-event-consumer et votre conteneur sidecar cloud-event-proxy dans un pod d'application séparé. L'application cloud-event-consumer s'abonne au conteneur cloud-event-proxy dans le module d'application.
Utilisez les points d'extrémité API suivants pour abonner l'application cloud-event-consumer aux événements Redfish publiés par le conteneur cloud-event-proxy à http://localhost:8089/api/ocloudNotifications/v1/ dans le pod d'application :
/api/ocloudNotifications/v1/subscriptions-
POST: Crée un nouvel abonnement -
GET: Récupère une liste d'abonnements
-
/api/ocloudNotifications/v1/subscriptions/<subscription_id>-
GET: Renvoie les détails de l'identifiant d'abonnement spécifié
-
api/ocloudNotifications/v1/subscriptions/status/<subscription_id>-
PUT: Crée une nouvelle demande de ping d'état pour l'identifiant d'abonnement spécifié
-
/api/ocloudNotifications/v1/health-
GET: Renvoie l'état de santé deocloudNotificationsAPI
-
9089 est le port par défaut du conteneur cloud-event-consumer déployé dans le pod d'application. Vous pouvez configurer un port différent pour votre application si nécessaire.
api/ocloudNotifications/v1/subscriptions
Méthode HTTP
GET api/ocloudNotifications/v1/subscriptions
Description
Renvoie une liste d'abonnements. Si des abonnements existent, un code d'état 200 OK est renvoyé avec la liste des abonnements.
Exemple de réponse API
Méthode HTTP
POST api/ocloudNotifications/v1/subscriptions
Description
Crée un nouvel abonnement. Si un abonnement est créé avec succès, ou s'il existe déjà, un code d'état 201 Created est renvoyé.
| Paramètres | Type |
|---|---|
| abonnement | données |
Exemple de charge utile
{
"uriLocation": "http://localhost:8089/api/ocloudNotifications/v1/subscriptions",
"resource": "/cluster/node/openshift-worker-0.openshift.example.com/redfish/event"
}
{
"uriLocation": "http://localhost:8089/api/ocloudNotifications/v1/subscriptions",
"resource": "/cluster/node/openshift-worker-0.openshift.example.com/redfish/event"
}
api/ocloudNotifications/v1/abonnements/<subscription_id>
Méthode HTTP
GET api/ocloudNotifications/v1/subscriptions/<subscription_id>
Description
Renvoie les détails de l'abonnement avec l'ID <subscription_id>
| Paramètres | Type |
|---|---|
|
| chaîne de caractères |
Exemple de réponse API
api/ocloudNotifications/v1/abonnements/status/<subscription_id>
Méthode HTTP
PUT api/ocloudNotifications/v1/subscriptions/status/<subscription_id>
Description
Crée une nouvelle demande de ping d'état pour l'abonnement avec l'ID <subscription_id>. Si un abonnement est présent, la demande d'état est réussie et le code d'état 202 Accepted est renvoyé.
| Paramètres | Type |
|---|---|
|
| chaîne de caractères |
Exemple de réponse API
{"status":"ping sent"}
{"status":"ping sent"}
api/ocloudNotifications/v1/santé/
Méthode HTTP
GET api/ocloudNotifications/v1/health/
Description
Renvoie l'état de santé de l'API REST ocloudNotifications.
Exemple de réponse API
OK
OK