Guide de configuration rapide pour Event Streams pour IBM Cloud

Ce tutoriel vous guide tout au long des étapes permettant de commencer rapidement à utiliser Event Streams en mettant à disposition une instance, en créant une rubrique et des données d'identification, puis en produisant et en consommant des données. En outre, vous apprendrez à connecter IBM Cloud® Monitoring et IBM Cloud® Activity Tracker, et éventuellement à utiliser Kafka Connect ou ksqlDB. Enfin, vous découvrirez également comment obtenir de l'aide avec Event Streams.

Sélectionnez votre interface à l'aide des onglets au début de la page.

Suivez ces étapes pour terminer le didacticiel :

Suivez ces étapes pour terminer le didacticiel :

Suivez ces étapes pour terminer le didacticiel :

Avant de commencer

Avant de commencer, nous vous recommandons vivement de lire les informations suivantes pour mieux comprendre Apache Kafka, sur lequel repose Event Streams:

Etape 1: Choisissez votre plan

Event Streams offre trois plans différents. Pour vous aider à déterminer celui qui correspond le mieux à vos besoins, voir Choix de votre plan.

  • Le plan Lite permet d'accéder gratuitement à une partition unique dans un cluster Event Streams à service partagé. Utilisez le plan Lite pour tester Event Streams ou générez une preuve de concept.

  • Le plan Standard offre un accès partagé par répartition au service Event Streams à service partagé. Ce service effectue une mise à l'échelle automatique transparente au fur et à mesure que vous augmentez le nombre de partitions que vous utilisez pour votre charge de travail. Le plan Standard a une limite de 100 partitions par instance.

  • Le plan Enterprise offre un accès par répartition à un service Event Streams à service exclusif isolé. En plus d'une sélection d'options de débit et de stockage, ce plan offre également des noeuds finaux privés de chiffrement gérés par l'utilisateur, la prise en charge du registre de schéma et répond à un plus grand nombre de normes de conformité aux réglementations. Le plan Entreprise est le meilleur choix si l'isolation des données, la garantie de performance et l'augmentation de la rétention sont des considérations importantes.

Utilisation des API

Vous pouvez utiliser plusieurs API pour utiliser Event Streams. Ce tutoriel utilise les API suivantes :

Etape 2: Mise à disposition d'une instance Event Streams à l'aide de la console

  1. Connectez-vous à la console Web IBM Cloud.

  2. Cliquez sur le service Event Streams dans le catalogue.

  3. Sélectionnez le plan Lite, le plan Standard ou le plan Enterprise dans la section Sélectionner un plan de tarification.

  4. Entrez un nom pour votre service. Vous pouvez utiliser la valeur par défaut.

  5. Cliquez sur Créer. La page Liste de ressources Event Streams s'ouvre.

  6. Lorsque votre instance a été créée, cliquez sur le nom de l'instance pour afficher plus d'informations.

  7. Optionnel. Vous pouvez effectuer les étapes du tutoriel d'initiation pour exécuter un exemple d'application de démarrage.

Etape 2: Mise à disposition d'une instance Event Streams à l'aide de l'interface de ligne de commande

Si c'est la première fois que vous utilisez l'interface de ligne de commande, voir Initiation à l'interface de ligne de commande.

Pour provisionner une instance d' Event Streams Standard Plan avec l' IBM Cloud CLI, procédez comme suit :

  1. Installez l'interface de ligne de commande IBM Cloud en suivant les étapes de la rubrique Initiation à l'interface de ligne de commande IBM Cloud.

  2. Connectez-vous à IBM Cloud en exécutant la commande suivante :

    ibmcloud login -a cloud.ibm.com
    
  3. Créez une instance Event Streams sur IBM Cloud en utilisant les plans Lite, Standard ou Enterprise.

    Sélectionnez l'une des méthodes suivantes :

    • Pour créer une instance à partir de l'interface de ligne de commande sur le plan Enterprise, exécutez la commande suivante :

      ibmcloud resource service-instance-create <INSTANCE_NAME> messagehub enterprise-3nodes-2tb <REGION>
      

      Le plan Enterprise ayant ses propres ressources dédiées pour chaque cluster, il nécessite plus de temps pour le provisionnement, de sorte qu'une nouvelle instance Enterprise peut prendre jusqu'à 3 heures.

    • Pour créer une instance à partir de l'interface de ligne de commande sur le plan Standard, exécutez la commande suivante :

      ibmcloud resource service-instance-create <INSTANCE_NAME> messagehub standard <REGION>
      

      Le provisionnement d'une nouvelle instance du plan Standard est instantané car les ressources sous-jacentes sont déjà configurées.

