Connecteurs - Amazon Managed Streaming for Apache Kafka

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Connecteurs

Un connecteur intègre des systèmes externes et des services Amazon à Apache Kafka en copiant en continu les données de streaming d'une source de données vers votre cluster Apache Kafka, ou en copiant en continu les données de votre cluster vers un récepteur de données. Un connecteur peut également exécuter une logique légère telle que la transformation, la conversion de format ou le filtrage des données avant de les livrer à une destination. Les connecteurs source extraient les données d'une source de données et les transmettent au cluster, tandis que les connecteurs récepteurs extraient les données du cluster et les transfèrent vers un récepteur de données.

Le diagramme suivant illustre l'architecture d'un connecteur. Un worker est un processus de machine virtuelle Java (JVM) qui exécute la logique du connecteur. Chaque worker crée un ensemble de tâches qui s'exécutent dans des threads parallèles et se chargent de copier les données. Les tâches ne stockent pas l'état et peuvent donc être démarrées, arrêtées ou redémarrées à tout moment afin de fournir un pipeline de données résilient et évolutif.

Diagramme montrant l'architecture d'un cluster de connecteur.

Capacité du connecteur

La capacité totale d'un connecteur dépend du nombre de workers qu'il possède, ainsi que du nombre d'unités MSK Connect (MCU) par worker. Chaque MCU représente 1 vCPU de calcul et 4 Gio de mémoire. La mémoire MCU correspond à la mémoire totale d'une instance de worker et non à la mémoire de tas utilisée.

Les employés de MSK Connect utilisent les adresses IP des sous-réseaux fournis par le client. Chaque travailleur utilise une adresse IP provenant de l'un des sous-réseaux fournis par le client. Vous devez vous assurer que vous disposez d'un nombre suffisant d'adresses IP disponibles dans les sous-réseaux fournis à une CreateConnector demande pour tenir compte de leur capacité spécifiée, en particulier lors du dimensionnement automatique des connecteurs où le nombre de travailleurs peut fluctuer.

Pour créer un connecteur, vous devez choisir l'un des deux modes de capacité suivants.

  • Provisionné : choisissez ce mode si vous connaissez les exigences de capacité de votre connecteur. Vous spécifiez deux valeurs :

    • Le nombre de workers.

    • Le nombre de MCU par worker.

  • Mis à l'échelle automatiquement : choisissez ce mode si les exigences de capacité de votre connecteur sont variables ou si vous ne les connaissez pas à l'avance. Lorsque vous utilisez le mode de mise à l'échelle automatique, Amazon MSK Connect remplace la propriété tasks.max de votre connecteur par une valeur proportionnelle au nombre de workers s'exécutant dans le connecteur et au nombre de MCU par worker.

    Vous spécifiez trois ensembles de valeurs :

    • Le nombre minimal et maximal de workers.

    • Les pourcentages d'utilisation de la mise à l'échelle horizontale et de la montée en charge du processeur, qui sont déterminés par la métrique CpuUtilization. Lorsque la métrique CpuUtilization du connecteur dépasse le pourcentage de montée en charge, MSK Connect augmente le nombre de workers qui utilisent le connecteur. Lorsque la métrique CpuUtilization passe en dessous du pourcentage de la mise à l'échelle horizontale, MSK Connect réduit le nombre de workers. Le nombre de workers reste toujours dans les limites des nombres minimum et maximum que vous spécifiez lors de la création du connecteur.

    • Le nombre de MCU par worker.

Pour de plus amples informations sur les workers, consultez Workers. Pour en savoir plus sur les métriques MSK Connect, consultez Surveillance de MSK Connect.

Création d'un connecteur

Création d'un connecteur à l'aide du AWS Management Console
  1. Ouvrez la console Amazon MSK à l'adresse https://console.aws.amazon.com/msk/.

  2. Dans le volet gauche, sous MSK Connect, choisissez Connecteurs.

  3. Sélectionnez Créer un connecteur.

  4. Vous pouvez choisir entre utiliser un plugin personnalisé existant pour créer le connecteur ou créer d'abord un nouveau plugin personnalisé. Pour plus d'informations sur les plugins personnalisés et sur la façon de les créer, consultez Plugins. Dans cette procédure, supposons que vous souhaitez utiliser un plugin personnalisé. Dans la liste des plugins personnalisés, recherchez celui que vous souhaitez utiliser, cochez la case située à gauche, puis choisissez Suivant.

  5. Entrez un nom et, éventuellement, une description.

  6. Choisissez le cluster auquel vous souhaitez vous connecter.

  7. Spécifiez la configuration du connecteur. Les paramètres de configuration que vous devez spécifier dépendent du type de connecteur que vous souhaitez créer. Cependant, certains paramètres sont communs à tous les connecteurs, par exemple les paramètres connector.class et tasks.max. Voici un exemple de configuration pour le connecteur récepteur Confluent Amazon S3.

    connector.class=io.confluent.connect.s3.S3SinkConnector tasks.max=2 topics=my-example-topic s3.region=us-east-1 s3.bucket.name=my-destination-bucket flush.size=1 storage.class=io.confluent.connect.s3.storage.S3Storage format.class=io.confluent.connect.s3.format.json.JsonFormat partitioner.class=io.confluent.connect.storage.partitioner.DefaultPartitioner key.converter=org.apache.kafka.connect.storage.StringConverter value.converter=org.apache.kafka.connect.storage.StringConverter schema.compatibility=NONE
  8. Vous configurez ensuite la capacité de votre connecteur. Vous pouvez choisir entre deux modes de capacité : provisionné et mis à l'échelle automatiquement. Pour plus d'informations sur ces deux options, consultez la section Capacité du connecteur.

  9. Choisissez la configuration de worker par défaut ou une configuration de worker personnalisée. Pour plus d'informations sur la création des configurations de worker par défaut, consultez Workers.

  10. Vous spécifiez ensuite le rôle d'exécution du service. Il doit s'agir d'un rôle IAM que MSK Connect peut assumer et qui accorde au connecteur toutes les autorisations dont il a besoin pour accéder aux ressources nécessaires AWS . Ces autorisations dépendent de la logique du connecteur. Pour plus d'informations sur la création de ce rôle, consultez Rôles d'exécution du service.

  11. Choisissez Suivant, passez en revue les informations de sécurité, puis choisissez à nouveau Suivant.

  12. Définissez les options de journalisation souhaitées, puis sélectionnez Suivant. Pour de plus amples informations sur la journalisation, veuillez consulter Journalisation pour MSK Connect.

  13. Sélectionnez Créer un connecteur.

Pour utiliser l'API MSK Connect afin de créer un connecteur, consultez CreateConnector.