Red Hat Camel K is no longer supported.
As of June 30, 2025, Red Hat build of Camel K has reached End of Life. The suggested replacements is Red Hat build of Apache Camel. For details about moving, see the Camel K to Camel Quarkus migration guide.第5章 Kafka に対する Camel K の認証
Apache Kafka に対して Camel K を認証できます。
次の例は、Kafka トピックを設定し、それを単純なプロデューサー/コンシューマーパターンのインテグレーションで使用する方法を示しています。
5.1. Kafka の設定 リンクのコピーリンクがクリップボードにコピーされました!
Kafka をセットアップするには、次のことを行う必要があります。
- 必要な OpenShift オペレーターのインストール
- Kafka インスタンスの作成
- Kafka トピックの作成
以下に示す Red Hat 製品を使用して、Kafka をセットアップします。
- Red Hat Advanced Message Queuing (AMQ) ストリーム: 自己管理の Apache Kafka オファリング。AMQ Streams はオープンソースの Strimzi をベースとしており、Red Hat Integration の一部として組み込まれています。AMQ Streams は、パブリッシュ/サブスクライブメッセージングブローカーが含まれる Apache Kafka をベースとした分散型でスケーラブルなストリーミングプラットフォームです。Kafka Connect は、Kafka ベースのシステムを外部システムと統合するフレームワークを提供します。Kafka Connect を使用すると、外部システムと Kafka ブローカーとの間で双方向にデータをストリーミングするようにソースおよびシンクコネクターを設定できます。
5.1.1. AMQ Streams を使用した Kafka の設定 リンクのコピーリンクがクリップボードにコピーされました!
AMQ Streams は、OpenShift クラスターで Apache Kafka を実行するプロセスを簡素化します。
5.1.1.1. AMQ Streams の OpenShift クラスターの準備 リンクのコピーリンクがクリップボードにコピーされました!
Camel K または Kamelets および Red Hat AMQ Streams を使用するには、以下の Operator およびツールをインストールする必要があります。
- Red Hat Integration - AMQ Streams Operator - OpenShift Cluster インスタンスと AMQ Streams for Apache Kafka インスタンスの間の通信を管理します。
- Red Hat Integration - Camel K Operator: Camel K (OpenShift のクラウドでネイティブに実行される軽量なインテグレーションフレームワーク) をインストールし、管理します。
- Camel K CLI ツール: すべての Camel K 機能にアクセスできます。
前提条件
- Apache Kafka の概念を理解している。
- 適切なアクセスレベルで OpenShift 4.6 (またはそれ以降の) クラスターにアクセスできること。この場合、プロジェクトの作成および Operator のインストールができること。また、OpenShift および Camel K CLI をローカルシステムにインストールできること。
-
コマンドラインで OpenShift クラスターと対話できるように OpenShift CLI ツール (
oc) をインストールしていること。
手順
AMQ Streams を使用して Kafka を設定するには、以下を行います。
- OpenShift クラスターの Web コンソールにログインします。
- インテグレーションを作成する予定のプロジェクト (例: my-camel-k-kafka) を作成または開きます。
- Camel K のインストール の説明に従って、Camel K Operator および Camel K CLI をインストールします。
AMQ Streams Operator をインストールします。
- 任意のプロジェクトから Operators > OperatorHub を選択します。
- Filter by Keyword フィールドに AMQ Streams を入力します。
Red Hat Integration - AMQ Streams カードをクリックしてから Install をクリックします。
Install Operator ページが開きます。
- デフォルトを受け入れ、Install をクリックします。
- Operators > Installed Operators を選択し、Camel K および AMQ Streams Operator がインストールされていることを確認します。
5.1.1.2. AMQ Streams を使用した Kafka トピックの設定 リンクのコピーリンクがクリップボードにコピーされました!
Kafka トピックは、Kafka インスタンスのデータの保存先を提供します。データを送信する前に、Kafka トピックを設定する必要があります。
前提条件
- OpenShift クラスターにアクセスできる。
- OpenShift クラスターの準備 の説明どおりに、Red Hat Integration - Camel K Operator および Red Hat Integration - AMQ Streams Operator がインストールされている。
-
OpenShift CLI (
oc) および Camel K CLI (kamel) をインストールしている。
手順
AMQ Streams を使用して Kafka トピックを設定するには、以下を行います。
- OpenShift クラスターの Web コンソールにログインします。
- Projects を選択してから、Red Hat Integration - AMQ Streams Operator をインストールしたプロジェクトをクリックします。たとえば、my-camel-k-kafka プロジェクトをクリックします。
- Operators > Installed Operators の順に選択し、Red Hat Integration - AMQ Streams をクリックします。
Kafka クラスターを作成します。
- Kafka で、Create instance をクリックします。
- kafka-test などクラスターの名前を入力します。
その他のデフォルトを受け入れ、Create をクリックします。
Kafka インスタンスを作成するプロセスの完了に数分かかる場合があります。
ステータスが ready になったら、次のステップに進みます。
Kafka トピックを作成します。
- Operators > Installed Operators の順に選択し、Red Hat Integration - AMQ Streams をクリックします。
- Kafka Topic で Create Kafka Topic をクリックします。
- トピックの名前を入力します (例: test-topic)。
- その他のデフォルトを受け入れ、Create をクリックします。
5.1.2. SASL/Plain 認証を使用したシークレットの作成 リンクのコピーリンクがクリップボードにコピーされました!
取得したクレデンシャル (Kafka ブートストラップ URL、サービスアカウント ID およびサービスアカウントのシークレット) を使用してシークレットを作成できます。
手順
application.propertiesファイルを編集し、Kafka 認証情報を追加します。application.properties ファイル
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行して、
application.propertiesファイルに機密プロパティーが含まれるシークレットを作成します。oc create secret generic kafka-props --from-file application.properties
oc create secret generic kafka-props --from-file application.propertiesCopy to Clipboard Copied! Toggle word wrap Toggle overflow Camel K インテグレーションの実行時に、このシークレットを使用します。
5.1.3. SASL/OAUTHBearer 認証を使用したシークレットの作成 リンクのコピーリンクがクリップボードにコピーされました!
取得したクレデンシャル (Kafka ブートストラップ URL、サービスアカウント ID およびサービスアカウントのシークレット) を使用してシークレットを作成できます。
手順
application-oauth.propertiesファイルを編集し、Kafka 認証情報を追加します。application-oauth.properties ファイル
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行して、
application.propertiesファイルに機密プロパティーが含まれるシークレットを作成します。oc create secret generic kafka-props --from-file application-oauth.properties
oc create secret generic kafka-props --from-file application-oauth.propertiesCopy to Clipboard Copied! Toggle word wrap Toggle overflow Camel K インテグレーションの実行時に、このシークレットを使用します。