Etape 2: Mise à disposition d'une instance Event Streams à l'aide de l'API du contrôleur de ressources

La méthode recommandée pour mettre à disposition une instance consiste à utiliser l'interface de ligne de commande.

Vous pouvez également utiliser l'API de contrôleur de ressources. Tout d'abord, extrayez un jeton d'accès, puis exécutez une commande d'API de contrôleur de ressources avec le jeton d'accès pour créer l'instance.

Etape 2a: Extraction d'un jeton d'accès à l'aide de l'API du contrôleur de ressources

Vous pouvez récupérer votre jeton d'accès par programmation en créant d'abord une clé API d'identification de service pour votre application, puis en échangeant votre clé API contre un jeton IAM IBM Cloud.

  1. Connectez-vous à IBM Cloud avec Interface de ligne de commandeIBM Cloud.

    ibmcloud login
    

    Si la connexion échoue, exécutez la commande ibmcloud login --sso pour réessayer. :NONE. --sso est requis lorsque vous vous connectez avec un identifiant fédéré. Si cette option est utilisée, allez sur le lien répertorié dans la sortie d'interface de ligne de commande pour générer un code d'accès unique.

  2. Sélectionnez le compte, la région et le groupe de ressources contenant votre instance Event Streams mise à disposition.

  3. Créer un ID de service pour votre application.

    ibmcloud iam service-id-create SERVICE_ID_NAME
                [-d, --description DESCRIPTION]
    
  4. Pour plus d'informations sur l'ID de service, voir Gestion de l'accès aux ressources.

    Vous pouvez attribuer des autorisations d'accès pour votre identifiant de service en utilisant la console d' IBM Cloud. Pour savoir comment les rôles d'accès Gestionnaire, Rédacteur et Lecteur sont mappés à des actions de service Key Protect spécifiques, consultez Rôles et autorisations.

    Vous pouvez attribuer des autorisations d'accès pour votre identifiant de service en utilisant la console d' IBM Cloud. Pour savoir comment les rôles d'accès Manager, _Writer_et Reader sont mappés à l'accès utilisateur à Ressources Event Streams, voir Que puis-je sécuriser?

  5. Créer un clé d'API d'ID de service.

    ibmcloud iam service-api-key-create API_KEY_NAME SERVICE_ID_NAME
                [-d, --description DESCRIPTION]
                [--file FILE_NAME]
    

    Remplacez <service_ID_name> par l'alias unique que vous avez affecté à votre ID de service à l'étape précédente. Sauvegardez la clé d'API en la téléchargeant dans un emplacement sécurisé.

  6. Appelez l' API des services d'identité IAM pour récupérer votre jeton d'accès.

    $ curl -X POST \
        "https://iam.cloud.ibm.com/identity/token" \
        -H "content-type: application/x-www-form-urlencoded" \
        -H "accept: application/json" \
        -d 'grant_type=urn%3Aibm%3Aparams%3Aoauth%3Agrant-type%3Aapikey&apikey=<API_KEY>' > token.json
    

    Dans la demande, remplacez <API_KEY> par la clé d'API que vous avez créée à l'étape précédente. L'exemple tronqué suivant montre le contenu de la Fichier token.json :

    {
        "access_token": "b3VyIGZhdGhlc...",
        "expiration": 1512161390,
        "expires_in": 3600,
        "refresh_token": "dGhpcyBjb250a...",
        "token_type": "Bearer"
    }
    

    Utilisez la valeur access_token complète, préfixée par le type de jeton Bearer, pour gérer par programme les clés de votre service à l'aide de l'API Key Protect. Pour afficher un exemple de demande d'API Key Protect, voir Formuler votre demande d'API.

    Les jetons d'accès sont valides pendant 1 heure, mais vous pouvez les régénérer si besoin. Pour maintenir l'accès au service, régénérez régulièrement le jeton d'accès de votre clé API en appelant l' API des services d'identité IAM.

    • Utilisez des jetons IBM Cloud Identity and Access Management (IAM) pour envoyer des demandes authentifiées aux services IBM Watson sans intégrer les données d'identification de service dans chaque appel.

    • L'authentification IAM utilise des jetons d'accès pour l'authentification, que vous achetez en envoyant une demande avec une clé d'API.

