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é deocloudNotifications
API
-
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