5.2. Kafka Connect のデプロイ
Kafka Connect は、Apache Kafka と外部システムとの間でデータをストリーミングするためのツールです。
AMQ Streams では、Kafka Connect は分散 (distributed) モードでデプロイされます。Kafka Connect はスタンドアロンモードでも動作しますが、AMQ Streams ではサポートされません。
Kafka Connect では、コネクター の概念を使用し、スケーラビリティーと信頼性を維持しながら Kafka クラスターで大量のデータを出し入れするためのフレームワークが提供されます。
Kafka Connect は通常、Kafka を外部データベース、ストレージシステム、およびメッセージングシステムと統合するために使用されます。
本セクションの手順では以下の方法を説明します。
-
KafkaConnect
リソースを使用した Kafka Connect のデプロイ - 複数の Kafka Connect インスタンスの実行
- 接続の確立に必要なコネクターが含まれる Kafka Connect の作成
- KafkaConnector リソースまたは Kafka Connect REST API を使用したコネクターの作成および管理
- KafkaConnector リソースを Kafka Connect にデプロイ
- KafkaConnector リソースにアノテーションを付けて Kafka コネクターを再起動
- KafkaConnector リソースにアノテーションを付けて Kafka コネクタータスクを再起動
コネクター という用語は、Kafka Connect クラスター内で実行されているコネクターインスタンスや、コネクタークラスと同じ意味で使用されます。本ガイドでは、本文の内容で意味が明確である場合に コネクター という用語を使用します。
5.2.1. Kafka Connect の OpenShift クラスターへのデプロイ
この手順では、Cluster Operator を使用して Kafka Connect クラスターを OpenShift クラスターにデプロイする方法を説明します。
Kafka Connect クラスターは Deployment
として実装されます。その Deployment
には、コネクターのワークロードを タスク として分布するノード (ワーカー とも呼ばれる) の設定可能な数が含まれるため、メッセージフローのスケーラビリティーや信頼性が高くなります。
デプロイメントでは、YAML ファイルの仕様を使って KafkaConnect
リソースが作成されます。
この手順では、AMQ Streams にある以下のサンプルファイルを使用します。
-
examples/connect/kafka-connect.yaml
KafkaConnect
リソース(または Source-to-Image(S 2I)サポートのある KafkaConnectS
2I リソース)の設定に関する詳細は、『 AMQ Streams on OpenShift の使用 』の「 Kafka Connect クラスターの設定 」を参照してください。
手順
Kafka Connect を OpenShift クラスターにデプロイします。
examples/connect/kafka-connect.yaml
ファイルを使用して Kafka Connect をデプロイします。oc apply -f examples/connect/kafka-connect.yaml
Kafka Connect が正常にデプロイされたことを確認します。
oc get deployments