1.2.3. Kamelet Binding でのソースおよびシンクコンポーネントの接続


Kamelet Binding 内で、ソースおよびシンクコンポーネントを接続します。

この手順の例では、図 1.2 で示されているように、以下の Kamelets を使用しています。

  • ソース Kamelet の例coffee-source という名前です。この簡単な Kamelet は、Web サイトカタログからコーヒーのタイプについて無作為に生成されたデータを取得します。コーヒーのデータを取得する頻度 (秒単位) を決定する 1 つのパラメーター (period: integer 値) があります。デフォルト値 (1000 秒) があるため、このパラメーターは必須ではありません。
  • シンク Kamelet のサンプルの名前は log-sink です。これはデータを取得し、それをログファイルに出力します。log-sink Kamelet は Kamelet Catalog で提供されます。
Kamelet Binding の例

図 1.2: Kamelet Binding の例

前提条件

  • Camel K インテグレーションの作成および編集方法を把握している。
  • Camel K のインストール で説明されているように、Red Hat Integration - Camel K Operator が OpenShift namespace またはクラスターにインストールされ、Red Hat Integration Camel K CLI ツールをダウンロードしている。
  • Camel K インテグレーションに追加する Kamelets と必要なインスタンスパラメーターを知っている必要があります。
  • 使用する Kamelets は Kamelet Catalog で利用できます。

    この例では、log-sink Kamelet は Kamelet Catalog で提供されます。この例のソース Kamelet を使用する場合は、coffee-source codecoffee-source.kamelet.yaml という名前のローカルファイルにコピーして保存し、以下のコマンドを実行して Kamelet Catalog に追加します。

    oc apply -f coffee-source.kamelet.yaml

手順

  1. OpenShift クラスターにログインします。
  2. Camel K Operator がインストールされている作業プロジェクトを開きます。Camel K Operator を cluster-mode でインストールした場合、クラスター上の任意のプロジェクトで利用できます。

    たとえば、my-camel-k-project という名前の既存のプロジェクトを開くには、以下のコマンドを実行します。

    oc project my-camel-k-project

  3. 以下のオプションのいずれかを使用して、新しい Kamelet Binding を作成します。

    • kamel bind コマンドを使用して Kamelet Binding を作成し、実行します (このオプションは、コマンドライン定義の助けとなる単純な Kamelet Binding に役に立ちます)
    • YAML ファイルを作成して Kamelet Binding を定義し、oc apply コマンドを使用して実行します (このオプションは Kamelet Binding 設定が複雑である場合に便利です)。

      kamel bind コマンドを使用した新しい Kamelet Binding の作成

      以下の kamel bind 構文を使用して、ソースおよびシンク Kamelets および設定パラメーターを指定します。

      Copy to Clipboard Toggle word wrap
      kamel bind <kamelet-source> -p “<property>=<property-value>” <kamelet-sink> -p “<property>=<property-value>”

      以下に例を示します。

      Copy to Clipboard Toggle word wrap
      kamel bind coffee-source -p “source.period=5000” log-sink -p "sink.showStreams=true"

      Camel K Operator は KameletBinding リソースを生成し、対応する Camel K インテグレーションを実行します。

      YAML ファイルを使用した新しい Kamelet Binding の作成

      1. 任意のエディターで、以下の構造で YAML ファイルを作成します。

        Copy to Clipboard Toggle word wrap
        apiVersion: camel.apache.org/v1alpha1
        kind: KameletBinding
        metadata:
          name:
        spec:
          source:
          sink:
      2. Kamelet Binding の名前を追加します。

        この例では、バインディングが coffee-source Kamelet を log-sink Kamelet に接続するため、名前は coffee-to-log になります。

        Copy to Clipboard Toggle word wrap
        apiVersion: camel.apache.org/v1alpha1
        kind: KameletBinding
        metadata:
          name: coffee-to-log
        spec:
          source:
          sink:
      3. ソース Kamelet (例: coffee-source) を指定し、Kamelet のパラメーターを設定します。

        注記:この例では、パラメーターは Kamelet Binding の YAML ファイル内に定義されます。または、Configuring Kamelet instance parameters で説明されているように、プロパティーファイル、ConfigMap、または Secret に Kamelet のパラメーターを設定できます。

        Copy to Clipboard Toggle word wrap
        apiVersion: camel.apache.org/v1alpha1
        kind: KameletBinding
        metadata:
          name: coffee-to-log
        spec:
          source:
            ref
              kind: Kamelet
              apiVersion: camel.apache.org/v1alpha1
              name: coffee-source
            properties:
              period: 5000
          sink:
      4. シング Kamelet (例: log-sink) を指定し、Kamelet のパラメーターを設定します。log-sink Kamelet にオプションの showStreams パラメーターを使用してメッセージのボディーを表示します。

        Copy to Clipboard Toggle word wrap
        apiVersion: camel.apache.org/v1alpha1
        kind: KameletBinding
        metadata:
          name: coffee-to-log
        spec:
          source:
            ref:
              kind: Kamelet
              apiVersion: camel.apache.org/v1alpha1
              name: coffee-source
            properties:
              period: 5000
          sink:
            ref:
              kind: Kamelet
              apiVersion: camel.apache.org/v1alpha1
              name: log-sink
            properties:
              showStreams: true
      5. YAML ファイルを保存します (例: coffee-to-log.yaml)。
      6. KameletBinding をリソースとして OpenShift namespace に追加します (KameletBinding)。

        oc apply -f <kamelet-binding>.yaml

        以下に例を示します。

        oc apply -f coffee-to-log.yaml

        Camel K Operator は、KameletBinding リソースを使用して Camel K インテグレーションを生成し、実行します。

  4. Kamelet Binding のステータスを表示するには、以下を実行します。

    oc get kameletbindings

  5. 対応するインテグレーションの状態を表示するには、oc get integrations
  6. 出力を表示するには、以下を実行します。

    • コマンドラインからのログを表示するには、ターミナルのウィンドウを開き、以下のコマンドを入力します。

      kamel log <integration-name>

      たとえば、インテグレーション名が coffee-to-log の場合は、以下のコマンドを使用します。

      kamel log coffee-to-log

    • OpenShift Web コンソールからのログを表示するには、以下を実行します。

      1. Workloads > Pods を選択します。
      2. Camel K インテグレーションの Pod の名前をクリックし、Logs をクリックします。

        以下の例のようなコーヒーイベントの一覧が表示されるはずです。

        Copy to Clipboard Toggle word wrap
        INFO  [log-sink-E80C5C904418150-0000000000000001] (Camel (camel-1) thread #0 - timer://tick) {"id":7259,"uid":"a4ecb7c2-05b8-4a49-b0d2-d1e8db5bc5e2","blend_name":"Postmodern Symphony","origin":"Huila, Colombia","variety":"Kona","notes":"delicate, chewy, black currant, red apple, star fruit","intensifier":"balanced"}
  7. インテグレーションを停止するには、Kamelet Binding を削除します。

    oc delete kameletbindings/<kameletbinding-name>

    以下に例を示します。

    oc delete kameletbindings/coffee-to-log

次のステップ

任意で以下を行います。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat, Inc.