Étape 2b: Créer une instance

Exécutez une commande similaire à la suivante pour créer une instance Enterprise dans la région Sud des Etats-Unis:

curl -X POST https://resource-controller.cloud.ibm.com/v2/resource_instances -H "Authorization: ${token}" -H "Content-Type: application/json" \
-d '{ "name": "JG-test-curl", "target": "us-south", "resource_group":"9eba3cff1b0540b9ab7fb93829911da0", "resource_plan_id": "ibm.message.hub.enterprise.3nodes.2tb", "parameters":{"service-endpoints":"public","throughput":"150"}}'

Etape 3: Création d'une rubrique et sélection du nombre de partitions à l'aide de la console

Pour obtenir des conseils sur les paramètres que vous pouvez modifier lors de la création de rubriques, voir Configuration de rubrique.

  1. A partir de votre instance nouvellement mise à disposition, accédez à Rubriques à l'aide du menu de gauche.

  2. Cliquez sur le bouton Créer une rubrique et entrez un nom de rubrique. Cliquez sur Suivant. Les noms de rubrique sont limités à un maximum de 200 caractères.

  3. Sélectionnez le nombre de partitions.

    Une rubrique est constituée d'une ou de plusieurs partitions. Une partition est une liste ordonnée de messages. 1 partition suffit pour démarrer, mais les systèmes de production en ont souvent plus.

    Les partitions sont réparties entre les brokers pour augmenter l'évolutivité de votre sujet. Vous pouvez également les utiliser pour distribuer des messages aux membres d'un groupe d'usagers.

    Cliquez sur Suivant.

  4. Définir la période de conservation des messages. Durée de conservation des messages avant qu'ils ne soient supprimés. Si vos messages ne sont pas lus par un utilisateur pendant cette période, ils ne seront pas pris en compte. La période de conservation par défaut des messages est de 24 heures. La durée minimale est d'une heure et la durée maximale de 30 jours. Spécifiez cette valeur comme un nombre d'heures.

    Cliquez sur Créer un sujet.

Utilisation des rubriques à l'aide de la console

Après avoir créé des rubriques, vous pouvez utiliser la console pour répertorier les rubriques.

Liste des rubriques

A partir de votre instance Event Streams, accédez à Rubriques à partir du menu de gauche.

A partir de la page Rubriques, vous pouvez afficher les informations suivantes sur vos rubriques: Nom, Partitions, Durée de conservation, Taille de conservation, Stratégie de nettoyage et Atterrissage du flux.

Etape 3: Création d'une rubrique et sélection du nombre de partitions à l'aide de l'interface de ligne de commande

Pour obtenir des conseils sur les paramètres que vous pouvez modifier lors de la création de rubriques, voir Configuration de rubrique.

Utilisez la commande ibmcloud es topic-create suivante pour créer une nouvelle rubrique avec le nombre de partitions que vous avez choisi:

ibmcloud es topic-create [--name] TOPIC_NAME [--partitions PARTITIONS] [--config KEY=VALUE[;KEY=VALUE]* ]*

Prérequis : Aucun

Options de commande :

valeur --name, valeur -n

Nom de la rubrique. Les noms de rubrique sont limités à un maximum de 200 caractères.

valeur --partitions, valeur -p

Définit le nombre de partitions pour la rubrique.

Une rubrique est constituée d'une ou de plusieurs partitions. Une partition est une liste ordonnée de messages. 1 partition suffit pour démarrer, mais les systèmes de production en ont souvent plus.

Les partitions sont réparties entre les brokers pour augmenter l'évolutivité de votre sujet. Vous pouvez également les utiliser pour distribuer des messages aux membres d'un groupe d'usagers.

--config KEY=VALUE, -c KEY=VALUE (facultatif)

Définit une option de configuration pour la rubrique en tant que paire KEY=VALUE.

Vous pouvez spécifier plusieurs options --config. Chaque option --config peut spécifier une liste d'affectations délimitées par des points-virgules. La liste suivante indique les clés de configuration valides :

  • cleanup.policy
  • retention.ms
  • retention.bytes
  • segment.bytes
  • segment.ms
  • segment.index.bytes

La durée de conservation par défaut des messages spécifiée par la clé retention.ms est de 24 heures. La durée minimale est d'une heure et la durée maximale de 30 jours. Spécifiez cette valeur comme un nombre d'heures.

Utilisation des rubriques

Après avoir créé des rubriques, vous pouvez utiliser l'interface de ligne de commande pour répertorier les rubriques et afficher des détails sur votre cluster.

Répertoriez une rubrique à l'aide de la commande ibmcloud es topics

Exécutez la commande ibmcloud es topics pour répertorier vos rubriques.

ibmcloud es topics [--filter FILTER] [--json]

Prérequis : Aucun

Options de commande :

valeur --filter, valeur -f (facultatif)
Nom de la rubrique.
--json (facultatif)
Formater la sortie en JSON Un maximum de 1000 rubriques est renvoyé.

Affichage des détails du cluster à l'aide de la commande ibmcloud es cluster

Exécutez la commande ibmcloud es cluster pour afficher les détails du cluster, y compris la version Kafka.

ibmcloud es cluster [--json]

Prérequis : Aucun

Options de commande :

--json (facultatif)
Format de sortie en JSON.

Pour plus d'informations sur les autres commandes de l'interface de ligne de commande Event Streams pour les rubriques, voir Référence de l'interface de ligne de commande.

Etape 3: Création d'une rubrique et sélection du nombre de partitions à l'aide de l'API REST d'administration

Event Streams fournit une API REST pour l'administration que vous pouvez utiliser pour créer et répertorier des rubriques.

Vous pouvez créer une rubrique Kafka en émettant une demande POST dans le chemin /admin/topics. Le corps de la demande doit contenir un document JSON. Exemple :

{
    "name": "topicname",
    "partitions": 1,
    "configs": {
        "retentionMs": 86400000,
        "cleanupPolicy": "delete"
    }
}

Le document JSON doit contenir un attribut name, spécifiant le nom de la rubrique Kafka à créer. Les noms de rubrique sont limités à un maximum de 200 characters.The peut également spécifier le nombre de partitions à affecter à la rubrique (à l'aide de la propriété partitions ). Si le nombre de partitions n'est pas spécifié, la rubrique est créée avec une seule partition.

Une rubrique est constituée d'une ou de plusieurs partitions. Une partition est une liste ordonnée de messages. 1 partition suffit pour démarrer, mais les systèmes de production en ont souvent plus.

Les partitions sont réparties entre les brokers pour augmenter l'évolutivité de votre sujet. Vous pouvez également les utiliser pour distribuer des messages aux membres d'un groupe d'usagers.

Vous pouvez également spécifier un objet configs facultatif dans la demande. Vous pouvez ainsi spécifier la propriété retentionMs, qui contrôle la durée (en millisecondes) pendant laquelle Kafka conserve les messages publiés dans la rubrique. Une fois ce délai écoulé, les messages sont automatiquement supprimés pour libérer de l'espace. Vous devez spécifier la valeur de la propriété retentionMs dans un nombre entier d'heures (par exemple, des multiples de 3600000). La période de conservation par défaut des messages est de 24 heures. La durée minimale est d'une heure et la durée maximale de 30 jours.

Pour obtenir des conseils sur les paramètres que vous pouvez modifier lors de la création de rubriques, voir Configuration de rubrique.

Les codes d'état d' HTTP s attendus sont les suivants :

  • 202: La demande de création de rubrique a été acceptée.
  • 400: JSON de demande non valide.
  • 403: Non autorisé à créer une rubrique.
  • 422: Demande non valide sur le plan sémantique.

Si la demande de création d'un sujet d' Kafka s aboutit, le code d'état 202 (Accepté) d' HTTP est renvoyé. Si l'opération échoue, un code d'état d' HTTP s de 422 (Unprocessable Entity) est renvoyé, et un objet JSON contenant des informations supplémentaires sur l'échec est renvoyé en tant que corps de la réponse.

Exemple

Vous pouvez utiliser le noeud final REST pour créer une rubrique Kafka à l'aide du fragment de code curl suivant. Vous devrez fournir votre propre clé d'API ou jeton et spécifier le noeud final correct pour l'API ADMIN. Pour plus d'informations sur l'obtention d'une clé ou d'un jeton, voir Extraction d'un jeton d'accès à l'aide de l'API.

curl -i -X POST -H 'Accept: application/json' -H 'Content-Type: application/json' -H 'Authorization: Bearer ${TOKEN}' --data '{ "name": "newtopic", "partitions": 1}' ${ADMIN_URL}/admin/topics

Utilisation des rubriques à l'aide de l'API REST d'administration

Après avoir créé des rubriques, vous pouvez utiliser l'API REST d'administration pour répertorier les rubriques. Pour plus d'informations sur les autres commandes relatives aux rubriques que vous pouvez exécuter, voir Méthodes d'API REST d'administration.

Liste des rubriques

Vous pouvez répertorier toutes vos rubriques Kafka en envoyant une demande GET à la Chemin /admin/topics.

Le code de statut attendu est :

  • 200: La liste de rubriques est renvoyée en tant que JSON au format suivant:
[
  {
    "name": "topic1",
    "partitions": 1,
    "retentionMs": 86400000,
    "cleanupPolicy": "delete"
  },
  { "name": "topic2",
    "partitions": 2,
    "retentionMs": 86400000,
    "cleanupPolicy": "delete"
  }
]

Une réponse réussie aura le statut d' HTTP, le code 200 (OK) et contiendra un tableau d'objets JSON, où chaque objet représente un sujet d' Kafka et possède les propriétés suivantes :

propriétés du sujetEvent Streams
Nom de propriété Description
nom Nom du sujet d' Kafka.
partitions Nombre de partitions affectées à la rubrique Kafka.
retentionsMs Durée de conservation des messages sur la rubrique (en ms).
cleanupPolicy Règle de nettoyage de la rubrique Kafka.
Exemple de liste de rubriques

Vous pouvez utiliser la commande curl suivante pour répertorier toutes vos rubriques Kafka:

curl -i -X GET -H 'Accept: application/json' -H 'Authorization: Bearer ${TOKEN}' ${ADMIN_URL}/admin/topics

Etape 4: Créer des données d'identification de service à l'aide de la console

Pour vous permettre de vous connecter à votre instance Event Streams, créez une clé de service à l'aide de la console IBM Cloud:

  1. Localisez votre service Event Streams dans la Liste de ressources.
  2. Cliquez sur la vignette de votre service.
  3. Cliquez sur Données d'identification pour le service.
  4. Cliquez sur Nouvelles données d'identification.
  5. Entrez les détails de votre nouvelle donnée d'identification, par exemple un nom et un rôle, puis cliquez sur Ajouter. Une nouvelle donnée d'identification s'affiche dans la liste des données d'identification.
  6. Développez la section des nouvelles données d'identification pour afficher les détails au format JSON.

Etape 4: Créer des données d'identification de service à l'aide de l'interface de ligne de commande

Créez une clé de service à l'aide de l'interface de ligne de commande IBM Cloud afin de pouvoir vous connecter à votre instance Event Streams:

  1. Recherchez votre service comme suit :

    ibmcloud resource service-instances
    
  2. Créez une instance de service :

    ibmcloud resource service-key-create <key_name> <key_role> --instance-name <your_service_name>
    
  3. Imprimez la clé de service :

    ibmcloud resource service-key <key_name>
    

    Un ensemble unique de détails de noeud final est contenu dans chaque clé de service. Pour les instances de service configurées pour être connectées à un seul type de réseau, le réseau public IBM Cloud (valeur par défaut) ou le réseau privé IBM Cloud, la clé de service contient les détails relatifs à ce type de réseau. Pour les instances configurées pour prendre en charge les réseaux privés et publics, les détails du réseau public sont renvoyés. Si vous souhaitez des détails sur le réseau privé, vous devez ajouter le paramètre --service-endpoint private à la commande d'interface de ligne de commande service-key-create précédente. Exemple :

    ibmcloud resource service-key-create <private-key-name> <role> --instance-name <instance-name> --service-endpoint private
    

Etape 4: Créez des données d'identification de service à l'aide de l'interface de ligne de commande et de l'API du fournisseur REST

Pour vous connecter à votre instance Event Streams, le mécanisme d'authentification pris en charge utilise un jeton bearer. Pour obtenir votre jeton en utilisant l'interface de ligne de commande ( IBM Cloud ) CLI, connectez-vous d'abord à IBM Cloud puis exécutez la commande suivante :

ibmcloud iam oauth-tokens

Placez ce jeton dans l'en-tête d'autorisation de la requête HTTP au format Bearer<token>. La clé d'API et les jetons JWT sont pris en charge.

Etape 5: Produire des données à l'aide de la console

Vous ne pouvez pas générer de données à l'aide de la console. Vous pouvez produire des données à l'aide de la ligne de commande, de l' API REST Producer ou de l'APIKafka.

Toutefois, vous pouvez effectuer les étapes de la console dans le tutoriel d'initiation pour exécuter un exemple d'application de démarrage et voir les messages transitant par une rubrique.

Etape 5: Produire des données à l'aide de la ligne de commande

Vous pouvez utiliser l'outil de producteur de console Event Streams Kafka pour produire des données. Les outils de la console se trouvent dans le répertoire bin de votre téléchargement de client Kafka, que vous pouvez télécharger à partir des téléchargementsApache Kafka. Nous vous recommandons de télécharger la dernière version binaire stable disponible. Les versions du client Kafka sont compatibles en amont avec la version de Kafka sur le serveur.

Vous devez fournir une liste de courtiers (à l'aide de la propriété BOOTSTRAP_ENDPOINTS) et des données d'identification SASL.

Pour fournir les informations d'identification SASL à cet outil, créez un fichier de propriétés basé sur l'exemple suivant :

    sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="<user>" password="<api_key>";
    security.protocol=SASL_SSL
    sasl.mechanism=PLAIN
    ssl.protocol=TLSv1.2
    ssl.enabled.protocols=TLSv1.2
    ssl.endpoint.identification.algorithm=HTTPS

Utilisez la zone <user> de la clé de service comme nom d'utilisateur et la zone <api_key> de la clé de service comme mot de passe. Vous pouvez trouver ces valeurs dans l'onglet Event Streams Données d'identification du service de la console IBM Cloud.

Event Streams fournit des exemples de fichiers producer.properties et consumer.properties pour le client Java.

Après avoir créé le fichier de propriétés, vous pouvez exécuter le producteur de console dans un terminal comme suit :

   kafka-console-producer.sh --broker-list BOOTSTRAP_ENDPOINTS --producer.config CONFIG_FILE --topic TOPIC_NAME

Remplacez les variables de l'exemple par vos propres valeurs :

  • BOOTSTRAP_ENDPOINTS avec la valeur de votre onglet Event Streams Données d'identification de service dans la console IBM Cloud.
  • CONFIG_FILE par le chemin d'accès au fichier de configuration.
  • Utilisez la zone <bootstrap_endpoints> de la clé de service comme propriété bootstrap.servers de votre application Kafka.
  • Utilisez la zone <user> de la clé de service comme nom d'utilisateur et la zone <api_key> de la clé de service comme mot de passe. Vérifiez que votre application analyse les détails.

Vous pouvez utiliser de nombreuses autres options de cet outil, à l'exception de celles qui nécessitent un accès à ZooKeeper. Pour plus d'informations, voir Utilisation des outils de la console Kafka avec Event Streams.

Paramètres de configuration du producteur

Pour plus de détails sur certains des paramètres les plus importants que vous pouvez configurer pour le fournisseur, voir les informations suivantes:

Etape 5: Génération de données à l'aide de l'API REST Producer

Utilisez le point de terminaison v2 de l'API REST Producer pour envoyer des messages de type text, binary, JSON ou avro à des sujets. Avec le point de terminaison d' v2, vous pouvez utiliser le registre de schémas d' Event Streams, en spécifiant le schéma pour le type de données avro.

  • Que sont les en-têtes? Sont-elles facultatives? Des en-têtes apparaissent dans le corps du message. C'est le bloc de données qui inclut tout dans la demande ou la réponse. Les en-têtes sont généralement fournis après la ligne de demande ou la ligne de réponse. La valeur de la couleur est base64-comment faire?

Le code suivant montre un exemple d'envoi d'un message de type text en utilisant curl :

curl -v -X POST \
-H "Authorization: Bearer $token" -H "Content-Type: application/json" -H "Accept: application/json" \
-d '{
  "headers": [
    {
      "name": "colour",
      "value": "YmxhY2s="
    }
  ],
  "key": {
    "type": "text",
    "data": "Test Key"
  },
  "value": {
    "type": "text",
    "data": "Test Value"
  }
}' \
"$kafka_http_url/v2/topics/$topic_name/records"

Pour plus d'informations, voir Event Streams REST Producer v2 endpoint API reference.

Paramètres de configuration du producteur

Pour plus de détails sur certains des paramètres les plus importants que vous pouvez configurer pour le fournisseur, voir les informations suivantes:

Etape 6: Consommer les données à l'aide de la console

Vous ne pouvez pas consommer de données à l'aide de la console. Vous pouvez consommer des données à l'aide de la ligne de commande ou de l'APIKafka.

Toutefois, vous pouvez effectuer les étapes du tutoriel d'initiation pour exécuter un exemple d'application de démarrage et voir les messages transitant par une rubrique.

Etape 6: Consommer les données à l'aide de la ligne de commande

Vous pouvez utiliser l'outil de consommateur de console Event Streams Kafka pour consommer des données.

Les outils de la console se trouvent dans le répertoire bin de votre téléchargement de client Kafka.

Vous devez fournir une liste des données d'identification SASL et des courtiers. Après avoir créé le fichier de propriétés comme décrit dans , générez des données à l'aide de la ligne de commande, exécutez le consommateur de console dans un terminal comme suit:

   kafka-console-consumer.sh --bootstrap-server BOOTSTRAP_ENDPOINTS --consumer.config CONFIG_FILE --topic TOPIC_NAME

Remplacez les variables de l'exemple par vos propres valeurs :

  • BOOTSTRAP_ENDPOINTS avec la valeur de votre onglet Event Streams Données d'identification de service dans la console IBM Cloud.
  • CONFIG_FILE par le chemin d'accès au fichier de configuration.

Vous pouvez utiliser de nombreuses autres options de cet outil, à l'exception de celles qui nécessitent un accès à ZooKeeper. Pour plus d'informations, voir Utilisation des outils de la console Kafka avec Event Streams.

Paramètres de configuration du consommateur

Pour plus de détails sur certains des paramètres les plus importants que vous pouvez configurer pour le consommateur, voir les informations suivantes:

Etape 6: Consommer les données à l'aide d'une API

Vous ne pouvez pas consommer de données à l'aide d'une API Event Streams bien que la consommation de données provenant de Kafka soit possible à l'aide des bibliothèques Kafka natives. Pour plus d'informations, voir API de consommateurKafka.

Vous pouvez également utiliser la ligne de commande.

Etape 7: Connexion de IBM Cloud Monitoring à la visibilité opérationnelle à l'aide de la console

Vous pouvez utiliser IBM Cloud Monitoring pour obtenir une visibilité opérationnelle sur les performances et la santé de vos applications, services et plateformes. IBM Cloud Monitoring fournit aux administrateurs, aux équipes DevOps et aux développeurs une télémétrie de pile complète avec des fonctions avancées pour surveiller et traiter les incidents, définir des alertes et concevoir des tableaux de bord personnalisés.

Pour plus d'informations sur l'utilisation d' Monitoring avec Event Streams, consultez :

Etape 7: Connexion de IBM Cloud Monitoring pour une visibilité opérationnelle à l'aide de l'interface de ligne de commande ou de la ligne de commande

Vous ne pouvez pas connecter IBM Cloud Monitoring à l'aide de l'interface de ligne de commande ou de la ligne de commande. Utilisez la console pour effectuer cette tâche.

Etape 7: Connexion de IBM Cloud Monitoring pour une visibilité opérationnelle à l'aide d'une API

Vous ne pouvez pas connecter IBM Cloud Monitoring à l'aide d'une API. Utilisez la console pour effectuer cette tâche.

Etape 8: Connexion de IBM Cloud® Activity Tracker à l'activité de service d'audit

IBM Cloud Activity Tracker vous permet d'afficher, de gérer et d'auditer l'activité des services conformément aux règles de l'entreprise et aux réglementations du secteur. Activity Tracker enregistre les activités initiées par l'utilisateur qui modifient l'état d'un service dans IBM Cloud. Utilisez Activity Tracker pour suivre la manière dont les utilisateurs et les applications interagissent avec le service Event Streams sur les plans Standard et Enterprise.

Pour être opérationnel avec Activity Tracker, voir Initiation à Activity Tracker.

Activity Tracker ne peut posséder qu'une seule instance par emplacement. Pour afficher des événements, vous devez accéder à l'interface utilisateur Web du service Activity Tracker, à l'emplacement où votre instance de service est disponible. Pour plus d'informations, voir Lancement de l'interface utilisateur Web.

Pour plus d'informations sur les événements spécifiques à Event Streams, voir:

Les événements sont formatés selon la norme CADF (Cloud Auditing Data Federation). Pour plus de détails sur les informations qu'ils incluent, voir la norme CADF.

Etape 8: Connexion de IBM Cloud® Activity Tracker à l'aide de l'interface de ligne de commande ou de la ligne de commande pour effectuer un audit de l'activité de service

Vous ne pouvez pas vous connecter à Activity Tracker à l'aide de l'interface de ligne de commande ou de la ligne de commande. Utilisez la console pour effectuer cette tâche.

Etape 8: Connexion de IBM Cloud® Activity Tracker à l'aide d'une API pour auditer l'activité de service

Vous ne pouvez pas vous connecter à Activity Tracker à l'aide d'une API. Utilisez la console pour effectuer cette tâche.

Etape 9: (Facultatif) Utilisez Kafka Connect ou ksqlDB

Kafka Connect

Kafka Connect fait partie du projet d' Apache Kafka, et permet de connecter des systèmes externes à Kafka. Il consiste en un environnement d'exécution (runtime) capable d'exécuter des connecteurs pour copier des données vers et depuis un cluster.

Pour plus d'informations, voir Utilisation de Kafka Connect avec Event Streams.

Kafka Connect ne fait pas partie du service Event Streams géré.

ksqlDB

Vous pouvez utiliser KSQL avec le plan Enterprise Event Streams pour le traitement de flux.

ksqlDB est une base de données spécialement conçue pour la diffusion en flux d'événements. Utilisez-le pour générer rapidement des applications de diffusion d'événements de bout en bout avec une base de données de traitement de flux spécialement conçue pour Apache Kafka.

Effectuez d'abord ces étapes de configuration. Ensuite, le moyen le plus rapide et le plus simple d'exécuter ksqlDB avec Event Streams est d'utiliser un conteneur docker comme décrit dans ksqlDB quickstart.

Etape 10: Obtenir de l'aide

Pour obtenir une présentation générale de l'aide relative à Event Streams et savoir où obtenir de l'aide, voir Aide et support.

Les foires aux questions fournissent des réponses détaillées à certaines des questions courantes sur Event Streams.

Si vous rencontrez un problème avec Event Streams, voici la liste des informations que vous devez collecter avant d'ouvrir un cas Signalement d'un problème à l'équipe Event Streams-Plans Standard et Enterprise.