3.3. データソースの kamelet バインディングの Knative 宛先への接続
データソースを Knative 宛先 (チャネルまたはブローカー) に接続するには、図 3.2 に示されるように kamelet バインディングを作成します。
図 3.2 データソースの Knative 宛先への接続
Knative 宛先は Knative チャネルまたは Knative ブローカーになります。
データをチャネルに送信する場合、チャネルには 1 つのイベントタイプのみがあります。kamelet バインディングでチャネルのプロパティー値を指定する必要はありません。
データをブローカーに送信する場合、ブローカーが複数のイベントタイプを処理できるため、kamelet binding でブローカーを参照する場合は、タイププロパティーの値を指定する必要があります。
前提条件
イベントの送信先となる Knative チャネルまたはブローカーの名前およびタイプを知っている必要があります。
この手順の例では、
mychannel
という名前のInMemoryChannel
チャネルまたはdefault
という名前のブローカーを使用します。ブローカーのサンプルでは、type
プロパティーの値はコーヒーイベントに対してcoffee
になります。Camel インテグレーションに追加する kamelet と必要なインスタンスパラメーターを把握している。
この手順の kamelet の例では、
coffee-source
kamelet です。各イベントを送信する頻度を指定する任意のパラメーターperiod
があります。Example source kamelet のコードを、coffee-source.kamelet.yaml
ファイルという名前のファイルにコピーしてから、以下のコマンドを実行してこれをリソースとして namespace に追加できます。oc apply -f coffee-source.kamelet.yaml
手順
データソースを Knative 宛先に接続するには、kamelet バインディングを作成します。
任意のエディターで、以下の基本構造で YAML ファイルを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow kamelet binding の名前を追加します。この例では、バインディングが
coffee-source
kamelet を Knative 宛先に接続するため、名前はcoffees-to-knative
になります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow kamelet バインディングのソースの場合は、データソース kamelet を指定し (たとえば、
coffee-source
kamelet はコーヒーに関するデータが含まれるイベントを生成します)、kamelet のパラメーターを設定します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow kamelet バインディングのシンクでは、Knative チャネルまたはブローカーおよび必要なパラメーターを指定します。
以下の例では、Knative チャネルをシンクとして指定します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow この例では、Knative ブローカーをシンクとして指定します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
YAML ファイルを保存します (例:
coffees-to-knative.yaml
)。 - OpenShift プロジェクトにログインします。
KameletBinding をリソースとして OpenShift namespace に追加します。
oc apply -f <kamelet binding filename>
以下に例を示します。
oc apply -f coffees-to-knative.yaml
Camel K Operator は、KameletBinding リソースを使用して Camel K インテグレーションを生成し、実行します。ビルドに数分かかる場合があります。
KameletBinding のステータスを表示するには、次のコマンドを実行します。
oc get kameletbindings
インテグレーションの状態を表示するには、以下を実行します。
oc get integrations
インテグレーションのログを表示するには、以下を実行します。
kamel logs <integration> -n <project>
以下に例を示します。
kamel logs coffees-to-knative -n my-camel-knative
結果は以下の出力に似ています。
... [1] 2021-06-21 07:48:12,696 INFO [io.quarkus] (main) camel-k-integration 1.4.0 on JVM (powered by Quarkus 1.13.0.Final) started in 2.790s.
... [1] 2021-06-21 07:48:12,696 INFO [io.quarkus] (main) camel-k-integration 1.4.0 on JVM (powered by Quarkus 1.13.0.Final) started in 2.790s.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow