Kafkaコネクタ
Kafkaコネクタは、Apache Kafkaトピックの読み取りと書き込みを行い、オプションでSASL/PLAIN認証をサポートします。
コネクタタイプ:
KafkaReader- コンシューマグループの一部としてトピックからメッセージをコンシュームKafkaWriter- トピックにメッセージをプロデュース
Kafka Reader
Section titled “Kafka Reader”コンシューマグループを使用してトピックからコンシューム:
{ "type": "KafkaReader", "config": { "brokers": ["localhost:9092"], "topic": "sensor-events", "groupId": "meddle-consumers" }}SASL/PLAIN認証あり
Section titled “SASL/PLAIN認証あり”{ "type": "KafkaReader", "config": { "brokers": [ "kafka-1.example.com:9092", "kafka-2.example.com:9092", "kafka-3.example.com:9092" ], "topic": "factory.events", "groupId": "meddle-factory-consumers", "username": "kafka_user", "password": "kafka_password" }}Kafka Writer
Section titled “Kafka Writer”トピックにメッセージをプロデュース:
{ "type": "KafkaWriter", "config": { "brokers": ["localhost:9092"], "topic": "processed-events" }}SASL/PLAIN認証あり
Section titled “SASL/PLAIN認証あり”{ "type": "KafkaWriter", "config": { "brokers": [ "kafka-1.example.com:9092", "kafka-2.example.com:9092" ], "topic": "factory.processed", "username": "kafka_user", "password": "kafka_password" }}設定パラメータ
Section titled “設定パラメータ”- brokers: ブートストラップブローカーアドレスのリスト(
host:port) - topic: Kafkaトピック名
- groupId: (Reader)コンシューマグループ識別子
- username: (オプション)SASL/PLAINユーザー名
- password: (オプション)SASL/PLAINパスワード
コンシューマグループ
Section titled “コンシューマグループ”groupIdは、Kafkaパーティションがリーダー間でどのように分散されるかを制御します:
- 同じ
groupIdを持つ複数のリーダーは、水平スケーリングのためにパーティションを共有します。 - 異なる
groupId値を持つ複数のリーダーは、それぞれトピックストリームの完全なコピーを受け取ります。 - オフセットはコンシューマグループごとにコミットされます。再起動時には最後にコミットされたオフセットから再開します。
パーティショニング
Section titled “パーティショニング”ライターはLeastBytesバランサーを使用し、メッセージをパーティション間に分散させてブローカーごとの負荷を最小化します。単一のMeddleパイプライン内のメッセージが同じパーティションに到達することは保証されません。
- 認証は
usernameとpasswordの両方が指定された場合にのみ有効になります。 - コネクタはSASL/PLAINを使用します。本番環境ではネットワークレイヤーのTLS(ブローカー設定)と組み合わせて使用してください。