Skip to main content

Flux d'événements

! !! Info "Avis"

Les fonctionnalités d'observabilité d'Equinix Metal sont actuellement en version bêta et ne sont pas disponibles pour tous les clients. Elles sont destinées à être évaluées et testées uniquement. Cette fonctionnalité n'est actuellement pas facturée et n'est pas couverte par un accord de niveau de service.

Vous pouvez surveiller des événements spécifiques et des données d'activité de vos organisations Metal en temps quasi réel à l'aide de flux d'événements. Les flux d'événements peuvent fournir des données d'événements critiques pour vous aider à comprendre et à analyser les besoins de votre entreprise. Ces événements sont les suivants

  • Événements relatifs aux comptes et aux organisations
  • Services et événements de facturation
  • Événements relatifs à la gestion des appareils
  • Événements de gestion de réseau

Les flux d'événements ne sont visibles que par les propriétaires et les administrateurs d'une organisation.

Limites

Actuellement, les flux d'événements ne prennent en charge que Splunk comme destination. Les données du flux d'observabilité sont envoyées à Splunk via l'interface [Splunk HTTP Event Collector ("HEC"). Pour recevoir les données Observability Stream, vous devez d'abord configurer un collecteur d'événements HTTP dans votre instance Splunk. Nous vous recommandons de créer un collecteur dédié spécifiquement à la réception des données Observability Stream.

L'envoi de données Observability Stream à Splunk est soumis aux limitations suivantes :

  • Pour garantir le cryptage des données en transit, seules les connexions HTTPS sont autorisées. L'envoi de données à un Splunk HEC à l'aide d'un simple HTTP non sécurisé n'est PAS pris en charge.
  • Toutes les données du flux d'observabilité sont envoyées à Splunk sous forme d'événements JSON ; les données brutes ne sont PAS prises en charge.
  • Les événements JSON seront envoyés au point de terminaison standard /services/collector/event ; les autres URL de point de terminaison ne sont PAS prises en charge.
  • Les événements JSON seront envoyés à l'index par défaut qui a été configuré lors de la création du collecteur d'événements HTTP Splunk. La modification de l'index des événements envoyés à Splunk n'est PAS prise en charge.
  • L'accusé de réception de l'indexeur n'est PAS pris en charge.

L'API d'observabilité

Si vous utilisez l'API Observability, vous devez noter quelques différences entre celle-ci et l'API Metal actuelle d'Equinix.

  • nouveaux points d'accès à l'API
  • nouveau mécanisme d'authentification

Tout d'abord, Observability dispose de ses propres points d'extrémité API, accessibles à l'adresse https://observability.equinixmetal.net.

Deuxièmement, l'API Observability dispose d'un mécanisme d'authentification dans lequel vous échangez votre clé API Equinix Metal contre un jeton web JSON de courte durée (JWT) que vous utilisez à des fins d'authentification pour toutes les demandes d'observabilité. Le jeton expire au bout de 5 minutes. Pour récupérer un JWT, envoyez une requête POST au point de terminaison iam.metalctrl.io/api-keys/exchange.

curl -X POST \
-H "Authorization: bearer <API_TOKEN>" \
https://iam.metalctrl.io/api-keys/exchange

La réponse sera un JSON "access_token" que vous utiliserez pour authentifier vos demandes à l'API Observability.

{
"access_token": "eyJ....98"
}

L'API Observability n'accepte pas les clés API d'Equinix Metal pour l'authentification.

Création d'un flux d'événements

Créez un flux d'événements pour exporter les données du serveur vers Splunk à des fins de stockage et d'analyse. Pour créer un flux, procédez comme suit :

  1. Allez sur [Equinix Metal Portal et entrez vos identifiants pour vous connecter au portail.

  2. Dans le menu déroulant Organisation's, sélectionnez l'organisation pour laquelle vous souhaitez créer un flux d'événements.

  3. Cliquez sur l'onglet Observabilité.

    Event Streams page from the Observability tab

  4. Cliquez sur Create Event Stream (Créer un flux d'événements).

  5. Dans la fenêtre modale Create Event Stream, saisissez un nom convivial dans le champ Name.

  6. En option. Saisissez une description du flux d'événements dans le champ de description.

  7. Saisissez votre nom d'hôte Splunk et votre clé API dans les champs prévus à cet effet pour envoyer des données à Splunk.

    Le nom d'hôte de la connexion doit provenir de l'URI du [HTTP Event Collector] (https://docs.splunk.com/Documentation/Splunk/latest/Data/UsetheHTTPEventCollector#Send_data_to_HTTP_Event_Collector). Le nom d'hôte doit être spécifié sous forme de chaîne avec un suffixe facultatif de numéro de port ; les valeurs valides sont http-inputs-my-org.splunkcloud.com ou splunk.example.com:8443.

    La clé API doit être le jeton HTTP Event Collector qui a été généré lors de la création du point de terminaison Splunk HEC. Elle sera stockée dans un format crypté qui ne pourra être décrypté que par le travailleur qui envoie les données du flux d'observabilité.

Vérification de la connexion au flux

Avant de transmettre une connexion de données à Splunk, vous devez la tester pour vous assurer de sa validité. Pour tester la connexion de flux, procédez comme suit :

  1. Dans la fenêtre modale Create Event Stream, entrez votre nom d'hôte Splunk et votre clé API dans les champs prévus à cet effet, si vous ne l'avez pas déjà fait.

  2. Cliquez sur Test Stream Connection.

    La connexion est valide si le message Test Passed s'affiche à l'écran. Un message d'erreur s'affiche si le test de connexion n'est PAS réussi. Vous devez recevoir un message Test Passed pour vous assurer que la connexion de test est valide pour transmettre des données à Splunk.

    Testing an event stream in the console

  3. Cliquez sur Save pour enregistrer le flux d'événements. Le flux d'événements est enregistré dans le tableau Flux d'événements de la page Observabilité.

Gestion d'un flux d'événements

Une fois le flux d'événements créé dans la console Metal, vous pouvez le gérer depuis l'onglet Observabilité de votre organisation.

Event Streams Table

Suppression d'un flux d'événements

Pour arrêter le flux de données vers votre instance Splunk, vous pouvez supprimer le flux d'événements. Pour supprimer un flux d'événements, procédez comme suit :

  1. Dans le tableau Flux d'événements, cliquez sur l'icône de la corbeille de la colonne Delete. La fenêtre Supprimer le flux d'événements s'affiche.

  2. Saisissez Delete dans le champ et cliquez sur Delete.

Lorsqu'un flux est supprimé, il cesse immédiatement d'accepter de nouvelles données en provenance de sources, mais continue à fournir des données en cours de traitement. Une fois que toutes les données en vol ont été livrées, le flux est supprimé et toutes les ressources sont libérées.

Métadonnées d'événements Splunk

Le service d'observabilité définit les clés [Splunk Event metadata suivantes pour chaque événement de journal d'audit qu'il envoie à votre flux :

  • time - The timestamp at which the event occurred, specified in seconds since the Unix epoch.
  • source - All events will specify a source of equinix.
  • sourcetype- Audit log events will specify a source type of log.
  • fields - Additional fields for indexing as described below.

Champs d'index

En plus des clés de métadonnées Splunk standard décrites ci-dessus, le service Observability définit les champs d'index personnalisés suivants pour chaque événement de journal qu'il envoie à votre flux. Ces champs sont facultatifs et seront omis s'ils sont absents.

  • level - A human-readable indication of the logging level, such as INFO or DEBUG.
  • severity - A numeric severity level; higher numbers indicate more severe events (such as errors or violations).

Données d'événement Splunk

Le contenu de la clé event envoyée au Splunk HTTP Event Collector en tant que "Event data" est un document JSON structuré avec des informations spécifiques à l'application sur les événements enregistrés.

Pour une référence complète, reportez-vous à la Documentation Splunk Event Schema.

{
"stream" : {
"streamId" : "dce13c1d-0589-406b-af40-854156a0621e",
"streamName" : "Example Stream"
},
"source" : {
"category" : "audit",
"type" : "api_request",
"service" : "metal",
"organizationId" : "99be473c-ee3c-4aeb-a678-eba3fdae7ca6",
"projectId" : "99be473c-ee3c-4aeb-a678-eba3fdaebeef"

},
"schema" : "v1",
"timestamp" : "2024-04-16T14:58:21.442334Z",
"level" : "INFO",
"eventId" : "6910f03f-ec60-42fc-9e9d-c5f6af2f732d",
"event" : {
"eventName" : "instance_provision_requested",
"status" : "failed",
"auth" : {
"authType" : "user",
"user" : {
"userId" : "582865f9-904b-4061-b536-2420eb01ecdc",
"userName" : "jdoe@equinix.com"
},
"role" : {
"roleName" : "collaborator"
}
},
"httpRequest" : {
"host" : "api.equinix.com",
"method" : "PUT",
"path" : "/metal/v1/projects/99f8e7f1-fe4a-441a-ade9-687743f080f6",
"scheme" : "http",
"statusCode" : 200,
"userAgent" : "metal-cli/metal equinix-sdk-go/0.30.0",
"sourceIpAddress" : "111.111.111.11"
}
}
}
Cette page vous a-t-elle été utile ?