Red Hat Camel K is deprecated
Red Hat Camel K is deprecated and the End of Life date for this product is June 30, 2025. For help migrating to the current go-to solution, Red Hat build of Apache Camel, see the Migration Guide.Kamelets リファレンス
Kamelets リファレンス
概要
はじめに
多様性を受け入れるオープンソースの強化
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、今後の複数のリリースで段階的に用語の置き換えを実施して参ります。詳細は、Red Hat CTO である Chris Wright のメッセージ をご覧ください。
第1章 AWS DynamoDB Sink
AWS DynamoDB サービスにデータを送信します。送信されたデータは、指定された AWS DynamoDB テーブルのアイテムを挿入/更新/削除します。
アクセスキー/シークレットキーは、AWS DynamoDB サービスに対する基本的な認証方法です。Kamelet は以下のオプション 'useDefaultCredentialsProvider' も提供するため、これらのパラメーターはオプションとなります。
デフォルトの認証情報プロバイダーを使用する場合、AWS DynamoDB クライアントはこのプロバイダーを通して認証情報を読み込み、静的な認証情報を使用しません。このため、この Kamelet では、アクセスキーとシークレットキーを必須パラメーターとしていません。
この Kamelet は、ボディーとして JSON フィールドを想定しています。JSON フィールドとテーブルの属性値とのマッピングはキーで行われるので、以下のような入力があった場合は、
{"username":"oscerd", "city":"Rome"}
Kamelet は、指定された AWS DynamoDB テーブルにアイテムを挿入/更新し、属性 'username' と 'city' をそれぞれ設定します。JSON オブジェクトには、項目を定義するプライマリーキー値を含む必要があることに注意してください。
1.1. 設定オプション
次の表は、aws-ddb-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
region * | AWS リージョン | 以下に接続する AWS リージョン | string |
| |
table * | テーブル | 参照する DynamoDB テーブルの名前 | string | ||
accessKey | アクセスキー | AWS から取得したアクセスキー | string | ||
operation | 操作 | 実行する操作 (PutItem、UpdateItem、DeleteItem のいずれか)。 | string |
|
|
overrideEndpoint | エンドポイントの上書き | エンドポイント URI をオーバーライドする必要性を設定する。このオプションは uriEndpointOverride 設定と併用する必要があります。 | boolean |
| |
secretKey | シークレットキー | AWS から取得したシークレットキー | string | ||
uriEndpointOverride | エンドポイント URI の上書き | オーバーライドするエンドポイント URI を設定します。このオプションは overrideEndpoint オプションと組み合わせて使用する必要があります。 | string | ||
useDefaultCredentialsProvider | デフォルトのクレデンシャルプロバイダー | デフォルトのクレデンシャルプロバイダー経由でクレデンシャルをロードすること、または静的クレデンシャルが渡されることを DynamoDB クライアントは想定すべきかどうかを設定します。 | boolean |
| |
writeCapacity | 書き込み容量 | テーブルにリソースを書き込むために予約するプロビジョニングされたスループット。 | integer |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
1.2. 依存関係
実行時に、aws-ddb-sink
Kamelet は以下の依存関係の存在に依存します。
- mvn:org.apache.camel.kamelets:camel-kamelets-utils:1.8.0
- camel:core
- camel:jackson
- camel:aws2-ddb
- camel:kamelet
1.3. 使用方法
ここでは、aws-ddb-sink
の使用方法について説明します。
1.3.1. Knative Sink
aws-ddb-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative のシンクとして使用することができます。
aws-ddb-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-ddb-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-ddb-sink properties: region: "eu-west-1" table: "The Table"
1.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
1.3.1.2. クラスター CLI の使用手順
-
aws-ddb-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-ddb-sink-binding.yaml
1.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel aws-ddb-sink -p "sink.region=eu-west-1" -p "sink.table=The Table"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
1.3.2. Kafka Sink
aws-ddb-sink
Kamelet を Kafka トピックにバインドすることで、Knative のシンクとして使用することができます。
aws-ddb-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-ddb-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-ddb-sink properties: region: "eu-west-1" table: "The Table"
1.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
1.3.2.2. クラスター CLI の使用手順
-
aws-ddb-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-ddb-sink-binding.yaml
1.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic aws-ddb-sink -p "sink.region=eu-west-1" -p "sink.table=The Table"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
1.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/aws-ddb-sink.kamelet.yaml
第2章 Avro デシリアライズアクション
ペイロードを Avro にデシリアライズ
2.1. 設定オプション
次の表は、avro-deserialize-action
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
スキーマ * | スキーマ | シリアライゼーション時に使用する Avro スキーマ (JSON 形式を使用) | string |
| |
validate | Validate | コンテンツがスキーマに対して検証される必要があるかどうかを示します。 | boolean |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
2.2. 依存関係
実行時に、avro-deserialize-action
Kamelet は以下の依存関係の存在に依存します。
- github:openshift-integration.kamelet-catalog:camel-kamelets-utils:kamelet-catalog-1.6-SNAPSHOT
- camel:kamelet
- camel:core
- camel:jackson-avro
2.3. 使用方法
ここでは、avro-deserialize-action
の使用方法について説明します。
2.3.1. Knative Action
avro-deserialize-action
Kamelet を Knative バインディングの中間ステップとして使用することができます。
avro-deserialize-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: avro-deserialize-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: '{"first":"Ada","last":"Lovelace"}' steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-deserialize-action - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: avro-serialize-action properties: schema: "{\"type\": \"record\", \"namespace\": \"com.example\", \"name\": \"FullName\", \"fields\": [{\"name\": \"first\", \"type\": \"string\"},{\"name\": \"last\", \"type\": \"string\"}]}" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: avro-deserialize-action properties: schema: "{\"type\": \"record\", \"namespace\": \"com.example\", \"name\": \"FullName\", \"fields\": [{\"name\": \"first\", \"type\": \"string\"},{\"name\": \"last\", \"type\": \"string\"}]}" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-serialize-action sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
2.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
2.3.1.2. クラスター CLI の使用手順
-
avro-deserialize-action-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f avro-deserialize-action-binding.yaml
2.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind --name avro-deserialize-action-binding timer-source?message='{"first":"Ada","last":"Lovelace"}' --step json-deserialize-action --step avro-serialize-action -p step-1.schema='{"type": "record", "namespace": "com.example", "name": "FullName", "fields": [{"name": "first", "type": "string"},{"name": "last", "type": "string"}]}' --step avro-deserialize-action -p step-2.schema='{"type": "record", "namespace": "com.example", "name": "FullName", "fields": [{"name": "first", "type": "string"},{"name": "last", "type": "string"}]}' --step json-serialize-action channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
2.3.2. Kafka Action
avro-deserialize-action
Kamelet を Kafka バインディングの中間ステップとして使用することができます。
avro-deserialize-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: avro-deserialize-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: '{"first":"Ada","last":"Lovelace"}' steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-deserialize-action - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: avro-serialize-action properties: schema: "{\"type\": \"record\", \"namespace\": \"com.example\", \"name\": \"FullName\", \"fields\": [{\"name\": \"first\", \"type\": \"string\"},{\"name\": \"last\", \"type\": \"string\"}]}" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: avro-deserialize-action properties: schema: "{\"type\": \"record\", \"namespace\": \"com.example\", \"name\": \"FullName\", \"fields\": [{\"name\": \"first\", \"type\": \"string\"},{\"name\": \"last\", \"type\": \"string\"}]}" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-serialize-action sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
2.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
2.3.2.2. クラスター CLI の使用手順
-
avro-deserialize-action-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f avro-deserialize-action-binding.yaml
2.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind --name avro-deserialize-action-binding timer-source?message='{"first":"Ada","last":"Lovelace"}' --step json-deserialize-action --step avro-serialize-action -p step-1.schema='{"type": "record", "namespace": "com.example", "name": "FullName", "fields": [{"name": "first", "type": "string"},{"name": "last", "type": "string"}]}' --step avro-deserialize-action -p step-2.schema='{"type": "record", "namespace": "com.example", "name": "FullName", "fields": [{"name": "first", "type": "string"},{"name": "last", "type": "string"}]}' --step json-serialize-action kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
2.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/avro-deserialize-action.kamelet.yaml
第3章 Avro シリアルアクション
ペイロードと Avro へのシリアライズ
3.1. 設定オプション
次の表は、avro-serialize-action
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
スキーマ * | スキーマ | シリアライゼーション時に使用する Avro スキーマ (JSON 形式を使用) | string |
| |
validate | Validate | コンテンツがスキーマに対して検証される必要があるかどうかを示します。 | boolean |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
3.2. 依存関係
実行時に、avro-serialize-action
Kamelet は以下の依存関係の存在に依存しています。
- github:openshift-integration.kamelet-catalog:camel-kamelets-utils:kamelet-catalog-1.6-SNAPSHOT
- camel:kamelet
- camel:core
- camel:jackson-avro
3.3. 使用方法
ここでは、avro-serialize-action
の使用方法について説明します。
3.3.1. Knative Action
avro-serialize-action
Kamelet を Knative バインディングの中間ステップとして使用できます。
avro-serialize-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: avro-serialize-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: '{"first":"Ada","last":"Lovelace"}' steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-deserialize-action - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: avro-serialize-action properties: schema: "{\"type\": \"record\", \"namespace\": \"com.example\", \"name\": \"FullName\", \"fields\": [{\"name\": \"first\", \"type\": \"string\"},{\"name\": \"last\", \"type\": \"string\"}]}" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
3.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
3.3.1.2. クラスター CLI の使用手順
-
avro-serialize-action-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f avro-serialize-action-binding.yaml
3.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind --name avro-serialize-action-binding timer-source?message='{"first":"Ada","last":"Lovelace"}' --step json-deserialize-action --step avro-serialize-action -p step-1.schema='{"type": "record", "namespace": "com.example", "name": "FullName", "fields": [{"name": "first", "type": "string"},{"name": "last", "type": "string"}]}' channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
3.3.2. Kafka Action
avro-serialize-action
Kamelet を Kafka バインディングの中間ステップとして使用することができます。
avro-serialize-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: avro-serialize-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: '{"first":"Ada","last":"Lovelace"}' steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-deserialize-action - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: avro-serialize-action properties: schema: "{\"type\": \"record\", \"namespace\": \"com.example\", \"name\": \"FullName\", \"fields\": [{\"name\": \"first\", \"type\": \"string\"},{\"name\": \"last\", \"type\": \"string\"}]}" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
3.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
3.3.2.2. クラスター CLI の使用手順
-
avro-serialize-action-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f avro-serialize-action-binding.yaml
3.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind --name avro-serialize-action-binding timer-source?message='{"first":"Ada","last":"Lovelace"}' --step json-deserialize-action --step avro-serialize-action -p step-1.schema='{"type": "record", "namespace": "com.example", "name": "FullName", "fields": [{"name": "first", "type": "string"},{"name": "last", "type": "string"}]}' kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
3.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/avro-serialize-action.kamelet.yaml
第4章 AWS Kinesis Sink
データを AWS Kinesis に送信します。
Kamelet には以下のヘッダーが必要です。
-
partition
/ce-partition
: Kinesis のパーティションキーを設定
ヘッダーが設定されていない場合は、エクスチェンジ ID が使用されます。
Kamelet は以下のヘッダーを認識することもできます。
-
sequence-number
/ce-sequencenumber
: シーケンス番号を設定します。
このヘッダーは任意です。
4.1. 設定オプション
次の表は、aws-kinesis-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | AWS から取得したアクセスキー | string | ||
region * | AWS リージョン | 以下に接続する AWS リージョン | string |
| |
secretKey * | シークレットキー | AWS から取得したシークレットキー | string | ||
stream * | ストリーム名 | アクセスする Kinesis ストリーム (事前に作成されている必要があります) | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
4.2. 依存関係
実行時に、aws-kinesis-sink
Kamelet は以下の依存関係の存在に依存します。
- camel:aws2-kinesis
- camel:kamelet
4.3. 使用方法
ここでは、aws-kinesis-sink
の使用方法について説明します。
4.3.1. Knative Sink
aws-kinesis-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative のシンクとして使用することができます。
aws-kinesis-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-kinesis-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-kinesis-sink properties: accessKey: "The Access Key" region: "eu-west-1" secretKey: "The Secret Key" stream: "The Stream Name"
4.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
4.3.1.2. クラスター CLI の使用手順
-
aws-kinesis-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-kinesis-sink-binding.yaml
4.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel aws-kinesis-sink -p "sink.accessKey=The Access Key" -p "sink.region=eu-west-1" -p "sink.secretKey=The Secret Key" -p "sink.stream=The Stream Name"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
4.3.2. Kafka Sink
aws-kinesis-sink
Kamelet を Kafka シンクとして使用することは、これを Kafka トピックにバインドできます。
aws-kinesis-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-kinesis-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-kinesis-sink properties: accessKey: "The Access Key" region: "eu-west-1" secretKey: "The Secret Key" stream: "The Stream Name"
4.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
4.3.2.2. クラスター CLI の使用手順
-
aws-kinesis-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-kinesis-sink-binding.yaml
4.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic aws-kinesis-sink -p "sink.accessKey=The Access Key" -p "sink.region=eu-west-1" -p "sink.secretKey=The Secret Key" -p "sink.stream=The Stream Name"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
4.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/aws-kinesis-sink.kamelet.yaml
第5章 AWS Kinesis ソース
AWS Kinesis からデータを受信します。
5.1. 設定オプション
次の表は、aws-kinesis-source
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | AWS から取得したアクセスキー | string | ||
region * | AWS リージョン | 以下に接続する AWS リージョン | string |
| |
secretKey * | シークレットキー | AWS から取得したシークレットキー | string | ||
stream * | ストリーム名 | アクセスする Kinesis ストリーム (事前に作成されている必要があります) | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
5.2. 依存関係
aws-kinesis-source
Kamelet は、実行時に以下の依存関係の存在に依存します。
- camel:gson
- camel:kamelet
- camel:aws2-kinesis
5.3. 使用方法
ここでは、aws-kinesis-source
を使用する方法について説明します。
5.3.1. Knative ソース
aws-kinesis-source
Kamelet を Knative オブジェクトにバインドすることで、Knative ソースとして使用することができます。
aws-kinesis-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-kinesis-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-kinesis-source properties: accessKey: "The Access Key" region: "eu-west-1" secretKey: "The Secret Key" stream: "The Stream Name" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
5.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
5.3.1.2. クラスター CLI の使用手順
-
aws-kinesis-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f aws-kinesis-source-binding.yaml
5.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind aws-kinesis-source -p "source.accessKey=The Access Key" -p "source.region=eu-west-1" -p "source.secretKey=The Secret Key" -p "source.stream=The Stream Name" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
5.3.2. Kafka Source
aws-kinesis-source
Kamelet を Kafka ソースとして使用するには、これを Kafka トピックにバインドできます。
aws-kinesis-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-kinesis-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-kinesis-source properties: accessKey: "The Access Key" region: "eu-west-1" secretKey: "The Secret Key" stream: "The Stream Name" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
5.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
5.3.2.2. クラスター CLI の使用手順
-
aws-kinesis-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f aws-kinesis-source-binding.yaml
5.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind aws-kinesis-source -p "source.accessKey=The Access Key" -p "source.region=eu-west-1" -p "source.secretKey=The Secret Key" -p "source.stream=The Stream Name" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
5.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/aws-kinesis-source.kamelet.yaml
第6章 AWS Lambda Sink
AWS Lambda 関数へのペイロードの送信
6.1. 設定オプション
次の表は、aws-lambda-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | AWS から取得したアクセスキー | string | ||
function * | 関数名 | Lambda 機能名 | string | ||
region * | AWS リージョン | 以下に接続する AWS リージョン | string |
| |
secretKey * | シークレットキー | AWS から取得したシークレットキー | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
6.2. 依存関係
実行時に、aws-lambda-sink
Kamelet は以下の依存関係の存在に依存します。
- camel:kamelet
- camel:aws2-lambda
6.3. 使用方法
ここでは、aws-lambda-sink
の使用方法について説明します。
6.3.1. Knative Sink
aws-lambda-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative のシンクとして使用することができます。
aws-lambda-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-lambda-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-lambda-sink properties: accessKey: "The Access Key" function: "The Function Name" region: "eu-west-1" secretKey: "The Secret Key"
6.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
6.3.1.2. クラスター CLI の使用手順
-
aws-lambda-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に応じて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-lambda-sink-binding.yaml
6.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel aws-lambda-sink -p "sink.accessKey=The Access Key" -p "sink.function=The Function Name" -p "sink.region=eu-west-1" -p "sink.secretKey=The Secret Key"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
6.3.2. Kafka Sink
aws-lambda-sink
Kamelet を Kafka のトピックにバインドすることで、Kafka のシンクとして使用することができます。
aws-lambda-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-lambda-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-lambda-sink properties: accessKey: "The Access Key" function: "The Function Name" region: "eu-west-1" secretKey: "The Secret Key"
6.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
6.3.2.2. クラスター CLI の使用手順
-
aws-lambda-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に応じて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-lambda-sink-binding.yaml
6.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic aws-lambda-sink -p "sink.accessKey=The Access Key" -p "sink.function=The Function Name" -p "sink.region=eu-west-1" -p "sink.secretKey=The Secret Key"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
6.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/aws-lambda-sink.kamelet.yaml
第7章 AWS Redshift シンク
AWS Redshift データベースにデータを送信します。
この Kamelet は JSON をボディーとして想定します。JSON フィールドとパラメーター間のマッピングはキーで実行されるため、以下のクエリーがある場合は以下を実行します。
'INSERT INTO accounts (username,city) VALUES (:#username,:#city)'
Kamelet は、以下のような入力として受信する必要があります。
'{ "username":"oscerd", "city":"Rome"}'
7.1. 設定オプション
次の表は、aws-redshift-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
databaseName * | データベース名 | ポイントするデータベース名 | string | ||
Password * | Password | セキュリティーで保護された AWS Redshift データベースにアクセスするために使用するパスワード | string | ||
query * | Query | AWS Redshift データベースに対して実行するクエリー | string |
| |
serverName * | サーバー名 | データソースのサーバー名 | string |
| |
username * | ユーザー名 | セキュリティーで保護された AWS Redshift データベースにアクセスするために使用するユーザー名 | string | ||
serverPort | サーバーポート | データソースのサーバーポート | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
7.2. 依存関係
実行時に、aws-redshift-sink
Kamelet は以下の依存関係の存在に依存します。
- camel:jackson
- camel:kamelet
- camel:sql
- mvn:com.amazon.redshift:redshift-jdbc42:2.1.0.5
- mvn:org.apache.commons:commons-dbcp2:2.7.0
7.3. 使用方法
このセクションでは、aws-redshift-sink
の使用方法について説明します。
7.3.1. Knative Sink
aws-redshift-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative のシンクとして使用することができます。
aws-redshift-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-redshift-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-redshift-sink properties: databaseName: "The Database Name" password: "The Password" query: "INSERT INTO accounts (username,city) VALUES (:#username,:#city)" serverName: "localhost" username: "The Username"
7.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
7.3.1.2. クラスター CLI の使用手順
-
aws-redshift-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-redshift-sink-binding.yaml
7.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel aws-redshift-sink -p "sink.databaseName=The Database Name" -p "sink.password=The Password" -p "sink.query=INSERT INTO accounts (username,city) VALUES (:#username,:#city)" -p "sink.serverName=localhost" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
7.3.2. Kafka Sink
aws-redshift-sink
Kamelet を Kafka のトピックにバインドすることで、Kafka のシンクとして使用することができます。
aws-redshift-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-redshift-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-redshift-sink properties: databaseName: "The Database Name" password: "The Password" query: "INSERT INTO accounts (username,city) VALUES (:#username,:#city)" serverName: "localhost" username: "The Username"
7.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
7.3.2.2. クラスター CLI の使用手順
-
aws-redshift-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-redshift-sink-binding.yaml
7.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic aws-redshift-sink -p "sink.databaseName=The Database Name" -p "sink.password=The Password" -p "sink.query=INSERT INTO accounts (username,city) VALUES (:#username,:#city)" -p "sink.serverName=localhost" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
7.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/aws-redshift-sink.kamelet.yaml
第8章 AWS SNS Sink
AWS SNS トピックへのメッセージの送信
8.1. 設定オプション
次の表は、aws-sns-sink
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | AWS から取得したアクセスキー | string | ||
region * | AWS リージョン | 以下に接続する AWS リージョン | string |
| |
secretKey * | シークレットキー | AWS から取得したシークレットキー | string | ||
topicNameOrArn * | トピック名 | SQS トピック名または ARN。 | string | ||
autoCreateTopic | トピックの自動作成 | SNS トピックの自動作成を設定します。 | boolean |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
8.2. 依存関係
実行時に、aws-sns-sink
Kamelet は以下の依存関係の存在に依存します。
- camel:kamelet
- camel:aws2-sns
8.3. 使用方法
ここでは、aws-sns-sink
の使用方法について説明します。
8.3.1. Knative Sink
aws-sns-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative のシンクとして使用することができます。
aws-sns-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-sns-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-sns-sink properties: accessKey: "The Access Key" region: "eu-west-1" secretKey: "The Secret Key" topicNameOrArn: "The Topic Name"
8.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
8.3.1.2. クラスター CLI の使用手順
-
aws-sns-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-sns-sink-binding.yaml
8.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel aws-sns-sink -p "sink.accessKey=The Access Key" -p "sink.region=eu-west-1" -p "sink.secretKey=The Secret Key" -p "sink.topicNameOrArn=The Topic Name"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
8.3.2. Kafka Sink
aws-sns-sink
Kamelet を Kafka シンクとして使用することは、Kafka トピックにバインドできます。
aws-sns-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-sns-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-sns-sink properties: accessKey: "The Access Key" region: "eu-west-1" secretKey: "The Secret Key" topicNameOrArn: "The Topic Name"
8.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
8.3.2.2. クラスター CLI の使用手順
-
aws-sns-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-sns-sink-binding.yaml
8.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic aws-sns-sink -p "sink.accessKey=The Access Key" -p "sink.region=eu-west-1" -p "sink.secretKey=The Secret Key" -p "sink.topicNameOrArn=The Topic Name"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
8.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/aws-sns-sink.kamelet.yaml
第9章 AWS SQS Sink
メッセージを AWS SQS キューに送信します。
9.1. 設定オプション
次の表は、aws-sqs-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | AWS から取得したアクセスキー | string | ||
queueNameOrArn * | キュー名 | SQS キュー名または ARN。 | string | ||
region * | AWS リージョン | 以下に接続する AWS リージョン | string |
| |
secretKey * | シークレットキー | AWS から取得したシークレットキー | string | ||
autoCreateQueue | 自動作成キュー | SQS キューの自動作成の設定。 | boolean |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
9.2. 依存関係
実行時に、aws-sqs-sink
Kamelet は以下の依存関係の存在に依存します。
- camel:aws2-sqs
- camel:core
- camel:kamelet
9.3. 使用方法
ここでは、aws-sqs-sink
の使用方法について説明します。
9.3.1. Knative Sink
aws-sqs-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative のシンクとして使用することができます。
aws-sqs-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-sqs-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-sqs-sink properties: accessKey: "The Access Key" queueNameOrArn: "The Queue Name" region: "eu-west-1" secretKey: "The Secret Key"
9.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
9.3.1.2. クラスター CLI の使用手順
-
aws-sqs-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-sqs-sink-binding.yaml
9.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel aws-sqs-sink -p "sink.accessKey=The Access Key" -p "sink.queueNameOrArn=The Queue Name" -p "sink.region=eu-west-1" -p "sink.secretKey=The Secret Key"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
9.3.2. Kafka Sink
aws-sqs-sink
Kamelet を Kafka シンクとして使用することは、これを Kafka トピックにバインドできます。
aws-sqs-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-sqs-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-sqs-sink properties: accessKey: "The Access Key" queueNameOrArn: "The Queue Name" region: "eu-west-1" secretKey: "The Secret Key"
9.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
9.3.2.2. クラスター CLI の使用手順
-
aws-sqs-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-sqs-sink-binding.yaml
9.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic aws-sqs-sink -p "sink.accessKey=The Access Key" -p "sink.queueNameOrArn=The Queue Name" -p "sink.region=eu-west-1" -p "sink.secretKey=The Secret Key"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
9.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/aws-sqs-sink.kamelet.yaml
第10章 AWS SQS ソース
AWS SQS からデータを受け取ります。
10.1. 設定オプション
次の表は、aws-sqs-source
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | AWS から取得したアクセスキー | string | ||
queueNameOrArn * | キュー名 | SQS キュー名または ARN。 | string | ||
region * | AWS リージョン | 以下に接続する AWS リージョン | string |
| |
secretKey * | シークレットキー | AWS から取得したシークレットキー | string | ||
autoCreateQueue | 自動作成キュー | SQS キューの自動作成の設定。 | boolean |
| |
deleteAfterRead | メッセージの自動削除 | メッセージの使用後のメッセージの削除 | boolean |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
10.2. 依存関係
実行時には、aws-sqs-source
Kamelet は以下の依存関係の存在に依存します。
- camel:aws2-sqs
- camel:core
- camel:kamelet
- camel:jackson
10.3. 使用方法
ここでは、aws-sqs-source
の使用方法について説明します。
10.3.1. Knative ソース
aws-sqs-source
Kamelet を Knative オブジェクトにバインドすることで、Knative ソースとして使用することができます。
aws-sqs-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-sqs-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-sqs-source properties: accessKey: "The Access Key" queueNameOrArn: "The Queue Name" region: "eu-west-1" secretKey: "The Secret Key" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
10.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
10.3.1.2. クラスター CLI の使用手順
-
aws-sqs-source-binding.yaml
ファイルをローカルドライブに保存し、設定に応じて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f aws-sqs-source-binding.yaml
10.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind aws-sqs-source -p "source.accessKey=The Access Key" -p "source.queueNameOrArn=The Queue Name" -p "source.region=eu-west-1" -p "source.secretKey=The Secret Key" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
10.3.2. Kafka Source
aws-sqs-source
Kamelet を Kafka のトピックにバインドすることで、Kafka のソースとして使用することができます。
aws-sqs-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-sqs-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-sqs-source properties: accessKey: "The Access Key" queueNameOrArn: "The Queue Name" region: "eu-west-1" secretKey: "The Secret Key" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
10.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
10.3.2.2. クラスター CLI の使用手順
-
aws-sqs-source-binding.yaml
ファイルをローカルドライブに保存し、設定に応じて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f aws-sqs-source-binding.yaml
10.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind aws-sqs-source -p "source.accessKey=The Access Key" -p "source.queueNameOrArn=The Queue Name" -p "source.region=eu-west-1" -p "source.secretKey=The Secret Key" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
10.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/aws-sqs-source.kamelet.yaml
第11章 AWS 2 Simple Queue Service FIFO シンク
AWS SQS FIFO キューにメッセージを送信します。
11.1. 設定オプション
次の表は、aws-sqs-fifo-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | AWS から取得したアクセスキー | string | ||
queueNameOrArn * | キュー名 | SQS キュー名または ARN。 | string | ||
region * | AWS リージョン | 以下に接続する AWS リージョン | string |
| |
secretKey * | シークレットキー | AWS から取得したシークレットキー | string | ||
autoCreateQueue | 自動作成キュー | SQS キューの自動作成の設定。 | boolean |
| |
contentBasedDeduplication | コンテンツベースの重複排除 | コンテンツベースの重複排除を使用 (最初に SQS FIFO キューで有効にする必要があります) | boolean |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
11.2. 依存関係
実行時に、aws-sqs-fifo-sink
Kamelet は以下の依存関係の存在に依存します。
- camel:aws2-sqs
- camel:core
- camel:kamelet
11.3. 使用方法
ここでは、aws-sqs-fifo-sink
の使用方法について説明します。
11.3.1. Knative Sink
aws-sqs-fifo-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative のシンクとして使用することができます。
aws-sqs-fifo-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-sqs-fifo-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-sqs-fifo-sink properties: accessKey: "The Access Key" queueNameOrArn: "The Queue Name" region: "eu-west-1" secretKey: "The Secret Key"
11.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
11.3.1.2. クラスター CLI の使用手順
-
aws-sqs-fifo-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-sqs-fifo-sink-binding.yaml
11.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel aws-sqs-fifo-sink -p "sink.accessKey=The Access Key" -p "sink.queueNameOrArn=The Queue Name" -p "sink.region=eu-west-1" -p "sink.secretKey=The Secret Key"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
11.3.2. Kafka Sink
aws-sqs-fifo-sink
Kamelet を Kafka シンクとして使用することは、これを Kafka トピックにバインドできます。
aws-sqs-fifo-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-sqs-fifo-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-sqs-fifo-sink properties: accessKey: "The Access Key" queueNameOrArn: "The Queue Name" region: "eu-west-1" secretKey: "The Secret Key"
11.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
11.3.2.2. クラスター CLI の使用手順
-
aws-sqs-fifo-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-sqs-fifo-sink-binding.yaml
11.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic aws-sqs-fifo-sink -p "sink.accessKey=The Access Key" -p "sink.queueNameOrArn=The Queue Name" -p "sink.region=eu-west-1" -p "sink.secretKey=The Secret Key"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
11.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/aws-sqs-fifo-sink.kamelet.yaml
第12章 AWS S3 Sink
データを AWS S3 にアップロードします。
Kamelet では、以下のヘッダーが設定されていることを想定しています。
-
file
/ce-file
: アップロードするファイル名として
ヘッダーが設定されていない場合、エクスチェンジ ID はファイル名として使用されます。
12.1. 設定オプション
次の表は、aws-s3-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | AWS から取得したアクセスキー。 | string | ||
bucketNameOrArn * | バケット名 | S3 Bucket 名または ARN。 | string | ||
region * | AWS リージョン | 接続する AWS リージョン。 | string |
| |
secretKey * | シークレットキー | AWS から取得したシークレットキー。 | string | ||
autoCreateBucket | autocreate バケット | S3 バケット bucketName の自動作成の設定。 | boolean |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
12.2. 依存関係
実行時に、aws-s3-sink
Kamelet は以下の依存関係の存在に依存します。
- camel:aws2-s3
- camel:kamelet
12.3. 使用方法
ここでは、aws-s3-sink
の使用方法について説明します。
12.3.1. Knative Sink
aws-s3-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative のシンクとして使用することができます。
aws-s3-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-s3-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-s3-sink properties: accessKey: "The Access Key" bucketNameOrArn: "The Bucket Name" region: "eu-west-1" secretKey: "The Secret Key"
12.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
12.3.1.2. クラスター CLI の使用手順
-
aws-s3-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に応じて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-s3-sink-binding.yaml
12.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel aws-s3-sink -p "sink.accessKey=The Access Key" -p "sink.bucketNameOrArn=The Bucket Name" -p "sink.region=eu-west-1" -p "sink.secretKey=The Secret Key"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
12.3.2. Kafka Sink
aws-s3-sink
Kamelet を Kafka のトピックにバインドすることで、Kafka のシンクとして使用することができます。
aws-s3-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-s3-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-s3-sink properties: accessKey: "The Access Key" bucketNameOrArn: "The Bucket Name" region: "eu-west-1" secretKey: "The Secret Key"
12.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
12.3.2.2. クラスター CLI の使用手順
-
aws-s3-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に応じて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-s3-sink-binding.yaml
12.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic aws-s3-sink -p "sink.accessKey=The Access Key" -p "sink.bucketNameOrArn=The Bucket Name" -p "sink.region=eu-west-1" -p "sink.secretKey=The Secret Key"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
12.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/aws-s3-sink.kamelet.yaml
第13章 AWS S3 ソース
AWS S3 からデータを受け取ります。
13.1. 設定オプション
次の表は、aws-s3-source
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | AWS から取得したアクセスキー | string | ||
bucketNameOrArn * | バケット名 | S3 バケット名または ARN。 | string | ||
region * | AWS リージョン | 以下に接続する AWS リージョン | string |
| |
secretKey * | シークレットキー | AWS から取得したシークレットキー | string | ||
autoCreateBucket | autocreate バケット | S3 バケット bucketName の自動作成の設定。 | boolean |
| |
deleteAfterRead | 自動削除オブジェクト | オブジェクトの使用後のオブジェクトの削除 | boolean |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
13.2. 依存関係
aws-s3-source
Kamelet は、実行時に以下の依存関係の存在に依存します。
- camel:kamelet
- camel:aws2-s3
13.3. 使用方法
ここでは、aws-s3-source
を使用する方法について説明します。
13.3.1. Knative ソース
aws-s3-source
Kamelet を Knative オブジェクトにバインドすることで、Knative ソースとして使用することができます。
aws-s3-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-s3-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-s3-source properties: accessKey: "The Access Key" bucketNameOrArn: "The Bucket Name" region: "eu-west-1" secretKey: "The Secret Key" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
13.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
13.3.1.2. クラスター CLI の使用手順
-
aws-s3-source-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してソースを実行します。
oc apply -f aws-s3-source-binding.yaml
13.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind aws-s3-source -p "source.accessKey=The Access Key" -p "source.bucketNameOrArn=The Bucket Name" -p "source.region=eu-west-1" -p "source.secretKey=The Secret Key" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
13.3.2. Kafka Source
aws-s3-source
Kamelet を Kafka のトピックにバインドすることで、Kafka のソースとして使用することができます。
aws-s3-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-s3-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-s3-source properties: accessKey: "The Access Key" bucketNameOrArn: "The Bucket Name" region: "eu-west-1" secretKey: "The Secret Key" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
13.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
13.3.2.2. クラスター CLI の使用手順
-
aws-s3-source-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してソースを実行します。
oc apply -f aws-s3-source-binding.yaml
13.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind aws-s3-source -p "source.accessKey=The Access Key" -p "source.bucketNameOrArn=The Bucket Name" -p "source.region=eu-west-1" -p "source.secretKey=The Secret Key" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
13.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/aws-s3-source.kamelet.yaml
第14章 AWS S3 Streaming upload Sink
データをストリーミングアップロードモードで AWS S3 にアップロードします。
14.1. 設定オプション
次の表は、aws-s3-streaming-upload-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | AWS から取得したアクセスキー。 | string | ||
bucketNameOrArn * | バケット名 | S3 Bucket 名または ARN。 | string | ||
keyName * | キー名 | endpoint パラメーター経由でバケットの要素のキー名を設定します。Streaming Upload では、デフォルト設定で、ファイルの進捗作成のベースとなります。 | string | ||
region * | AWS リージョン | 接続する AWS リージョン。 | string |
| |
secretKey * | シークレットキー | AWS から取得したシークレットキー。 | string | ||
autoCreateBucket | autocreate バケット | S3 バケット bucketName の自動作成の設定。 | boolean |
| |
batchMessageNumber | バッチメッセージ番号 | ストリーミングのアップロードモードでバッチを作成するメッセージの数 | int |
| |
batchSize | バッチサイズ | ストリーミングのアップロードモードのバッチサイズ (バイト単位) | int |
| |
namingStrategy | 命名ストラテジー | ストリーミングのアップロードモードで使用する命名ストラテジー。2 つの列挙があり、値は progressive、random のいずれかです。 | string |
| |
restartingPolicy | ポリシーの再起動 | ストリーミングのアップロードモードで使用する再起動ポリシー。2 つの列挙があり、値は override または lastPart の 1 つになります。 | string |
| |
streamingUploadMode | ストリーミングアップロードモード | Streaming Upload モードの設定 | boolean |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
14.2. 依存関係
aws-s3-streaming-upload-sink
Kamelet は、実行時に以下の依存関係の存在に依存します。
- camel:aws2-s3
- camel:kamelet
14.3. 使用方法
ここでは、aws-s3-streaming-upload-sink
の使用方法について説明します。
14.3.1. Knative Sink
aws-s3-streaming-upload-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative のシンクとして使用することができます。
aws-s3-streaming-upload-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-s3-streaming-upload-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-s3-streaming-upload-sink properties: accessKey: "The Access Key" bucketNameOrArn: "The Bucket Name" keyName: "The Key Name" region: "eu-west-1" secretKey: "The Secret Key"
14.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
14.3.1.2. クラスター CLI の使用手順
-
aws-s3-streaming-upload-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に応じて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-s3-streaming-upload-sink-binding.yaml
14.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel aws-s3-streaming-upload-sink -p "sink.accessKey=The Access Key" -p "sink.bucketNameOrArn=The Bucket Name" -p "sink.keyName=The Key Name" -p "sink.region=eu-west-1" -p "sink.secretKey=The Secret Key"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
14.3.2. Kafka Sink
aws-s3-streaming-upload-sink
Kamelet を Kafka トピックにバインドすることにより、Kafka シンクとして使用できます。
aws-s3-streaming-upload-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: aws-s3-streaming-upload-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: aws-s3-streaming-upload-sink properties: accessKey: "The Access Key" bucketNameOrArn: "The Bucket Name" keyName: "The Key Name" region: "eu-west-1" secretKey: "The Secret Key"
14.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
14.3.2.2. クラスター CLI の使用手順
-
aws-s3-streaming-upload-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に応じて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f aws-s3-streaming-upload-sink-binding.yaml
14.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic aws-s3-streaming-upload-sink -p "sink.accessKey=The Access Key" -p "sink.bucketNameOrArn=The Bucket Name" -p "sink.keyName=The Key Name" -p "sink.region=eu-west-1" -p "sink.secretKey=The Secret Key"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
14.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/aws-s3-streaming-upload-sink.kamelet.yaml
第15章 Azure Storage Blob Sink
データを Azure Storage Blob にアップロードします。
Azure Storage Blob Sink Kamelet はテクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品サポートのサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではない場合があります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。
テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
Kamelet では、以下のヘッダーが設定されていることを想定しています。
-
file
/ce-file
: アップロードするファイル名として
ヘッダーが設定されていない場合、エクスチェンジ ID はファイル名として使用されます。
15.1. 設定オプション
次の表は、azure-storage-blob-sink
Kamelet で使用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | Azure Storage Blob アクセスキー。 | string | ||
accountName * | アカウント名 | Azure Storage BLOB アカウント名。 | string | ||
containerName * | Container Name | Azure Storage Blob コンテナー名。 | string | ||
credentialType | 認証情報タイプ | 採用する認証情報戦略を決定します。可能な値は、SHARED_ACCOUNT_KEY、SHARED_KEY_CREDENTIAL、および AZURE_IDENTITY です。 | string |
| |
operation | 操作名 | 実行する操作。 | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
15.2. 依存関係
実行時、azure-storage-blob-sink
Kamelet は次の依存関係の存在に依存しています。
- camel:azure-storage-blob
- camel:kamelet
15.3. 使用方法
このセクションでは、azure-storage-blob-sink
の使用方法について説明します。
15.3.1. Knative Sink
azure-storage-blob-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative シンクとして使用できます。
azure-storage-blob-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: azure-storage-blob-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: azure-storage-blob-sink properties: accessKey: "The Access Key" accountName: "The Account Name" containerName: "The Container Name"
15.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
15.3.1.2. クラスター CLI の使用手順
-
azure-storage-blob-sink-binding.yaml
ファイルをローカルドライブに保存し、設定の必要に応じて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f azure-storage-blob-sink-binding.yaml
15.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel azure-storage-blob-sink -p "sink.accessKey=The Access Key" -p "sink.accountName=The Account Name" -p "sink.containerName=The Container Name"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
15.3.2. Kafka Sink
Kafka トピックにバインドすることで、azure-storage-blob-sink
Kamelet を Kafka シンクとして使用できます。
azure-storage-blob-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: azure-storage-blob-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: azure-storage-blob-sink properties: accessKey: "The Access Key" accountName: "The Account Name" containerName: "The Container Name"
15.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
15.3.2.2. クラスター CLI の使用手順
-
azure-storage-blob-sink-binding.yaml
ファイルをローカルドライブに保存し、設定の必要に応じて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f azure-storage-blob-sink-binding.yaml
15.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic azure-storage-blob-sink -p "sink.accessKey=The Access Key" -p "sink.accountName=The Account Name" -p "sink.containerName=The Container Name"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
15.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/azure-storage-blob-sink.kamelet.yaml
第16章 Azure Storage Blob Source
Azure Storage Blob からファイルを使用します。
Azure Storage Blob Source Kamelet はテクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品サポートのサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではない場合があります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。
テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
16.1. 設定オプション
次の表は、azure-storage-blob-source
Kamelet で使用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | Azure Storage Blob アクセスキー。 | string | ||
accountName * | アカウント名 | Azure Storage BLOB アカウント名。 | string | ||
containerName * | Container Name | Azure Storage Blob コンテナー名。 | string | ||
period * | ポーリング間の期間 | Azure ストレージコンテナーへのフェッチの間隔 (ミリ秒) | integer |
| |
credentialType | 認証情報タイプ | 採用する認証情報戦略を決定します。可能な値は、SHARED_ACCOUNT_KEY、SHARED_KEY_CREDENTIAL、および AZURE_IDENTITY です。 | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
16.2. 依存関係
実行時、azure-storage-blob-source
Kamelet は次の依存関係の存在に依存しています。
- camel:azure-storage-blob
- camel:jsonpath
- camel:core
- camel:timer
- camel:kamelet
16.3. 使用方法
このセクションでは、azure-storage-blob-source の
使用方法について説明します。
16.3.1. Knative ソース
azure-storage-blob-source
Kamelet を Knative オブジェクトにバインドすることで、Knative ソースとして使用できます。
azure-storage-blob-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: azure-storage-blob-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: azure-storage-blob-source properties: accessKey: "The Access Key" accountName: "The Account Name" containerName: "The Container Name" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
16.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
16.3.1.2. クラスター CLI の使用手順
-
azure-storage-blob-source-binding.yaml
ファイルをローカルドライブに保存し、設定の必要に応じて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f azure-storage-blob-source-binding.yaml
16.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind azure-storage-blob-source -p "source.accessKey=The Access Key" -p "source.accountName=The Account Name" -p "source.containerName=The Container Name" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
16.3.2. Kafka Source
Kafka トピックにバインドすることで、azure-storage-blob-source
Kamelet を Kafka ソースとして使用できます。
azure-storage-blob-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: azure-storage-blob-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: azure-storage-blob-source properties: accessKey: "The Access Key" accountName: "The Account Name" containerName: "The Container Name" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
16.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
16.3.2.2. クラスター CLI の使用手順
-
azure-storage-blob-source-binding.yaml
ファイルをローカルドライブに保存し、設定の必要に応じて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f azure-storage-blob-source-binding.yaml
16.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind azure-storage-blob-source -p "source.accessKey=The Access Key" -p "source.accountName=The Account Name" -p "source.containerName=The Container Name" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
16.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/azure-storage-blob-source.kamelet.yaml
第17章 Azure Storage Queue Sink
メッセージを Azure Storage キューに送信します。
Azure Storage Queue Sink Kamelet はテクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品サポートのサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではない場合があります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。
テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
Kamelet は、設定するヘッダーについて理解することができます。
-
expiration
/ce-expiration
キュー内のメッセージの存続時間として。
ヘッダーが設定されない場合、デフォルトの 7 日間が使用されます。
形式は次の形式である必要があります: PnDTnHnMn.nS.、例: PT20.345S — 20.345 秒として解析、P2D — 2 日として解析。
17.1. 設定オプション
次の表は、azure-storage-queue-sink
Kamelet で使用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | Azure ストレージキューアクセスキー。 | string | ||
accountName * | アカウント名 | Azure ストレージキューのアカウント名。 | string | ||
queueName * | キュー名 | Azure ストレージキューコンテナー名。 | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
17.2. 依存関係
実行時、azure-storage-queue-sink
Kamelet は次の依存関係の存在に依存します。
- camel:azure-storage-queue
- camel:kamelet
17.3. 使用方法
このセクションでは、azure-storage-queue-sink
の使用方法について説明します。
17.3.1. Knative Sink
azure-storage-queue-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative シンクとして使用できます。
azure-storage-queue-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: azure-storage-queue-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: azure-storage-queue-sink properties: accessKey: "The Access Key" accountName: "The Account Name" queueName: "The Queue Name"
17.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
17.3.1.2. クラスター CLI の使用手順
-
azure-storage-queue-sink-binding.yaml
ファイルをローカルドライブに保存し、設定の必要に応じて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f azure-storage-queue-sink-binding.yaml
17.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel azure-storage-queue-sink -p "sink.accessKey=The Access Key" -p "sink.accountName=The Account Name" -p "sink.queueName=The Queue Name"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
17.3.2. Kafka Sink
Kafka トピックにバインドすることで、azure-storage-queue-sink
Kamelet を Kafka シンクとして使用できます。
azure-storage-queue-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: azure-storage-queue-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: azure-storage-queue-sink properties: accessKey: "The Access Key" accountName: "The Account Name" queueName: "The Queue Name"
17.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
17.3.2.2. クラスター CLI の使用手順
-
azure-storage-queue-sink-binding.yaml
ファイルをローカルドライブに保存し、設定の必要に応じて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f azure-storage-queue-sink-binding.yaml
17.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic azure-storage-queue-sink -p "sink.accessKey=The Access Key" -p "sink.accountName=The Account Name" -p "sink.queueName=The Queue Name"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
17.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/azure-storage-queue-sink.kamelet.yaml
第18章 Azure ストレージキューソース
Azure Storage キューからメッセージを受信します。
Azure Storage Queue Source Kamelet はテクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品サポートのサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではない場合があります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。
テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
18.1. 設定オプション
次の表は、azure-storage-queue-source
Kamelet で使用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | Azure ストレージキューアクセスキー。 | string | ||
accountName * | アカウント名 | Azure ストレージキューのアカウント名。 | string | ||
queueName * | キュー名 | Azure ストレージキューコンテナー名。 | string | ||
maxMessages | 最大メッセージ数 | 取得するメッセージの最大数。要求された数よりもキューに存在するメッセージが少ない場合は、すべてのメッセージが返されます。デフォルトでは、1 メッセージが取得されると見なされます。許可される範囲は 1 から 32 メッセージです。 | int |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
18.2. 依存関係
実行時、azure-storage-queue-source
Kamelet は次の依存関係の存在に依存しています。
- camel:azure-storage-queue
- camel:kamelet
18.3. 使用方法
このセクションでは、azure-storage-queue-source の
使用方法について説明します。
18.3.1. Knative ソース
azure-storage-queue-source
Kamelet を Knative オブジェクトにバインドすることで、Knative ソースとして使用できます。
azure-storage-queue-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: azure-storage-queue-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: azure-storage-queue-source properties: accessKey: "The Access Key" accountName: "The Account Name" queueName: "The Queue Name" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
18.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
18.3.1.2. クラスター CLI の使用手順
-
azure-storage-queue-source-binding.yaml
ファイルをローカルドライブに保存し、設定の必要に応じて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f azure-storage-queue-source-binding.yaml
18.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind azure-storage-queue-source -p "source.accessKey=The Access Key" -p "source.accountName=The Account Name" -p "source.queueName=The Queue Name" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
18.3.2. Kafka Source
Kafka トピックにバインドすることで、azure-storage-queue-source
Kamelet を Kafka ソースとして使用できます。
azure-storage-queue-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: azure-storage-queue-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: azure-storage-queue-source properties: accessKey: "The Access Key" accountName: "The Account Name" queueName: "The Queue Name" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
18.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
18.3.2.2. クラスター CLI の使用手順
-
azure-storage-queue-source-binding.yaml
ファイルをローカルドライブに保存し、設定の必要に応じて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f azure-storage-queue-source-binding.yaml
18.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind azure-storage-queue-source -p "source.accessKey=The Access Key" -p "source.accountName=The Account Name" -p "source.queueName=The Queue Name" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
18.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/azure-storage-queue-source.kamelet.yaml
第19章 Cassandra Sink
データを Cassandra クラスターに送信します。
この Kamelet はボディーを JSON アレイとして想定します。JSON アレイの内容は、クエリーパラメーターに設定された CQL Prepared Statement の入力として使用されます。
19.1. 設定オプション
次の表は、cassandra-sink
Kamelet で使用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
connectionHost * | 接続ホスト | Hostname(s) cassandra server(s).複数のホストはコンマで区切ることができます。 | string |
| |
connectionPort * | 接続ポート | cassandra サーバーのポート番号 | string |
| |
keyspace * | キースペース | 使用するキースペース | string |
| |
Password * | Password | セキュアな Cassandra クラスターへのアクセスに使用するパスワード | string | ||
query * | Query | Cassandra クラスターテーブルに対して実行するクエリー | string | ||
username * | ユーザー名 | セキュアな Cassandra クラスターへのアクセスに使用するユーザー名 | string | ||
consistencyLevel | 一貫性レベル | 使用する一貫性レベル。値には、ANY、ONE、TWO、THREE、QUORUM、ALL、LOCAL_QUORUM、EACH_QUORUM、EACH_QUORUM、LOCAL_SERIAL、LOCAL_ONE のいずれかを指定できます。 | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
19.2. 依存関係
実行時に、cassandra-sink
Kamelet は以下の依存関係の存在に依存します。
- camel:jackson
- camel:kamelet
- camel:cassandraql
19.3. 使用方法
ここでは、cassandra-sink
の使用方法について説明します。
19.3.1. Knative Sink
cassandra-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative のシンクとして使用することができます。
cassandra-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: cassandra-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: cassandra-sink properties: connectionHost: "localhost" connectionPort: 9042 keyspace: "customers" password: "The Password" query: "The Query" username: "The Username"
19.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
19.3.1.2. クラスター CLI の使用手順
-
cassandra-sink-binding.yaml
ファイルをローカル・ドライブに保存し、設定に合わせて必要な編集を行います。 以下のコマンドを使用してシンクを実行します。
oc apply -f cassandra-sink-binding.yaml
19.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel cassandra-sink -p "sink.connectionHost=localhost" -p sink.connectionPort=9042 -p "sink.keyspace=customers" -p "sink.password=The Password" -p "sink.query=Query" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
19.3.2. Kafka Sink
cassandra-sink
Kamelet を Kafka のトピックにバインドすることで、Kafka のシンクとして使用することができます。
cassandra-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: cassandra-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: cassandra-sink properties: connectionHost: "localhost" connectionPort: 9042 keyspace: "customers" password: "The Password" query: "The Query" username: "The Username"
19.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
19.3.2.2. クラスター CLI の使用手順
-
cassandra-sink-binding.yaml
ファイルをローカル・ドライブに保存し、設定に合わせて必要な編集を行います。 以下のコマンドを使用してシンクを実行します。
oc apply -f cassandra-sink-binding.yaml
19.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic cassandra-sink -p "sink.connectionHost=localhost" -p sink.connectionPort=9042 -p "sink.keyspace=customers" -p "sink.password=The Password" -p "sink.query=The Query" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
19.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/cassandra-sink.kamelet.yaml
第20章 Cassandra ソース
Cassandra クラスターテーブルをクエリーします。
20.1. 設定オプション
次の表は、cassandra-source
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
connectionHost * | 接続ホスト | Hostname(s) cassandra server(s).複数のホストはコンマで区切ることができます。 | string |
| |
connectionPort * | 接続ポート | cassandra サーバーのポート番号 | string |
| |
keyspace * | キースペース | 使用するキースペース | string |
| |
Password * | Password | セキュアな Cassandra クラスターへのアクセスに使用するパスワード | string | ||
query * | Query | Cassandra クラスターテーブルに対して実行するクエリー | string | ||
username * | ユーザー名 | セキュアな Cassandra クラスターへのアクセスに使用するユーザー名 | string | ||
consistencyLevel | 一貫性レベル | 使用する一貫性レベル。値には、ANY、ONE、TWO、THREE、QUORUM、ALL、LOCAL_QUORUM、EACH_QUORUM、EACH_QUORUM、LOCAL_SERIAL、LOCAL_ONE のいずれかを指定できます。 | string |
| |
resultStrategy | 結果ストラテジー | クエリーの結果セットを変換するストラテジー。使用できる値は ALL、ONE、LIMIT_10、LIMIT_100... | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
20.2. 依存関係
起動時に、cassandra-source
Kamelet は、以下の依存関係の存在に依存します。
- camel:jackson
- camel:kamelet
- camel:cassandraql
20.3. 使用方法
本セクションでは、cassandra-source
を使用する方法を説明します。
20.3.1. Knative ソース
cassandra-source
Kamelet を Knative オブジェクトにバインドすることで、Knative ソースとして使用することができます。
cassandra-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: cassandra-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: cassandra-source properties: connectionHost: "localhost" connectionPort: 9042 keyspace: "customers" password: "The Password" query: "The Query" username: "The Username" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
20.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
20.3.1.2. クラスター CLI の使用手順
-
cassandra-source-binding.yaml
ファイルをローカル・ドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f cassandra-source-binding.yaml
20.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind cassandra-source -p "source.connectionHost=localhost" -p source.connectionPort=9042 -p "source.keyspace=customers" -p "source.password=The Password" -p "source.query=The Query" -p "source.username=The Username" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
20.3.2. Kafka Source
cassandra-source
Kamelet を Kafka トピックにバインドすることで、Kafka ソースとして使用することができます。
cassandra-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: cassandra-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: cassandra-source properties: connectionHost: "localhost" connectionPort: 9042 keyspace: "customers" password: "The Password" query: "The Query" username: "The Username" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
20.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
20.3.2.2. クラスター CLI の使用手順
-
cassandra-source-binding.yaml
ファイルをローカル・ドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f cassandra-source-binding.yaml
20.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind cassandra-source -p "source.connectionHost=localhost" -p source.connectionPort=9042 -p "source.keyspace=customers" -p "source.password=The Password" -p "source.query=The Query" -p "source.username=The Username" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
20.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/cassandra-source.kamelet.yaml
第21章 Ceph Sink
Object Storage Gateway によって管理される Ceph バケットにデータをアップロードします。
ヘッダーでは、オプションで file
/ ce-file
プロパティーを設定して、アップロードするファイルの名前を指定できます。
ヘッダーにプロパティーを設定しない場合、Kamelet はファイル名に交換 ID を使用します。
21.1. 設定オプション
以下の表では、ceph-sink
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | アクセスキー。 | string | ||
bucketName * | バケット名 | Ceph バケット名。 | string | ||
cephUrl * | Ceph URL アドレス | Ceph Object Storage アドレス URL を設定します。 | string |
| |
secretKey * | シークレットキー | シークレットキー。 | string | ||
zoneGroup * | バケットゾーングループ | バケットゾーングループ。 | string | ||
autoCreateBucket | autocreate バケット | バケットを自動的に作成するように指定します。 | boolean |
| |
keyName | キー名 | バケットに要素を保存するためのキー名。 | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
21.2. 依存関係
ランタイム時に、ceph-sink
Kamelet は、以下の依存関係の存在に依存します。
- camel:core
- camel:aws2-s3
- camel:kamelet
21.3. 使用方法
本セクションでは、ceph-sink
を使用する方法を説明します。
21.3.1. Knative Sink
ceph-sink
Kamelet を Knative オブジェクトにバインドすることにより、これを Knative シンクとして使用できます。
ceph-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: ceph-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: ceph-sink properties: accessKey: "The Access Key" bucketName: "The Bucket Name" cephUrl: "http://ceph-storage-address.com" secretKey: "The Secret Key" zoneGroup: "The Bucket Zone Group"
21.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
21.3.1.2. クラスター CLI の使用手順
-
ceph-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f ceph-sink-binding.yaml
21.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel ceph-sink -p "sink.accessKey=The Access Key" -p "sink.bucketName=The Bucket Name" -p "sink.cephUrl=http://ceph-storage-address.com" -p "sink.secretKey=The Secret Key" -p "sink.zoneGroup=The Bucket Zone Group"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
21.3.2. Kafka Sink
ceph-sink
Kamelet を Kafka トピックにバインドすることにより、Kafka シンクとして使用できます。
ceph-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: ceph-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: ceph-sink properties: accessKey: "The Access Key" bucketName: "The Bucket Name" cephUrl: "http://ceph-storage-address.com" secretKey: "The Secret Key" zoneGroup: "The Bucket Zone Group"
21.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
21.3.2.2. クラスター CLI の使用手順
-
ceph-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f ceph-sink-binding.yaml
21.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic ceph-sink -p "sink.accessKey=The Access Key" -p "sink.bucketName=The Bucket Name" -p "sink.cephUrl=http://ceph-storage-address.com" -p "sink.secretKey=The Secret Key" -p "sink.zoneGroup=The Bucket Zone Group"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
21.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/ceph-sink.kamelet.yaml
第22章 Ceph ソース
Object Storage Gateway によって管理される Ceph バケットからデータを受信します。
22.1. 設定オプション
以下の表では、ceph-source
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
accessKey * | アクセスキー | アクセスキー。 | string | ||
bucketName * | バケット名 | Ceph バケット名。 | string | ||
cephUrl * | Ceph URL アドレス | Ceph Object Storage アドレス URL を設定します。 | string |
| |
secretKey * | シークレットキー | シークレットキー。 | string | ||
zoneGroup * | バケットゾーングループ | バケットゾーングループ。 | string | ||
autoCreateBucket | autocreate バケット | バケットを自動的に作成するように指定します。 | boolean |
| |
delay | 遅延 | 選択したバケットの次のポーリングまでのミリ秒数。 | integer |
| |
deleteAfterRead | 自動削除オブジェクト | 消費後にオブジェクトを削除することを指定します。 | boolean |
| |
ignoreBody | 本文を無視する |
true の場合、オブジェクト本文は無視されます。これを true に設定すると、 | boolean |
| |
includeBody | 本文を含める | true の場合、交換は消費され、本文に入れられて閉じられます。false の場合、オブジェクトストリームは raw で本文に配置され、ヘッダーにはオブジェクトメタデータが設定されます。 | boolean |
| |
prefix | 接頭辞 | 検索時に考慮するバケットの接頭辞。 | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
22.2. 依存関係
ランタイム時に、ceph-source
Kamelet は、以下の依存関係の存在に依存します。
- camel:aws2-s3
- camel:kamelet
22.3. 使用方法
本セクションでは、ceph-source
を使用する方法を説明します。
22.3.1. Knative ソース
ceph-source
Kamelet を Knative オブジェクトにバインドすることで、Knative ソースとして使用することができます。
ceph-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: ceph-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: ceph-source properties: accessKey: "The Access Key" bucketName: "The Bucket Name" cephUrl: "http://ceph-storage-address.com" secretKey: "The Secret Key" zoneGroup: "The Bucket Zone Group" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
22.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
22.3.1.2. クラスター CLI の使用手順
-
ceph-source-binding.yaml
ファイルをローカルドライブに保存してから、設定に合わせて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f ceph-source-binding.yaml
22.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind ceph-source -p "source.accessKey=The Access Key" -p "source.bucketName=The Bucket Name" -p "source.cephUrl=http://ceph-storage-address.com" -p "source.secretKey=The Secret Key" -p "source.zoneGroup=The Bucket Zone Group" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
22.3.2. Kafka Source
ceph-source
Kamelet を Kafka トピックにバインドすることにより、Kafka ソースとして使用できます。
ceph-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: ceph-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: ceph-source properties: accessKey: "The Access Key" bucketName: "The Bucket Name" cephUrl: "http://ceph-storage-address.com" secretKey: "The Secret Key" zoneGroup: "The Bucket Zone Group" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
22.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
22.3.2.2. クラスター CLI の使用手順
-
ceph-source-binding.yaml
ファイルをローカルドライブに保存してから、設定に合わせて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f ceph-source-binding.yaml
22.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind ceph-source -p "source.accessKey=The Access Key" -p "source.bucketName=The Bucket Name" -p "source.cephUrl=http://ceph-storage-address.com" -p "source.secretKey=The Secret Key" -p "source.zoneGroup=The Bucket Zone Group" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
22.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/ceph-source.kamelet.yaml
第23章 フィールドアクションの抽出
本文からフィールドを抽出します
23.1. 設定オプション
以下の表では、extract-field-action
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
field * | フィールド | 追加するフィールドの名前 | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
23.2. 依存関係
実行時に、extract-field-action
Kamelet は以下の依存関係の存在に依存します。
- github:openshift-integration.kamelet-catalog:camel-kamelets-utils:kamelet-catalog-1.6-SNAPSHOT
- camel:kamelet
- camel:core
- camel:jackson
23.3. 使用方法
このセクションでは、extract-field-action
の使用方法について説明します。
23.3.1. Knative Action
extract-field-action
Kamelet は、Knative バインディングの中間ステップとして使用できます。
extract-field-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: extract-field-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: extract-field-action properties: field: "The Field" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
23.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
23.3.1.2. クラスター CLI の使用手順
-
extract-field-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f extract-field-action-binding.yaml
23.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step extract-field-action -p "step-0.field=The Field" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
23.3.2. Kafka Action
extract-field-action
Kamelet は、Kafka バインディングの中間ステップとして使用できます。
extract-field-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: extract-field-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: extract-field-action properties: field: "The Field" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
23.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
23.3.2.2. クラスター CLI の使用手順
-
extract-field-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f extract-field-action-binding.yaml
23.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step extract-field-action -p "step-0.field=The Field" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
23.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/extract-field-action.kamelet.yaml
第24章 FTP Sink
データを FTP サーバーに送信します。
Kamelet では、以下のヘッダーが設定されていることを想定しています。
-
file
/ce-file
: アップロードするファイル名として
ヘッダーが設定されていない場合、エクスチェンジ ID はファイル名として使用されます。
24.1. 設定オプション
次の表は、ftp-sink
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
connectionHost * | 接続ホスト | FTP サーバーのホスト名 | string | ||
connectionPort * | 接続ポート | FTP サーバーのポート | string |
| |
directoryName * | ディレクトリー名 | 開始ディレクトリー | string | ||
Password * | Password | FTP サーバーにアクセスするためのパスワード | string | ||
username * | ユーザー名 | FTP サーバーにアクセスするためのユーザー名 | string | ||
fileExist | ファイルの存在 | すでにファイルが存在する場合にどのように動作するか。列挙は 4 つあり、値は Override、Append、Fail または Ignore のいずれかです。 | string |
| |
passiveMode | パッシブモード | パッシブモード接続の設定 | boolean |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
24.2. 依存関係
起動時に、ftp-sink
Kamelet は、以下の依存関係の存在に依存します。
- camel:ftp
- camel:core
- camel:kamelet
24.3. 使用方法
本セクションでは、ftp-sink
を使用する方法を説明します。
24.3.1. Knative Sink
ftp-sink
Kamelet を Knative オブジェクトにバインドすることにより、Knative シンクとして使用できます。
ftp-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: ftp-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: ftp-sink properties: connectionHost: "The Connection Host" directoryName: "The Directory Name" password: "The Password" username: "The Username"
24.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
24.3.1.2. クラスター CLI の使用手順
-
ftp-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f ftp-sink-binding.yaml
24.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel ftp-sink -p "sink.connectionHost=The Connection Host" -p "sink.directoryName=The Directory Name" -p "sink.password=The Password" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
24.3.2. Kafka Sink
ftp-sink
Kamelet を Kafka トピックにバインドすることにより、Kafka シンクとして使用できます。
ftp-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: ftp-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: ftp-sink properties: connectionHost: "The Connection Host" directoryName: "The Directory Name" password: "The Password" username: "The Username"
24.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
24.3.2.2. クラスター CLI の使用手順
-
ftp-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f ftp-sink-binding.yaml
24.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic ftp-sink -p "sink.connectionHost=The Connection Host" -p "sink.directoryName=The Directory Name" -p "sink.password=The Password" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
24.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/ftp-sink.kamelet.yaml
第25章 FTP ソース
FTP サーバーからデータを受信します。
25.1. 設定オプション
以下の表は、ftp-source
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
connectionHost * | 接続ホスト | FTP サーバーのホスト名 | string | ||
connectionPort * | 接続ポート | FTP サーバーのポート | string |
| |
directoryName * | ディレクトリー名 | 開始ディレクトリー | string | ||
Password * | Password | FTP サーバーにアクセスするためのパスワード | string | ||
username * | ユーザー名 | FTP サーバーにアクセスするためのユーザー名 | string | ||
idempotent | 冪等性 | 処理されたファイルを省略します。 | boolean |
| |
passiveMode | パッシブモード | パッシブモード接続の設定 | boolean |
| |
再帰 | 再帰 | ディレクトリーの場合は、すべてのサブディレクトリー内のファイルも検索します。 | boolean |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
25.2. 依存関係
起動時に、ftp-source
Kamelet は、以下の依存関係の存在に依存します。
- camel:ftp
- camel:core
- camel:kamelet
25.3. 使用方法
本セクションでは、ftp-source
を使用する方法を説明します。
25.3.1. Knative ソース
ftp-source
Kamelet を Knative オブジェクトにバインドすることで、Knative ソースとして使用することができます。
ftp-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: ftp-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: ftp-source properties: connectionHost: "The Connection Host" directoryName: "The Directory Name" password: "The Password" username: "The Username" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
25.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
25.3.1.2. クラスター CLI の使用手順
-
ftp-source-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してソースを実行します。
oc apply -f ftp-source-binding.yaml
25.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind ftp-source -p "source.connectionHost=The Connection Host" -p "source.directoryName=The Directory Name" -p "source.password=The Password" -p "source.username=The Username" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
25.3.2. Kafka Source
ftp-source
Kamelet を Kafka のトピックにバインドすることで、Kafka のソースとして使用することができます。
ftp-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: ftp-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: ftp-source properties: connectionHost: "The Connection Host" directoryName: "The Directory Name" password: "The Password" username: "The Username" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
25.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
25.3.2.2. クラスター CLI の使用手順
-
ftp-source-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してソースを実行します。
oc apply -f ftp-source-binding.yaml
25.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind ftp-source -p "source.connectionHost=The Connection Host" -p "source.directoryName=The Directory Name" -p "source.password=The Password" -p "source.username=The Username" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
25.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/ftp-source.kamelet.yaml
第26章 Has Header Filter Action
1 つのヘッダーの存在に基づくフィルター
26.1. 設定オプション
以下の表では、has-header-filter-action
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
name * | ヘッダー名 | 評価するヘッダー名。ヘッダー名は、ソース Kamelet から渡す必要があります。Knative の場合のみ、クラウドイベントを使用している場合は、ヘッダー名に CloudEvent (ce-) 接頭辞を含める必要があります。 | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
26.2. 依存関係
ランタイム時に、has-header-filter-action
Kamelet は、以下の依存関係の存在に依存します。
- camel:core
- camel:kamelet
26.3. 使用方法
本セクションでは、has-header-filter-action
の使用方法を説明します。
26.3.1. Knative Action
has-header-filter-action
Kamelet を Knative バインディングの中間ステップとして使用できます。
has-header-filter-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: has-header-filter-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "my-header" value: "my-value" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: has-header-filter-action properties: name: "my-header" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
26.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
26.3.1.2. クラスター CLI の使用手順
-
has-header-filter-action-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f has-header-filter-action-binding.yaml
26.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind --name has-header-filter-action-binding timer-source?message="Hello" --step insert-header-action -p "step-0.name=my-header" -p "step-0.value=my-value" --step has-header-filter-action -p "step-1.name=my-header" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
26.3.2. Kafka Action
has-header-filter-action
Kamelet を Kafka バインディングの中間ステップとして使用できます。
has-header-filter-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: has-header-filter-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "my-header" value: "my-value" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: has-header-filter-action properties: name: "my-header" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
26.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
26.3.2.2. クラスター CLI の使用手順
-
has-header-filter-action-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f has-header-filter-action-binding.yaml
26.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind --name has-header-filter-action-binding timer-source?message="Hello" --step insert-header-action -p "step-0.name=my-header" -p "step-0.value=my-value" --step has-header-filter-action -p "step-1.name=my-header" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
26.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/has-header-filter-action.kamelet.yaml
第27章 Hoist フィールドアクション
データを単一のフィールドにラップします。
27.1. 設定オプション
以下の表では、hoist-field-action
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
field * | フィールド | イベントを含むフィールドの名前 | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
27.2. 依存関係
実行時に、hoist-field-action
Kamelet は以下の依存関係の存在に依存します。
- github:openshift-integration.kamelet-catalog:camel-kamelets-utils:kamelet-catalog-1.6-SNAPSHOT
- camel:core
- camel:jackson
- camel:kamelet
27.3. 使用方法
このセクションでは、hoist-field-action
の使用方法について説明します。
27.3.1. Knative Action
hoist-field-action
Kamelet は、Knative バインディングの中間ステップとして使用できます。
hoist-field-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: hoist-field-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: hoist-field-action properties: field: "The Field" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
27.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
27.3.1.2. クラスター CLI の使用手順
-
hoist-field-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f hoist-field-action-binding.yaml
27.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step hoist-field-action -p "step-0.field=The Field" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
27.3.2. Kafka Action
hoist-field-action
Kamelet は、Kafka バインディングの中間ステップとして使用できます。
hoist-field-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: hoist-field-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: hoist-field-action properties: field: "The Field" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
27.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
27.3.2.2. クラスター CLI の使用手順
-
hoist-field-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f hoist-field-action-binding.yaml
27.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step hoist-field-action -p "step-0.field=The Field" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
27.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/hoist-field-action.kamelet.yaml
第28章 HTTP Sink
イベントの HTTP エンドポイントへの転送
28.1. 設定オプション
次の表は、http-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
url * | URL | データの送信先となる URL | string |
| |
メソッド | メソッド | 使用する HTTP メソッド | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
28.2. 依存関係
実行時には、http-sink
Kamelet は以下の依存関係の存在に依存します。
- camel: http
- camel:kamelet
- camel:core
28.3. 使用方法
ここでは、http-sink
の使用方法について説明します。
28.3.1. Knative Sink
http-sink
Kamelet を Knative オブジェクトにバインドし、Knative シンクとして使用できます。
http-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: http-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: http-sink properties: url: "https://my-service/path"
28.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
28.3.1.2. クラスター CLI の使用手順
-
http-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f http-sink-binding.yaml
28.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel http-sink -p "sink.url=https://my-service/path"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
28.3.2. Kafka Sink
http-sink
Kamelet を Kafka トピックにバインドすることにより、Kafka シンクとして使用できます。
http-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: http-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: http-sink properties: url: "https://my-service/path"
28.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
28.3.2.2. クラスター CLI の使用手順
-
http-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f http-sink-binding.yaml
28.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic http-sink -p "sink.url=https://my-service/path"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
28.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/http-sink.kamelet.yaml
第29章 フィールドアクションの挿入
転送中のメッセージに定数値を持つカスタムフィールドを追加します。
29.1. 設定オプション
以下の表では、insert-field-action
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
field * | フィールド | 追加するフィールドの名前 | string | ||
value * | 値 | フィールドの値 | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
29.2. 依存関係
実行時に、insert-field-action
Kamelet は以下の依存関係の存在に依存します。
- github:openshift-integration.kamelet-catalog:camel-kamelets-utils:kamelet-catalog-1.6-SNAPSHOT
- camel:core
- camel:jackson
- camel:kamelet
29.3. 使用方法
ここでは、insert-field-action
の使用方法について説明します。
29.3.1. Knative Action
insert-field-action
Kamelet は、Knative バインディングの中間ステップとして使用できます。
insert-field-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: insert-field-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: '{"foo":"John"}' steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-deserialize-action - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-field-action properties: field: "The Field" value: "The Value" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
29.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
29.3.1.2. クラスター CLI の使用手順
-
insert-field-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f insert-field-action-binding.yaml
29.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind --name insert-field-action-binding timer-source?message='{"foo":"John"}' --step json-deserialize-action --step insert-field-action -p step-1.field='The Field' -p step-1.value='The Value' channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
29.3.2. Kafka Action
insert-field-action
Kamelet は、Kafka バインディングの中間ステップとして使用できます。
insert-field-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: insert-field-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: '{"foo":"John"}' steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-deserialize-action - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-field-action properties: field: "The Field" value: "The Value" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
29.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
29.3.2.2. クラスター CLI の使用手順
-
insert-field-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f insert-field-action-binding.yaml
29.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind --name insert-field-action-binding timer-source?message='{"foo":"John"}' --step json-deserialize-action --step insert-field-action -p step-1.field='The Field' -p step-1.value='The Value' kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
29.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/insert-field-action.kamelet.yaml
第30章 ヘッダーアクションの挿入
転送中のメッセージに定数値を持つヘッダーを追加します。
30.1. 設定オプション
以下の表では、insert-header-action
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
name * | 名前 | 追加するヘッダーの名前Knative の場合のみ、ヘッダーの名前には CloudEvent (ce-) 接頭辞が必要です。 | string | ||
value * | 値 | ヘッダーの値 | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
30.2. 依存関係
ランタイム時に、insert-header-action
Kamelet は、以下の依存関係の存在に依存します。
- camel:core
- camel:kamelet
30.3. 使用方法
本セクションでは、insert-header-action
の使用方法を説明します。
30.3.1. Knative Action
insert-header-action
Kamelet を Knative バインディングの中間ステップとして使用できます。
insert-header-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: insert-header-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "The Name" value: "The Value" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
30.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
30.3.1.2. クラスター CLI の使用手順
-
insert-header-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f insert-header-action-binding.yaml
30.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step insert-header-action -p "step-0.name=The Name" -p "step-0.value=The Value" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
30.3.2. Kafka Action
insert-header-action
Kamelet を Kafka バインディングの中間ステップとして使用することができます。
insert-header-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: insert-header-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "The Name" value: "The Value" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
30.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
30.3.2.2. クラスター CLI の使用手順
-
insert-header-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f insert-header-action-binding.yaml
30.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step insert-header-action -p "step-0.name=The Name" -p "step-0.value=The Value" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
30.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/insert-header-action.kamelet.yaml
第31章 Is Tombstone Filter Action
ボディーの存在に基づくフィルター
31.1. 設定オプション
is-tombstone-filter-action
Kamelet は設定オプションを指定しません。
31.2. 依存関係
実行時、is-tombstone-filter-action
Kamelet は、以下の依存関係の存在に依存しています。
- camel:core
- camel:kamelet
31.3. 使用方法
ここでは、is-tombstone-filter-action
の使用方法について説明します。
31.3.1. Knative Action
is-tombstone-filter-action
Kamelet は、Knative バインディングの中間ステップとして使用できます。
is-tombstone-filter-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: is-tombstone-filter-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: is-tombstone-filter-action sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
31.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
31.3.1.2. クラスター CLI の使用手順
-
is-tombstone-filter-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f is-tombstone-filter-action-binding.yaml
31.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step is-tombstone-filter-action channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
31.3.2. Kafka Action
is-tombstone-filter-action
Kamelet を Kafka バインディングの中間ステップとして使用することができます。
is-tombstone-filter-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: is-tombstone-filter-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: is-tombstone-filter-action sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
31.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
31.3.2.2. クラスター CLI の使用手順
-
is-tombstone-filter-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f is-tombstone-filter-action-binding.yaml
31.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step is-tombstone-filter-action kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
31.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/is-tombstone-filter-action.kamelet.yaml
第32章 Jira Add Comment Sink
Jira の既存の問題に新しいコメントを追加します。
Kamelet では、以下のヘッダーが設定されていることを想定しています。
-
issueKey
/ce-issueKey
: 発行コードとして。
コメントはメッセージの本文に設定されます。
32.1. 設定オプション
次の表は、jira-add-comment-sink
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
jiraUrl * | Jira URL | Jira インスタンスの URL | string |
| |
Password * | Password | Jira にアクセスするためのパスワードまたは API トークン | string | ||
username * | ユーザー名 | Jira にアクセスするためのユーザー名 | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
32.2. 依存関係
実行時に、jira-add-comment-sink
Kamelet は次の依存関係の存在に依存します。
- camel:core
- camel:jackson
- camel:jira
- camel:kamelet
- mvn:com.fasterxml.jackson.datatype:jackson-datatype-joda:2.12.4.redhat-00001
32.3. 使用方法
このセクションでは、jira-add-comment-sink
の使用方法について説明します。
32.3.1. Knative Sink
jira-add-comment-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative シンクとして使用できます。
jira-add-comment-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jira-add-comment-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueKey" value: "MYP-167" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel properties: jiraUrl: "jira server url" username: "username" password: "password"
32.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
32.3.1.2. クラスター CLI の使用手順
-
jira-add-comment-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f jira-add-comment-sink-binding.yaml
32.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind --name jira-add-comment-sink-binding timer-source?message="The new comment"\&period=60000 --step insert-header-action -p step-0.name=issueKey -p step-0.value=MYP-167 jira-add-comment-sink?password="password"\&username="username"\&jiraUrl="jira url"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
32.3.2. Kafka Sink
jira-add-comment-sink
Kamelet を Kafka トピックにバインドすることで、Kafka シンクとして使用できます。
jira-add-comment-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jira-add-comment-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueKey" value: "MYP-167" sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: jira-add-comment-sink properties: jiraUrl: "jira server url" username: "username" password: "password"
32.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
32.3.2.2. クラスター CLI の使用手順
-
jira-add-comment-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f jira-add-comment-sink-binding.yaml
32.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind --name jira-add-comment-sink-binding timer-source?message="The new comment"\&period=60000 --step insert-header-action -p step-0.name=issueKey -p step-0.value=MYP-167 jira-add-comment-sink?password="password"\&username="username"\&jiraUrl="jira url"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
32.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/jira-add-comment-sink.kamelet.yaml
第33章 Jira Add Issue Sink
Jira に新しい問題を追加します。
Kamelet では、以下のヘッダーが設定されていることを想定しています。
-
projectKey
/ce-projectKey
: Jira プロジェクトキーとして。 -
issueTypeName
/ce-issueTypeName
: 問題タイプの名前 (例: バグ、拡張) として。 -
issueSummary
/ce-issueSummary
: 問題のタイトルまたは概要として。 -
issueAssignee
/ce-issueAssignee
: 問題に割り当てられたユーザーとして (オプション)。 -
issuePriorityName
/ce-issuePriorityName
: 問題の優先度名として (例: Critical、Blocker、Trivial) (オプション)。 -
issueComponents
/ce-issueComponents
: 有効なコンポーネント名を含む文字列のリストとして (オプション)。 -
issueDescription
/ce-issueDescription
: 問題の説明として (オプション)。
問題の説明は、メッセージの本文またはヘッダーの issueDescription
/ce-issueDescription
から設定できますが、本文が優先されます。
33.1. 設定オプション
次の表は、jira-add-issue-sink
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
jiraUrl * | Jira URL | Jira インスタンスの URL | string |
| |
Password * | Password | Jira にアクセスするためのパスワードまたは API トークン | string | ||
username * | ユーザー名 | Jira にアクセスするためのユーザー名 | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
33.2. 依存関係
jira-add-issue-sink
Kamelet は、実行時に以下の依存関係の存在に依存します。
- camel:core
- camel:jackson
- camel:jira
- camel:kamelet
- mvn:com.fasterxml.jackson.datatype:jackson-datatype-joda:2.12.4.redhat-00001
33.3. 使用方法
このセクションでは、jira-add-issue-sink
の使用方法について説明します。
33.3.1. Knative Sink
jira-add-issue-sink
Kamelet を Knative オブジェクトにバインドし、これを Knative シンクとして使用できます。
jira-add-issue-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jira-add-issue-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "projectKey" value: "MYP" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueTypeName" value: "Bug" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueSummary" value: "The issue summary" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issuePriorityName" value: "Low" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel properties: jiraUrl: "jira server url" username: "username" password: "password"
33.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
33.3.1.2. クラスター CLI の使用手順
-
jira-add-issue-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f jira-add-issue-sink-binding.yaml
33.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind --name jira-add-issue-sink-binding timer-source?message="The new comment"\&period=60000 --step insert-header-action -p step-0.name=projectKey -p step-0.value=MYP --step insert-header-action -p step-1.name=issueTypeName -p step-1.value=Bug --step insert-header-action -p step-2.name=issueSummary -p step-2.value="This is a bug" --step insert-header-action -p step-3.name=issuePriorityName -p step-3.value=Low jira-add-issue-sink?jiraUrl="jira url"\&username="username"\&password="password"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
33.3.2. Kafka Sink
jira-add-issue-sink
Kamelet を Kafka トピックにバインドすることで、Kafka シンクとして使用できます。
jira-add-issue-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jira-add-issue-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "projectKey" value: "MYP" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueTypeName" value: "Bug" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueSummary" value: "The issue summary" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issuePriorityName" value: "Low" sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: jira-add-issue-sink properties: jiraUrl: "jira server url" username: "username" password: "password"
33.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
33.3.2.2. クラスター CLI の使用手順
-
jira-add-issue-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f jira-add-issue-sink-binding.yaml
33.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind --name jira-add-issue-sink-binding timer-source?message="The new comment"\&period=60000 --step insert-header-action -p step-0.name=projectKey -p step-0.value=MYP --step insert-header-action -p step-1.name=issueTypeName -p step-1.value=Bug --step insert-header-action -p step-2.name=issueSummary -p step-2.value="This is a bug" --step insert-header-action -p step-3.name=issuePriorityName -p step-3.value=Low jira-add-issue-sink?jiraUrl="jira url"\&username="username"\&password="password"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
33.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/jira-add-issue-sink.kamelet.yaml
第34章 Jira Transition Issue Sink
Jira の既存の問題の新しいステータス (遷移先) を設定します。
Kamelet では、以下のヘッダーが設定されていることを想定しています。
-
issueKey
/ce-issueKey
: 発行固有コードとして。 -
issueTransitionId
/ce-issueTransitionId
: 新しいステータス (遷移) コードとして。各遷移には、遷移を行う前に確認する条件がある場合があるため、プロジェクトのワークフローを慎重に確認する必要があります。
遷移のコメントは、メッセージの本文に設定されます。
34.1. 設定オプション
次の表は、jira-transition-issue-sink
Kamelet で使用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
jiraUrl * | Jira URL | Jira インスタンスの URL | string |
| |
Password * | Password | Jira にアクセスするためのパスワードまたは API トークン | string | ||
username * | ユーザー名 | Jira にアクセスするためのユーザー名 | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
34.2. 依存関係
実行時、jira-transition-issue-sink
Kamelet は次の依存関係の存在に依存します。
- camel:core
- camel:jackson
- camel:jira
- camel:kamelet
- mvn:com.fasterxml.jackson.datatype:jackson-datatype-joda:2.12.4.redhat-00001
34.3. 使用方法
このセクションでは、jira-transition-issue-sink
の使用方法について説明します。
34.3.1. Knative Sink
jira-transition-issue-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative シンクとして使用できます。
jira-transition-issue-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jira-transition-issue-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueTransitionId" value: 701 - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueKey" value: "MYP-162" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel properties: jiraUrl: "jira server url" username: "username" password: "password"
34.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
34.3.1.2. クラスター CLI の使用手順
-
jira-transition-issue-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f jira-transition-issue-sink-binding.yaml
34.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind --name jira-transition-issue-sink-binding timer-source?message="The new comment 123"\&period=60000 --step insert-header-action -p step-0.name=issueKey -p step-0.value=MYP-170 --step insert-header-action -p step-1.name=issueTransitionId -p step-1.value=5 jira-transition-issue-sink?jiraUrl="jira url"\&username="username"\&password="password"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
34.3.2. Kafka Sink
jira-transition-issue-sink
Kamelet を Kafka トピックにバインドすることで、Kafka シンクとして使用できます。
jira-transition-issue-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jira-transition-issue-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueTransitionId" value: 701 - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueKey" value: "MYP-162" sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: jira-transition-issue-sink properties: jiraUrl: "jira server url" username: "username" password: "password"
34.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
34.3.2.2. クラスター CLI の使用手順
-
jira-transition-issue-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f jira-transition-issue-sink-binding.yaml
34.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind --name jira-transition-issue-sink-binding timer-source?message="The new comment 123"\&period=60000 --step insert-header-action -p step-0.name=issueKey -p step-0.value=MYP-170 --step insert-header-action -p step-1.name=issueTransitionId -p step-1.value=5 jira-transition-issue-sink?jiraUrl="jira url"\&username="username"\&password="password"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
34.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/jira-transition-issue-sink.kamelet.yaml
第35章 Jira Update Issue Sink
Jira の既存の問題のフィールドを更新します。Kamelet では、以下のヘッダーが設定されていることを想定しています。
-
issueKey
/ce-issueKey
: Jira の問題コードとして。 -
issueTypeName
/ce-issueTypeName
: 問題タイプの名前 (例: バグ、拡張) として。 -
issueSummary
/ce-issueSummary
: 問題のタイトルまたは概要として。 -
issueAssignee
/ce-issueAssignee
: 問題に割り当てられたユーザーとして (オプション)。 -
issuePriorityName
/ce-issuePriorityName
: 問題の優先度名として (例: Critical、Blocker、Trivial) (オプション)。 -
issueComponents
/ce-issueComponents
: 有効なコンポーネント名を含む文字列のリストとして (オプション)。 -
issueDescription
/ce-issueDescription
: 問題の説明として (オプション)。
問題の説明は、メッセージの本文またはヘッダーの issueDescription
/ce-issueDescription
から設定できますが、本文が優先されます。
35.1. 設定オプション
次の表は、jira-update-issue-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
jiraUrl * | Jira URL | Jira インスタンスの URL | string |
| |
Password * | Password | Jira にアクセスするためのパスワードまたは API トークン | string | ||
username * | ユーザー名 | Jira にアクセスするためのユーザー名 | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
35.2. 依存関係
jira-update-issue-sink
Kamelet は、実行時に以下の依存関係の存在に依存します。
- camel:core
- camel:jackson
- camel:jira
- camel:kamelet
- mvn:com.fasterxml.jackson.datatype:jackson-datatype-joda:2.12.4.redhat-00001
35.3. 使用方法
このセクションでは、jira-update-issue-sink の
使用方法について説明します。
35.3.1. Knative Sink
jira-update-issue-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative シンクとして使用することができます。
jira-update-issue-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jira-update-issue-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueKey" value: "MYP-163" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueTypeName" value: "Bug" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueSummary" value: "The issue summary" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issuePriorityName" value: "Low" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel properties: jiraUrl: "jira server url" username: "username" password: "password"
35.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
35.3.1.2. クラスター CLI の使用手順
-
jira-update-issue-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f jira-update-issue-sink-binding.yaml
35.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind --name jira-update-issue-sink-binding timer-source?message="The new comment"\&period=60000 --step insert-header-action -p step-0.name=issueKey -p step-0.value=MYP-170 --step insert-header-action -p step-1.name=issueTypeName -p step-1.value=Story --step insert-header-action -p step-2.name=issueSummary -p step-2.value="This is a story 123" --step insert-header-action -p step-3.name=issuePriorityName -p step-3.value=Highest jira-update-issue-sink?jiraUrl="jira url"\&username="username"\&password="password"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
35.3.2. Kafka Sink
jira-update-issue-sink
Kamelet を Kafka トピックにバインドすることで、Kafka シンクとして使用することが可能です。
jira-update-issue-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jira-update-issue-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueKey" value: "MYP-163" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueTypeName" value: "Bug" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issueSummary" value: "The issue summary" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: insert-header-action properties: name: "issuePriorityName" value: "Low" sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: jira-update-issue-sink properties: jiraUrl: "jira server url" username: "username" password: "password"
35.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
35.3.2.2. クラスター CLI の使用手順
-
jira-update-issue-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f jira-update-issue-sink-binding.yaml
35.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind --name jira-update-issue-sink-binding timer-source?message="The new comment"\&period=60000 --step insert-header-action -p step-0.name=issueKey -p step-0.value=MYP-170 --step insert-header-action -p step-1.name=issueTypeName -p step-1.value=Story --step insert-header-action -p step-2.name=issueSummary -p step-2.value="This is a story 123" --step insert-header-action -p step-3.name=issuePriorityName -p step-3.value=Highest jira-update-issue-sink?jiraUrl="jira url"\&username="username"\&password="password"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
35.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/jira-update-issue-sink.kamelet.yaml
第36章 JIRA ソース
Jira から新しい問題に関する通知を受け取ります。
36.1. 設定オプション
次の表は、jira-source
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
jiraUrl * | Jira URL | Jira インスタンスの URL | string |
| |
Password * | Password | Jira にアクセスするためのパスワード | string | ||
username * | ユーザー名 | Jira にアクセスするためのユーザー名 | string | ||
jql | JQL | 問題をフィルターするクエリー | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
36.2. 依存関係
ランタイム時に、jira-source
Kamelet は以下の依存関係の存在に依存します。
- camel:jackson
- camel:kamelet
- camel:jira
36.3. 使用方法
ここでは、jira-source
の使用方法について説明します。
36.3.1. Knative ソース
jira-source
Kamelet を Knative オブジェクトにバインドすることで、Knative ソースとして使用することができます。
jira-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jira-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: jira-source properties: jiraUrl: "http://my_jira.com:8081" password: "The Password" username: "The Username" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
36.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
36.3.1.2. クラスター CLI の使用手順
-
jira-source-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f jira-source-binding.yaml
36.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind jira-source -p "source.jiraUrl=http://my_jira.com:8081" -p "source.password=The Password" -p "source.username=The Username" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
36.3.2. Kafka Source
jira-source
Kamelet を Kafka トピックにバインドすることにより、Kafka のソースとして使用できます。
jira-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jira-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: jira-source properties: jiraUrl: "http://my_jira.com:8081" password: "The Password" username: "The Username" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
36.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
36.3.2.2. クラスター CLI の使用手順
-
jira-source-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f jira-source-binding.yaml
36.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind jira-source -p "source.jiraUrl=http://my_jira.com:8081" -p "source.password=The Password" -p "source.username=The Username" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
36.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/jira-source.kamelet.yaml
第37章 JMS: AMQP 1.0 Kamelet Sink
Apache Qpid JMS クライアントを使用して、任意の AMQP 1.0 準拠のメッセージブローカーにイベントを生成できる Kamelet
37.1. 設定オプション
次の表は、jms-amqp-10-sink
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
destinationName * | 宛先名 | JMS 宛先名 | string | ||
remoteURI * | ブローカーの URL | JMS URL | string |
| |
destinationType | 宛先タイプ | JMS 宛先タイプ (例: キューまたはトピック) | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
37.2. 依存関係
jms-amqp-10-sink
Kamelet は、実行時に以下の依存関係の存在に依存します。
- camel:jms
- camel:kamelet
- mvn:org.apache.qpid:qpid-jms-client:0.55.0
37.3. 使用方法
本セクションでは、jms -amqp-10-sink
の使用方法を説明します。
37.3.1. Knative Sink
jms-amqp-10-sink
Kamelet を Knative オブジェクトにバインドし、これを Knative シンクとして使用できます。
jms-amqp-10-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jms-amqp-10-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: jms-amqp-10-sink properties: destinationName: "The Destination Name" remoteURI: "amqp://my-host:31616"
37.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
37.3.1.2. クラスター CLI の使用手順
-
jms-amqp-10-sink-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してシンクを実行します。
oc apply -f jms-amqp-10-sink-binding.yaml
37.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel jms-amqp-10-sink -p "sink.destinationName=The Destination Name" -p "sink.remoteURI=amqp://my-host:31616"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
37.3.2. Kafka Sink
jms-amqp-10-sink
Kamelet を Kafka シンクとして使用することは、Kafka トピックにバインドします。
jms-amqp-10-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jms-amqp-10-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: jms-amqp-10-sink properties: destinationName: "The Destination Name" remoteURI: "amqp://my-host:31616"
37.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
37.3.2.2. クラスター CLI の使用手順
-
jms-amqp-10-sink-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してシンクを実行します。
oc apply -f jms-amqp-10-sink-binding.yaml
37.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic jms-amqp-10-sink -p "sink.destinationName=The Destination Name" -p "sink.remoteURI=amqp://my-host:31616"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
37.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/jms-amqp-10-sink.kamelet.yaml
第38章 JMS: AMQP 1.0 Kamelet ソース
Apache Qpid JMS クライアントを使用して、どの AMQP 1.0 準拠メッセージブローカーからのイベントを消費できる Kamelet
38.1. 設定オプション
次の表は、jms-amqp-10-source
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
destinationName * | 宛先名 | JMS 宛先名 | string | ||
remoteURI * | ブローカーの URL | JMS URL | string |
| |
destinationType | 宛先タイプ | JMS 宛先タイプ (例: キューまたはトピック) | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
38.2. 依存関係
jms-amqp-10-source
Kamelet は、実行時に以下の依存関係の存在に依存します。
- camel:jms
- camel:kamelet
- mvn:org.apache.qpid:qpid-jms-client:0.55.0
38.3. 使用方法
ここでは、jms-amqp-10-source
の使用方法について説明します。
38.3.1. Knative ソース
jms-amqp-10-source
Kamelet を Knative オブジェクトにバインドすることで、Knative ソースとして使用することができます。
jms-amqp-10-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jms-amqp-10-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: jms-amqp-10-source properties: destinationName: "The Destination Name" remoteURI: "amqp://my-host:31616" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
38.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
38.3.1.2. クラスター CLI の使用手順
-
jms-amqp-10-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f jms-amqp-10-source-binding.yaml
38.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind jms-amqp-10-source -p "source.destinationName=The Destination Name" -p "source.remoteURI=amqp://my-host:31616" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
38.3.2. Kafka Source
jms-amqp-10-source
Kamelet を Kafka トピックにバインドすることにより、Kafka ソースとして使用できます。
jms-amqp-10-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jms-amqp-10-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: jms-amqp-10-source properties: destinationName: "The Destination Name" remoteURI: "amqp://my-host:31616" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
38.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
38.3.2.2. クラスター CLI の使用手順
-
jms-amqp-10-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f jms-amqp-10-source-binding.yaml
38.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind jms-amqp-10-source -p "source.destinationName=The Destination Name" -p "source.remoteURI=amqp://my-host:31616" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
38.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/jms-amqp-10-source.kamelet.yaml
第39章 JMS - IBM MQ Kamelet シンク
JMS を使用して IBM MQ メッセージキューにイベントを生成できる Kamelet。
39.1. 設定オプション
次の表は、jms-ibm-mq-sink
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
channel * | IBM MQ Channel | IBM MQ チャネルの名前 | string | ||
destinationName * | 宛先名 | 宛先名 | string | ||
Password * | Password | IBM MQ サーバーに対して認証するためのパスワード | string | ||
queueManager * | IBM MQ Queue Manager | IBM MQ Queue Manager の名前 | string | ||
serverName * | IBM MQ Server サーバー名 | IBM MQ Server の名前またはアドレス | string | ||
serverPort * | IBM MQ Server ポート | IBM MQ Server ポート | integer |
| |
username * | ユーザー名 | IBM MQ サーバーに対して認証するためのユーザー名 | string | ||
clientId | IBM MQ Client ID | IBM MQ クライアント ID の名前 | string | ||
destinationType | 宛先タイプ | JMS 宛先タイプ (キューまたはトピック) | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
39.2. 依存関係
jms-ibm-mq-sink
Kamelet は、実行時に以下の依存関係の存在に依存します。
- camel:jms
- camel:kamelet
- mvn:com.ibm.mq:com.ibm.mq.allclient:9.2.5.0
39.3. 使用方法
このセクションでは、jms-ibm-mq-sink
の使用方法について説明します。
39.3.1. Knative Sink
jms-ibm-mq-sink
Kamelet を Knative オブジェクトにバインドし、これを Knative シンクとして使用できます。
jms-ibm-mq-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jms-ibm-mq-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel properties: serverName: "10.103.41.245" serverPort: "1414" destinationType: "queue" destinationName: "DEV.QUEUE.1" queueManager: QM1 channel: DEV.APP.SVRCONN username: app password: passw0rd
39.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
39.3.1.2. クラスター CLI の使用手順
-
jms-ibm-mq-sink-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してシンクを実行します。
oc apply -f jms-ibm-mq-sink-binding.yaml
39.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind --name jms-ibm-mq-sink-binding timer-source?message="Hello IBM MQ!" 'jms-ibm-mq-sink?serverName=10.103.41.245&serverPort=1414&destinationType=queue&destinationName=DEV.QUEUE.1&queueManager=QM1&channel=DEV.APP.SVRCONN&username=app&password=passw0rd'
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
39.3.2. Kafka Sink
jms-ibm-mq-sink
Kamelet を Kafka シンクとして使用することは、Kafka トピックにバインドします。
jms-ibm-mq-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jms-ibm-mq-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: jms-ibm-mq-sink properties: serverName: "10.103.41.245" serverPort: "1414" destinationType: "queue" destinationName: "DEV.QUEUE.1" queueManager: QM1 channel: DEV.APP.SVRCONN username: app password: passw0rd
39.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
39.3.2.2. クラスター CLI の使用手順
-
jms-ibm-mq-sink-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してシンクを実行します。
oc apply -f jms-ibm-mq-sink-binding.yaml
39.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind --name jms-ibm-mq-sink-binding timer-source?message="Hello IBM MQ!" 'jms-ibm-mq-sink?serverName=10.103.41.245&serverPort=1414&destinationType=queue&destinationName=DEV.QUEUE.1&queueManager=QM1&channel=DEV.APP.SVRCONN&username=app&password=passw0rd'
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
39.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/jms-ibm-mq-sink.kamelet.yaml
第40章 JMS - IBM MQ Kamelet ソース
JMS を使用して IBM MQ メッセージキューからイベントを読み取ることができる Kamelet。
40.1. 設定オプション
次の表は、jms-ibm-mq-source
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
channel * | IBM MQ Channel | IBM MQ チャネルの名前 | string | ||
destinationName * | 宛先名 | 宛先名 | string | ||
Password * | Password | IBM MQ サーバーに対して認証するためのパスワード | string | ||
queueManager * | IBM MQ Queue Manager | IBM MQ Queue Manager の名前 | string | ||
serverName * | IBM MQ Server サーバー名 | IBM MQ Server の名前またはアドレス | string | ||
serverPort * | IBM MQ Server ポート | IBM MQ Server ポート | integer |
| |
username * | ユーザー名 | IBM MQ サーバーに対して認証するためのユーザー名 | string | ||
clientId | IBM MQ Client ID | IBM MQ クライアント ID の名前 | string | ||
destinationType | 宛先タイプ | JMS 宛先タイプ (キューまたはトピック) | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
40.2. 依存関係
jms-ibm-mq-source
Kamelet は、実行時に以下の依存関係の存在に依存します。
- camel:jms
- camel:kamelet
- mvn:com.ibm.mq:com.ibm.mq.allclient:9.2.5.0
40.3. 使用方法
このセクションでは、jms-ibm-mq-source
の使用方法について説明します。
40.3.1. Knative ソース
jms-ibm-mq-source
Kamelet を Knative オブジェクトにバインドすることで、Knative ソースとして使用することができます。
jms-ibm-mq-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jms-ibm-mq-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: jms-ibm-mq-source properties: serverName: "10.103.41.245" serverPort: "1414" destinationType: "queue" destinationName: "DEV.QUEUE.1" queueManager: QM1 channel: DEV.APP.SVRCONN username: app password: passw0rd sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
40.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
40.3.1.2. クラスター CLI の使用手順
-
jms-ibm-mq-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f jms-ibm-mq-source-binding.yaml
40.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind --name jms-ibm-mq-source-binding 'jms-ibm-mq-source?serverName=10.103.41.245&serverPort=1414&destinationType=queue&destinationName=DEV.QUEUE.1&queueManager=QM1&channel=DEV.APP.SVRCONN&username=app&password=passw0rd' channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
40.3.2. Kafka Source
jms-ibm-mq-source
Kamelet を Kafka トピックにバインドすることにより、Kafka ソースとして使用できます。
jms-ibm-mq-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jms-ibm-mq-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: jms-ibm-mq-source properties: serverName: "10.103.41.245" serverPort: "1414" destinationType: "queue" destinationName: "DEV.QUEUE.1" queueManager: QM1 channel: DEV.APP.SVRCONN username: app password: passw0rd sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
40.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
40.3.2.2. クラスター CLI の使用手順
-
jms-ibm-mq-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f jms-ibm-mq-source-binding.yaml
40.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind --name jms-ibm-mq-source-binding 'jms-ibm-mq-source?serverName=10.103.41.245&serverPort=1414&destinationType=queue&destinationName=DEV.QUEUE.1&queueManager=QM1&channel=DEV.APP.SVRCONN&username=app&password=passw0rd' kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
40.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/jms-ibm-mq-source.kamelet.yaml
第41章 JSLT アクション
JSON に JSLT クエリーまたは変換を適用します。
41.1. 設定オプション
次の表は、jslt-action
Kamelet で使用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
template * | テンプレート | JSLT Transformation のインラインテンプレート | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
41.2. 依存関係
実行時に、jslt-action
Kamelet は次の依存関係の存在に依存します。
- camel:jslt
- camel:kamelet
41.3. 使用方法
このセクションでは、jslt-action
の使用方法について説明します。
41.3.1. Knative Action
jslt-action
Kamelet を Knative バインドの中間ステップとして使用できます。
jslt-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jslt-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: {"foo" : "bar"} steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: jslt-action properties: template: "file://template.json" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
41.3.1.1. 前提条件
接続先の OpenShift クラスターに Red Hat Integration - Camel K がインストールされていることを確認します。
41.3.1.2. クラスター CLI の使用手順
-
jslt-action-binding.yaml
ファイルをローカルドライブに保存し、設定の必要に応じて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f jslt-action-binding.yaml
41.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step jslt-action -p "step-0.template=file://template.json" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
テンプレートが現在のディレクトリーにないファイルを指している場合、および file://
または classpath://
が使用されている場合は、シークレットまたは configmap を使用して変換を提供します。
例を表示するには、with secret および with configmap を参照してください。必要なトレイトの詳細については、Mount トレイト および JVM クラスパストレイト を参照してください。
41.3.2. Kafka Action
jslt-action
Kamelet を Kafka バインドの中間ステップとして使用できます。
jslt-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: jslt-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: {"foo" : "bar"} steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: jslt-action properties: template: "file://template.json" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
41.3.2.1. 前提条件
OpenShift クラスターに AMQ Streams Operator がインストールされていることを確認し、現在の namespace に my-topic
という名前のトピックを作成します。また、接続先の OpenShift クラスターに Red Hat Integration - Camel K がインストールされている必要があります。
41.3.2.2. クラスター CLI の使用手順
-
jslt-action-binding.yaml
ファイルをローカルドライブに保存し、設定の必要に応じて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f jslt-action-binding.yaml
41.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step jslt-action -p "step-0.template=file://template.json" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
41.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/blob/main/jslt-action.kamelet.yaml
第42章 JSON デシリアライズアクション
ペイロードを JSON にデシリアライズ
42.1. 設定オプション
json-deserialize-action
Kamelet は設定オプションを指定しません。
42.2. 依存関係
json-deserialize-action
Kamelet は、実行時に以下の依存関係の存在に依存しています。
- camel:kamelet
- camel:core
- camel:jackson
42.3. 使用方法
ここでは、Json-deserialize-action
の使い方を説明します。
42.3.1. Knative Action
json-deserialize-action
Kamelet は、Knative バインディングの中間ステップとして使用できます。
json-deserialize-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: json-deserialize-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-deserialize-action sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
42.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
42.3.1.2. クラスター CLI の使用手順
-
json-deserialize-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用して、アクションを実行します。
oc apply -f json-deserialize-action-binding.yaml
42.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step json-deserialize-action channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
42.3.2. Kafka Action
json-deserialize-action
Kamelet は、Kafka バインディングの中間ステップとして使用することができます。
json-deserialize-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: json-deserialize-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-deserialize-action sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
42.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
42.3.2.2. クラスター CLI の使用手順
-
json-deserialize-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用して、アクションを実行します。
oc apply -f json-deserialize-action-binding.yaml
42.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step json-deserialize-action kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
42.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/json-deserialize-action.kamelet.yaml
第43章 JSON シリアルアクション
ペイロードを JSON にシリアライズする
43.1. 設定オプション
json-serialize-action
Kamelet は設定オプションを指定しません。
43.2. 依存関係
実行時に、json-serialize-action
Kamelet は以下の依存関係の存在に依存します。
- camel:kamelet
- camel:core
- camel:jackson
43.3. 使用方法
ここでは、json-serialize-action
の使い方を説明します。
43.3.1. Knative Action
json-serialize-action
Kamelet は、Knative のバインディングの中間ステップとして使用することができます。
json-serialize-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: json-serialize-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-serialize-action sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
43.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
43.3.1.2. クラスター CLI の使用手順
-
json-serialize-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用して、アクションを実行します。
oc apply -f json-serialize-action-binding.yaml
43.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step json-serialize-action channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
43.3.2. Kafka Action
json-serialize-action
Kamelet は、Kafka バインディングの中間ステップとして使用することができます。
json-serialize-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: json-serialize-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-serialize-action sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
43.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
43.3.2.2. クラスター CLI の使用手順
-
json-serialize-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用して、アクションを実行します。
oc apply -f json-serialize-action-binding.yaml
43.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step json-serialize-action kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
43.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/json-serialize-action.kamelet.yaml
第44章 Kafka Sink
データを Kafka トピックに送信します。
Kamelet は、設定するヘッダーについて理解することができます。
-
key
/ce-key
: メッセージキーとして -
partition-key
/ce-partitionkey
: メッセージパーティションキーとして
ヘッダーはいずれもオプションです。
44.1. 設定オプション
次の表は、kafka-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
bootstrapServers * | ブローカー | Kafka Broker URL のコンマ区切りリスト | string | ||
Password * | Password | kafka に対して認証を行うためのパスワード | string | ||
Topic * | トピック名 | Kafka トピック名のコンマ区切りリスト | string | ||
user * | ユーザー名 | Kafka に対して認証を行うためのユーザー名 | string | ||
saslMechanism | SASL メカニズム | 使用される Simple Authentication and Security Layer(SASL) メカニズム。 | string |
| |
securityProtocol | セキュリティープロトコル | ブローカーとの通信に使用されるプロトコル。SASL_PLAINTEXT、PLAINTEXT、SASL_SSL、および SSL がサポートされます。 | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
44.2. 依存関係
kafka-sink Kamelet は、以下の依存関係の存在に依存します。
- camel:kafka
- camel:kamelet
44.3. 使用方法
ここでは、kafka-sink
の使用方法について説明します。
44.3.1. Knative Sink
kafka-sink
Kamelet を Knative のオブジェクトにバインドすることで、Knative のシンクとして使用することができます。
kafka-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: kafka-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: kafka-sink properties: bootstrapServers: "The Brokers" password: "The Password" topic: "The Topic Names" user: "The Username"
44.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
44.3.1.2. クラスター CLI の使用手順
-
kafka-sink-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してシンクを実行します。
oc apply -f kafka-sink-binding.yaml
44.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel kafka-sink -p "sink.bootstrapServers=The Brokers" -p "sink.password=The Password" -p "sink.topic=The Topic Names" -p "sink.user=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
44.3.2. Kafka Sink
kafka-sink
Kamelet を Kafka トピックにバインドすることにより、Kafka シンクとして使用できます。
kafka-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: kafka-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: kafka-sink properties: bootstrapServers: "The Brokers" password: "The Password" topic: "The Topic Names" user: "The Username"
44.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
44.3.2.2. クラスター CLI の使用手順
-
kafka-sink-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してシンクを実行します。
oc apply -f kafka-sink-binding.yaml
44.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic kafka-sink -p "sink.bootstrapServers=The Brokers" -p "sink.password=The Password" -p "sink.topic=The Topic Names" -p "sink.user=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
44.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/kafka-sink.kamelet.yaml
第45章 Kafka Source
Kafka トピックからデータを受信します。
45.1. 設定オプション
次の表は、kafka-source
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
Topic * | トピック名 | Kafka トピック名のコンマ区切りリスト | string | ||
bootstrapServers * | ブローカー | Kafka Broker URL のコンマ区切りリスト | string | ||
securityProtocol | セキュリティープロトコル | ブローカーとの通信に使用されるプロトコル。SASL_PLAINTEXT、PLAINTEXT、SASL_SSL、および SSL がサポートされます。 | string |
| |
saslMechanism | SASL メカニズム | 使用される Simple Authentication and Security Layer(SASL) メカニズム。 | string |
| |
user * | ユーザー名 | Kafka に対して認証を行うためのユーザー名 | string | ||
Password * | Password | kafka に対して認証を行うためのパスワード | string | ||
autoCommitEnable | 自動コミットの有効化 | true の場合、コンシューマーによってすでにフェッチされているメッセージのオフセットを ZooKeeper に定期的にコミットします。 | boolean |
| |
allowManualCommit | 手動コミットを許可する | 手動コミットを許可するかどうか。 | boolean |
| |
autoOffsetReset | 自動オフセットリセット | 初期オフセットがない場合のアクション。列挙は 3 つあり、値は latest、earliest、none のいずれかです。 | string |
| |
pollOnError | poll On エラー動作 | 新しいメッセージのポーリング中に、kafka が例外を出力した場合のアクション。5 つの列挙があり、値は DISCARD、ERROR_HANDLER、RECONNECT、RETRY、STOP のいずれかです。 | string |
| |
deserializeHeaders | ヘッダーを自動的に逆シリアル化 |
有効にすると、Kamelet ソースはすべてのメッセージヘッダーを文字列表現に逆シリアル化します。デフォルトは | boolean |
| |
consumerGroup | コンシューマーグループ | このソースが属するコンシューマーのグループを一意に識別する文字列 | string | "my-group-id" |
アスタリスク (*) のマークが付いたフィールドは必須です。
45.2. 依存関係
実行時に、`kafka-source Kamelet は以下の依存関係の存在に依存します。
- camel:kafka
- camel:kamelet
- camel:core
45.3. 使用方法
ここでは、kafka-source
の使用方法について説明します。
45.3.1. Knative ソース
kafka-source
Kamelet を Knative オブジェクトにバインドすることで、Knative ソースとして使用することができます。
kafka-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: kafka-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: kafka-source properties: bootstrapServers: "The Brokers" password: "The Password" topic: "The Topic Names" user: "The Username" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
45.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
45.3.1.2. クラスター CLI の使用手順
-
kafka-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f kafka-source-binding.yaml
45.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind kafka-source -p "source.bootstrapServers=The Brokers" -p "source.password=The Password" -p "source.topic=The Topic Names" -p "source.user=The Username" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
45.3.2. Kafka Source
kafka-source
Kamelet を Kafka トピックにバインドすることにより、Kafka のソースとして使用できます。
kafka-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: kafka-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: kafka-source properties: bootstrapServers: "The Brokers" password: "The Password" topic: "The Topic Names" user: "The Username" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
45.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
45.3.2.2. クラスター CLI の使用手順
-
kafka-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f kafka-source-binding.yaml
45.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind kafka-source -p "source.bootstrapServers=The Brokers" -p "source.password=The Password" -p "source.topic=The Topic Names" -p "source.user=The Username" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
45.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/kafka-source.kamelet.yaml
第46章 Kafka Topic Name の Filter アクション
正規表現と比較した kafka トピック値に基づくフィルター
46.1. 設定オプション
次の表は、topic-nam-matches-filter-action
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
regex * | Regex | Kafka トピック名に対して評価する Regex | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
46.2. 依存関係
ランタイム時に、topic-name-matches-filter-action
Kamelet は、以下の依存関係の存在に依存します。
- camel:core
- camel:kamelet
46.3. 使用方法
本セクションでは、topic-name-matches-filter-action
を使用する方法を説明します。
46.3.1. Kafka Action
topic-name-matches-filter-action
Kamelet を Kafka バインディングの中間ステップとして使用することができます。
topic-name-matches-filter-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: topic-name-matches-filter-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: topic-name-matches-filter-action properties: regex: "The Regex" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
46.3.1.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
46.3.1.2. クラスター CLI の使用手順
-
topic-name-matches-filter-action-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f topic-name-matches-filter-action-binding.yaml
46.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step topic-name-matches-filter-action -p "step-0.regex=The Regex" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
46.4. Kamelet ソースファイル
第47章 Log Sink
受信するすべてのデータをログに記録するシンクは、デバッグに役立ちます。
47.1. 設定オプション
以下の表は、log-sink
Kamelet で利用可能な設定オプションの概要を示しています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
showHeaders | show Headers | 受信したヘッダーを表示します。 | boolean |
| |
showStreams | Streams を表示 | ストリーム本文を表示します (以下の手順では利用できない場合があります)。 | boolean |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
47.2. 依存関係
ランタイム時に、log-sink
Kamelet は、以下の依存関係の存在に依存します。
- camel:kamelet
- camel:log
47.3. 使用方法
本セクションでは、log-sink
を使用する方法について説明します。
47.3.1. Knative Sink
log-sink
Kamelet を Knative オブジェクトにバインドし、Knative シンクとして使用できます。
log-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: log-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: log-sink
47.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
47.3.1.2. クラスター CLI の使用手順
-
log-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f log-sink-binding.yaml
47.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel log-sink
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
47.3.2. Kafka Sink
log-sink
Kamelet を Kafka トピックにバインドすることにより、Kafka シンクとして使用できます。
log-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: log-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: log-sink
47.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
47.3.2.2. クラスター CLI の使用手順
-
log-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f log-sink-binding.yaml
47.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic log-sink
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
47.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/log-sink.kamelet.yaml
第48章 MariaDB シンク
MariaDB データベースにデータを送信します。
この Kamelet は JSON をボディーとして想定します。JSON フィールドとパラメーター間のマッピングはキーで実行されるため、以下のクエリーがある場合は以下を実行します。
'INSERT INTO accounts (username,city) VALUES (:#username,:#city)'
Kamelet は、以下のような入力として受信する必要があります。
'{ "username":"oscerd", "city":"Rome"}'
48.1. 設定オプション
以下の表では、mariadb-sink
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
databaseName * | データベース名 | ポイントするデータベース名 | string | ||
Password * | Password | セキュリティーで保護された MariaDB データベースにアクセスするために使用するパスワード | string | ||
query * | Query | MariaDB データベースに対して実行するクエリー | string |
| |
serverName * | サーバー名 | データソースのサーバー名 | string |
| |
username * | ユーザー名 | セキュリティーで保護された MariaDB データベースにアクセスするために使用するユーザー名 | string | ||
serverPort | サーバーポート | データソースのサーバーポート | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
48.2. 依存関係
ランタイム時に、mariadb-sink
Kamelet は、以下の依存関係の存在に依存します。
- camel:jackson
- camel:kamelet
- camel:sql
- mvn:org.apache.commons:commons-dbcp2:2.7.0.redhat-00001
- mvn:org.mariadb.jdbc:mariadb-java-client
48.3. 使用方法
このセクションでは、mariadb-sink
の使用方法について説明します。
48.3.1. Knative Sink
mariadb-sink
Kamelet を Knative オブジェクトにバインドし、これを Knative シンクとして使用できます。
mariadb-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: mariadb-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: mariadb-sink properties: databaseName: "The Database Name" password: "The Password" query: "INSERT INTO accounts (username,city) VALUES (:#username,:#city)" serverName: "localhost" username: "The Username"
48.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
48.3.1.2. クラスター CLI の使用手順
-
mariadb-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f mariadb-sink-binding.yaml
48.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel mariadb-sink -p "sink.databaseName=The Database Name" -p "sink.password=The Password" -p "sink.query=INSERT INTO accounts (username,city) VALUES (:#username,:#city)" -p "sink.serverName=localhost" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
48.3.2. Kafka Sink
mariadb-sink
Kamelet を Kafka トピックにバインドすることにより、Kafka シンクとして使用できます。
mariadb-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: mariadb-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: mariadb-sink properties: databaseName: "The Database Name" password: "The Password" query: "INSERT INTO accounts (username,city) VALUES (:#username,:#city)" serverName: "localhost" username: "The Username"
48.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
48.3.2.2. クラスター CLI の使用手順
-
mariadb-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f mariadb-sink-binding.yaml
48.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic mariadb-sink -p "sink.databaseName=The Database Name" -p "sink.password=The Password" -p "sink.query=INSERT INTO accounts (username,city) VALUES (:#username,:#city)" -p "sink.serverName=localhost" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
48.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/mariadb-sink.kamelet.yaml
第49章 mask フィールドアクション
送信中のメッセージで定数値を持つフィールドをマスクします
49.1. 設定オプション
以下の表では、mask-field-action
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
fields * | フィールド | マスクするフィールドのコンマ区切りリスト | string | ||
replacement * | replacement | マスクするフィールドの置き換え | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
49.2. 依存関係
実行時に、mask-field-action
Kamelet は以下の依存関係の存在に依存します。
- github:openshift-integration.kamelet-catalog:camel-kamelets-utils:kamelet-catalog-1.6-SNAPSHOT
- camel:jackson
- camel:kamelet
- camel:core
49.3. 使用方法
このセクションでは、mask-field-action
の使用方法について説明します。
49.3.1. Knative Action
mask-field-action
Kamelet は、Knative バインディングの中間ステップとして使用できます。
mask-field-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: mask-field-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: mask-field-action properties: fields: "The Fields" replacement: "The Replacement" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
49.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
49.3.1.2. クラスター CLI の使用手順
-
mask-field-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f mask-field-action-binding.yaml
49.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step mask-field-action -p "step-0.fields=The Fields" -p "step-0.replacement=The Replacement" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
49.3.2. Kafka Action
mask-field-action
Kamelet は、Kafka バインディングの中間ステップとして使用できます。
mask-field-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: mask-field-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: mask-field-action properties: fields: "The Fields" replacement: "The Replacement" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
49.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
49.3.2.2. クラスター CLI の使用手順
-
mask-field-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f mask-field-action-binding.yaml
49.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step mask-field-action -p "step-0.fields=The Fields" -p "step-0.replacement=The Replacement" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
49.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/mask-field-action.kamelet.yaml
第50章 Message Timestamp ルーターアクション
topic フィールドを、元のトピック名およびレコードのタイムスタンプフィールドとして更新します。
50.1. 設定オプション
次の表は、message-timestamp-router-action
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
timestampKeys * | タイムスタンプキー | Timestamp キーのコンマ区切りリスト。タイムスタンプは最初に見つかったフィールドから取得されます。 | string | ||
timestampFormat | タイムスタンプの形式 | java.text.SimpleDateFormat と互換性があるタイムスタンプの文字列の文字列。 | string |
| |
timestampKeyFormat | タイムスタンプキーの形式 | タイムスタンプキーの形式。使用できる値は 'timestamp' または java.text.SimpleDateFormat と互換性のあるタイムスタンプの文字列です。'timestamp' の場合、フィールドは 1970 からミリ秒として評価され、UNIX Timestamp として評価されます。 | string |
| |
topicFormat | トピックの形式 | それぞれトピックとタイムスタンプのプレースホルダーとして '$[topic]' および '$[timestamp]' を含む文字列のフォーマット文字列。 | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
50.2. 依存関係
実行時、message-timestamp-router-action
Kamelet は、以下の依存関係の存在に依存しています。
- mvn:org.apache.camel.kamelets:camel-kamelets-utils:1.0.0.fuse-800048-redhat-00001
- camel:jackson
- camel:kamelet
- camel:core
50.3. 使用方法
本セクションでは、message-timestamp-router-action
を使用する方法を説明します。
50.3.1. Knative Action
message-timestamp-router-action
Kamelet を Knative バインディングの中間ステップとして使用できます。
message-timestamp-router-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: message-timestamp-router-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: message-timestamp-router-action properties: timestampKeys: "The Timestamp Keys" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
50.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
50.3.1.2. クラスター CLI の使用手順
-
message-timestamp-router-action-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f message-timestamp-router-action-binding.yaml
50.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step message-timestamp-router-action -p "step-0.timestampKeys=The Timestamp Keys" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
50.3.2. Kafka Action
message-timestamp-router-action
Kamelet を Kafka バインディングの中間ステップとして使用できます。
message-timestamp-router-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: message-timestamp-router-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: message-timestamp-router-action properties: timestampKeys: "The Timestamp Keys" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
50.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
50.3.2.2. クラスター CLI の使用手順
-
message-timestamp-router-action-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f message-timestamp-router-action-binding.yaml
50.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step message-timestamp-router-action -p "step-0.timestampKeys=The Timestamp Keys" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
50.4. Kamelet ソースファイル
第51章 MongoDB Sink
MongoDB にドキュメントを送信します。
この Kamelet は JSON をボディーとして想定します。
ヘッダーとして設定できるプロパティー:
-
db-upsert
/ce-dbupsert
: データベースが存在しない場合には、この要素を作成します。ブール値。
51.1. 設定オプション
以下の表では、mongodb-sink
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
collection * | MongoDB コレクション | このエンドポイントにバインドする MongoDB コレクションの名前を設定します。 | string | ||
Database * | MongoDB Database | ターゲットに設定する MongoDB データベースの名前を設定します。 | string | ||
hosts * | MongoDB Hosts | host:port 形式の MongoDB ホストアドレスのコンマ区切りリスト。 | string | ||
createCollection | コレクション | コレクションが存在しない場合は、初期化中にコレクションを作成します。 | boolean |
| |
password | MongoDB パスワード | MongoDB にアクセスするためのユーザーパスワード。 | string | ||
username | MongoDB ユーザー名 | MongoDB にアクセスするためのユーザー名 | string | ||
writeConcern | 書き込みに関する懸念 | 書き込み操作用に MongoDB から要求される確認応答のレベルを設定します。可能な値は、ACKNOWLEDGED、W1、W2、W3、W3、UNACKNOWLEDGED、JOURNALED、MAJORITY です。 | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
51.2. 依存関係
ランタイム時に、mongodb-sink
Kamelet は、以下の依存関係の存在に依存します。
- camel:kamelet
- camel:mongodb
- camel:jackson
51.3. 使用方法
本セクションでは、mongodb-sink
を使用する方法を説明します。
51.3.1. Knative Sink
mongodb-sink
Kamelet を Knative オブジェクトにバインドし、これを Knative シンクとして使用できます。
mongodb-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: mongodb-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: mongodb-sink properties: collection: "The MongoDB Collection" database: "The MongoDB Database" hosts: "The MongoDB Hosts"
51.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
51.3.1.2. クラスター CLI の使用手順
-
mongodb-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f mongodb-sink-binding.yaml
51.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel mongodb-sink -p "sink.collection=The MongoDB Collection" -p "sink.database=The MongoDB Database" -p "sink.hosts=The MongoDB Hosts"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
51.3.2. Kafka Sink
mongodb-sink
Kamelet を Kafka トピックにバインドすることにより、Kafka シンクとして使用できます。
mongodb-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: mongodb-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: mongodb-sink properties: collection: "The MongoDB Collection" database: "The MongoDB Database" hosts: "The MongoDB Hosts"
51.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
51.3.2.2. クラスター CLI の使用手順
-
mongodb-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f mongodb-sink-binding.yaml
51.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic mongodb-sink -p "sink.collection=The MongoDB Collection" -p "sink.database=The MongoDB Database" -p "sink.hosts=The MongoDB Hosts"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
51.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/mongodb-sink.kamelet.yaml
第52章 MongoDB ソース
MongoDB からドキュメントを消費します。
persistentTailTracking オプションを有効にすると、コンシューマーは最後に消費されるメッセージを追跡し、次の再起動時に、そのメッセージから消費が再起動します。persistentTailTracking が有効にされている場合、tailTrackIncreasingField を指定する必要があります (デフォルトではオプションです)。
persistentTailTracking オプションが有効になっていない場合、コンシューマーはコレクション全体を消費し、新しいドキュメントが消費するアイドル状態になるのを待ちます。
52.1. 設定オプション
以下の表では、mongodb-source
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
collection * | MongoDB コレクション | このエンドポイントにバインドする MongoDB コレクションの名前を設定します。 | string | ||
Database * | MongoDB Database | ターゲットに設定する MongoDB データベースの名前を設定します。 | string | ||
hosts * | MongoDB Hosts | host:port 形式の MongoDB ホストアドレスのコンマ区切りリスト。 | string | ||
Password * | MongoDB パスワード | MongoDB にアクセスするためのユーザーパスワード。 | string | ||
username * | MongoDB ユーザー名 | MongoDB にアクセスするためのユーザー名ユーザー名は MongoDB の認証データベース (authenticationDatabase) に存在する必要があります。デフォルトでは、MongoDB authenticationDatabase は admin です。 | string | ||
persistentTailTracking | MongoDB Persistent Tail Tracking | 永続的な tail トラッキングを有効にします。これは、システムの再起動時に最後に消費されたメッセージを追跡するメカニズムです。次にシステムが起動すると、エンドポイントは最後にレコードを一気に読み込むのを停止した地点からカーソルを回復します。 | boolean |
| |
tailTrackIncreasingField | MongoDB Tail Track Increasing フィールド | 増加する性質の着信レコードの相関フィールドであり、生成されるたびに tail カーソルを配置するために使用されます。 | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
52.2. 依存関係
ランタイム時に、mongodb-source
Kamelet は、以下の依存関係の存在に依存します。
- camel:kamelet
- camel:mongodb
- camel:jackson
52.3. 使用方法
本セクションでは、mongodb-source
の使用方法を説明します。
52.3.1. Knative ソース
mongodb-source
Kamelet を Knative オブジェクトにバインドして Knative ソースとして使用できます。
mongodb-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: mongodb-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: mongodb-source properties: collection: "The MongoDB Collection" database: "The MongoDB Database" hosts: "The MongoDB Hosts" password: "The MongoDB Password" username: "The MongoDB Username" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
52.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
52.3.1.2. クラスター CLI の使用手順
-
mongodb-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f mongodb-source-binding.yaml
52.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind mongodb-source -p "source.collection=The MongoDB Collection" -p "source.database=The MongoDB Database" -p "source.hosts=The MongoDB Hosts" -p "source.password=The MongoDB Password" -p "source.username=The MongoDB Username" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
52.3.2. Kafka Source
mongodb-source
Kamelet を Kafka トピックにバインドすることにより、Kafka ソースとして使用できます。
mongodb-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: mongodb-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: mongodb-source properties: collection: "The MongoDB Collection" database: "The MongoDB Database" hosts: "The MongoDB Hosts" password: "The MongoDB Password" username: "The MongoDB Username" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
52.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
52.3.2.2. クラスター CLI の使用手順
-
mongodb-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f mongodb-source-binding.yaml
52.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind mongodb-source -p "source.collection=The MongoDB Collection" -p "source.database=The MongoDB Database" -p "source.hosts=The MongoDB Hosts" -p "source.password=The MongoDB Password" -p "source.username=The MongoDB Username" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
52.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/mongodb-source.kamelet.yaml
第53章 MySQL Sink
MySQL データベースにデータを送信します。
この Kamelet は JSON をボディーとして想定します。JSON フィールドとパラメーター間のマッピングはキーで実行されるため、以下のクエリーがある場合は以下を実行します。
'INSERT INTO accounts (username,city) VALUES (:#username,:#city)'
Kamelet は、以下のような入力として受信する必要があります。
'{ "username":"oscerd", "city":"Rome"}'
53.1. 設定オプション
次の表は、mysql-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
databaseName * | データベース名 | ポイントするデータベース名 | string | ||
Password * | Password | セキュアな MySQL データベースへのアクセスに使用するパスワード | string | ||
query * | Query | MySQL データベースに対して実行するクエリー | string |
| |
serverName * | サーバー名 | データソースのサーバー名 | string |
| |
username * | ユーザー名 | セキュアな MySQL データベースへのアクセスに使用するユーザー名 | string | ||
serverPort | サーバーポート | データソースのサーバーポート | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
53.2. 依存関係
実行時に、mysql-sink
Kamelet は以下の依存関係の存在に依存します。
- camel:jackson
- camel:kamelet
- camel:sql
- mvn:org.apache.commons:commons-dbcp2:2.7.0.redhat-00001
- mvn:mysql:mysql-connector-java
53.3. 使用方法
ここでは、mysql-sink
の使用方法について説明します。
53.3.1. Knative Sink
mysql-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative のシンクとして使用することができます。
mysql-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: mysql-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: mysql-sink properties: databaseName: "The Database Name" password: "The Password" query: "INSERT INTO accounts (username,city) VALUES (:#username,:#city)" serverName: "localhost" username: "The Username"
53.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
53.3.1.2. クラスター CLI の使用手順
-
mysql-sink-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してシンクを実行します。
oc apply -f mysql-sink-binding.yaml
53.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel mysql-sink -p "sink.databaseName=The Database Name" -p "sink.password=The Password" -p "sink.query=INSERT INTO accounts (username,city) VALUES (:#username,:#city)" -p "sink.serverName=localhost" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
53.3.2. Kafka Sink
mysql-sink
Kamelet を Kafka のトピックにバインドすることで、Kafka のシンクとして使用することができます。
mysql-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: mysql-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: mysql-sink properties: databaseName: "The Database Name" password: "The Password" query: "INSERT INTO accounts (username,city) VALUES (:#username,:#city)" serverName: "localhost" username: "The Username"
53.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
53.3.2.2. クラスター CLI の使用手順
-
mysql-sink-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してシンクを実行します。
oc apply -f mysql-sink-binding.yaml
53.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic mysql-sink -p "sink.databaseName=The Database Name" -p "sink.password=The Password" -p "sink.query=INSERT INTO accounts (username,city) VALUES (:#username,:#city)" -p "sink.serverName=localhost" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
53.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/mysql-sink.kamelet.yaml
第54章 PostgreSQL Sink
データを PostgreSQL データベースに送信します。
この Kamelet は JSON をボディーとして想定します。JSON フィールドとパラメーター間のマッピングはキーで実行されるため、以下のクエリーがある場合は以下を実行します。
'INSERT INTO accounts (username,city) VALUES (:#username,:#city)'
Kamelet は、以下のような入力として受信する必要があります。
'{ "username":"oscerd", "city":"Rome"}'
54.1. 設定オプション
次の表は、postgresql-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
databaseName * | データベース名 | ポイントするデータベース名 | string | ||
Password * | Password | セキュアな PostgreSQL データベースへのアクセスに使用するパスワード | string | ||
query * | Query | PostgreSQL データベースに対して実行するクエリー | string |
| |
serverName * | サーバー名 | データソースのサーバー名 | string |
| |
username * | ユーザー名 | セキュアな PostgreSQL データベースへのアクセスに使用するユーザー名 | string | ||
serverPort | サーバーポート | データソースのサーバーポート | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
54.2. 依存関係
実行時に、postgresql-sink
Kamelet は以下の依存関係の存在に依存しています。
- camel:jackson
- camel:kamelet
- camel:sql
- mvn:org.postgresql:postgresql
- mvn:org.apache.commons:commons-dbcp2:2.7.0.redhat-00001
54.3. 使用方法
ここでは、postgresql-sink
の使用方法について説明します。
54.3.1. Knative Sink
postgresql-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative のシンクとして使用することができます。
postgresql-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: postgresql-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: postgresql-sink properties: databaseName: "The Database Name" password: "The Password" query: "INSERT INTO accounts (username,city) VALUES (:#username,:#city)" serverName: "localhost" username: "The Username"
54.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
54.3.1.2. クラスター CLI の使用手順
-
postgresql-sink-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してシンクを実行します。
oc apply -f postgresql-sink-binding.yaml
54.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel postgresql-sink -p "sink.databaseName=The Database Name" -p "sink.password=The Password" -p "sink.query=INSERT INTO accounts (username,city) VALUES (:#username,:#city)" -p "sink.serverName=localhost" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
54.3.2. Kafka Sink
postgresql-sink
Kamelet を Kafka トピックにバインドし、Kafka シンクとして使用できます。
postgresql-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: postgresql-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: postgresql-sink properties: databaseName: "The Database Name" password: "The Password" query: "INSERT INTO accounts (username,city) VALUES (:#username,:#city)" serverName: "localhost" username: "The Username"
54.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
54.3.2.2. クラスター CLI の使用手順
-
postgresql-sink-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してシンクを実行します。
oc apply -f postgresql-sink-binding.yaml
54.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic postgresql-sink -p "sink.databaseName=The Database Name" -p "sink.password=The Password" -p "sink.query=INSERT INTO accounts (username,city) VALUES (:#username,:#city)" -p "sink.serverName=localhost" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
54.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/postgresql-sink.kamelet.yaml
第55章 述語フィルターの動作
JsonPath 式に基づくフィルター
55.1. 設定オプション
以下の表では、predicate-filter-action
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
expression * | 式 | 外部括弧なしで評価する JsonPath 式。これは、例の foo フィールドが John に等しい場合、メッセージは続行され、そうでない場合はフィルタリングされることを意味しています。 | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
55.2. 依存関係
実行時に predicate-filter-action
Kamelet は、以下の依存関係の存在に依存します。
- camel:core
- camel:kamelet
- camel:jsonpath
55.3. 使用方法
本セクションでは、predicate-filter-action
を使用する方法を説明します。
55.3.1. Knative Action
predicate-filter-action
Kamelet を Knative バインディングの中間ステップとして使用することができます。
predicate-filter-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: predicate-filter-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: predicate-filter-action properties: expression: "@.foo =~ /.*John/" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
55.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
55.3.1.2. クラスター CLI の使用手順
-
predicate-filter-action-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f predicate-filter-action-binding.yaml
55.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step predicate-filter-action -p "step-0.expression=@.foo =~ /.*John/" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
55.3.2. Kafka Action
predicate-filter-action
Kamelet を Kafka バインディングの中間ステップとして使用することができます。
predicate-filter-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: predicate-filter-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: predicate-filter-action properties: expression: "@.foo =~ /.*John/" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
55.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
55.3.2.2. クラスター CLI の使用手順
-
predicate-filter-action-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f predicate-filter-action-binding.yaml
55.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step predicate-filter-action -p "step-0.expression=@.foo =~ /.*John/" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
55.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/predicate-filter-action.kamelet.yaml
第56章 Protobuf デシリアライズアクション
ペイロードを Protobuf にデシリアライズ
56.1. 設定オプション
次の表は、protobuf-deserialize-action
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
スキーマ * | スキーマ | (単一行として) シリアライズ時に使用する Protobuf スキーマ | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
56.2. 依存関係
実行時には、protobuf-deserialize-action
Kamelet は以下の依存関係の存在に依存します。
- github:openshift-integration.kamelet-catalog:camel-kamelets-utils:kamelet-catalog-1.6-SNAPSHOT
- camel:kamelet
- camel:core
- camel:jackson-protobuf
56.3. 使用方法
ここでは、protobuf-deserialize-action
の使用方法について説明します。
56.3.1. Knative Action
protobuf-deserialize-action
Kamelet を Knative バインディングの中間ステップとして使用できます。
protobuf-deserialize-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: protobuf-deserialize-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: '{"first": "John", "last":"Doe"}' steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-deserialize-action - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: protobuf-serialize-action properties: schema: "message Person { required string first = 1; required string last = 2; }" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: protobuf-deserialize-action properties: schema: "message Person { required string first = 1; required string last = 2; }" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
56.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
56.3.1.2. クラスター CLI の使用手順
-
protobuf-deserialize-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f protobuf-deserialize-action-binding.yaml
56.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind --name protobuf-deserialize-action-binding timer-source?message='{"first":"John","last":"Doe"}' --step json-deserialize-action --step protobuf-serialize-action -p step-1.schema='message Person { required string first = 1; required string last = 2; }' --step protobuf-deserialize-action -p step-2.schema='message Person { required string first = 1; required string last = 2; }' channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
56.3.2. Kafka Action
protobuf-deserialize-action
Kamelet を Kafka バインディングの中間ステップとして使用できます。
protobuf-deserialize-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: protobuf-deserialize-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: '{"first": "John", "last":"Doe"}' steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-deserialize-action - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: protobuf-serialize-action properties: schema: "message Person { required string first = 1; required string last = 2; }" - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: protobuf-deserialize-action properties: schema: "message Person { required string first = 1; required string last = 2; }" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
56.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
56.3.2.2. クラスター CLI の使用手順
-
protobuf-deserialize-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f protobuf-deserialize-action-binding.yaml
56.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind --name protobuf-deserialize-action-binding timer-source?message='{"first":"John","last":"Doe"}' --step json-deserialize-action --step protobuf-serialize-action -p step-1.schema='message Person { required string first = 1; required string last = 2; }' --step protobuf-deserialize-action -p step-2.schema='message Person { required string first = 1; required string last = 2; }' kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
56.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/protobuf-deserialize-action.kamelet.yaml
第57章 Protobuf Serialize アクション
ペイロードを Protobuf にシリアライズする
57.1. 設定オプション
次の表は、protobuf-serialize-action
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
スキーマ * | スキーマ | (単一行として) シリアライズ時に使用する Protobuf スキーマ | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
57.2. 依存関係
実行時に、protobuf-serialize-action
Kamelet は以下の依存関係の存在に依存します。
- github:openshift-integration.kamelet-catalog:camel-kamelets-utils:kamelet-catalog-1.6-SNAPSHOT
- camel:kamelet
- camel:core
- camel:jackson-protobuf
57.3. 使用方法
ここでは、protobuf-serialize-action
の使用方法について説明します。
57.3.1. Knative Action
protobuf-serialize-action
Kamelet を Knative バインディングの中間ステップとして使用できます。
protobuf-serialize-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: protobuf-serialize-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: '{"first": "John", "last":"Doe"}' steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-deserialize-action - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: protobuf-serialize-action properties: schema: "message Person { required string first = 1; required string last = 2; }" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
57.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
57.3.1.2. クラスター CLI の使用手順
-
protobuf-serialize-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f protobuf-serialize-action-binding.yaml
57.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind --name protobuf-serialize-action-binding timer-source?message='{"first":"John","last":"Doe"}' --step json-deserialize-action --step protobuf-serialize-action -p step-1.schema='message Person { required string first = 1; required string last = 2; }' channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
57.3.2. Kafka Action
protobuf-serialize-action
Kamelet を Kafka バインディングの中間ステップとして使用できます。
protobuf-serialize-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: protobuf-serialize-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: '{"first": "John", "last":"Doe"}' steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: json-deserialize-action - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: protobuf-serialize-action properties: schema: "message Person { required string first = 1; required string last = 2; }" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
57.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
57.3.2.2. クラスター CLI の使用手順
-
protobuf-serialize-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f protobuf-serialize-action-binding.yaml
57.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind --name protobuf-serialize-action-binding timer-source?message='{"first":"John","last":"Doe"}' --step json-deserialize-action --step protobuf-serialize-action -p step-1.schema='message Person { required string first = 1; required string last = 2; }' kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
57.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/protobuf-serialize-action.kamelet.yaml
第58章 regex ルーターの動作
設定された正規表現と代替文字列を使用して宛先を更新します。
58.1. 設定オプション
以下の表は、regex-router-action
Kamelet で利用可能な設定オプションの概要を示しています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
regex * | Regex | 宛先の正規表現 | string | ||
replacement * | replacement | マッチした場合の置換 | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
58.2. 依存関係
実行時に regex-router-action
Kamelet は、以下の依存関係の存在に依存します。
- github:openshift-integration.kamelet-catalog:camel-kamelets-utils:kamelet-catalog-1.6-SNAPSHOT
- camel:kamelet
- camel:core
58.3. 使用方法
本セクションでは、regex-router-action
の使用方法を説明します。
58.3.1. Knative Action
regex-router-action
Kamelet を Knative バインディングの中間ステップとして使用することができます。
regex-router-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: regex-router-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: regex-router-action properties: regex: "The Regex" replacement: "The Replacement" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
58.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
58.3.1.2. クラスター CLI の使用手順
-
regex-router-action-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f regex-router-action-binding.yaml
58.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step regex-router-action -p "step-0.regex=The Regex" -p "step-0.replacement=The Replacement" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
58.3.2. Kafka Action
regex-router-action
Kamelet を Kafka バインディングの中間ステップとして使用することができます。
regex-router-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: regex-router-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: regex-router-action properties: regex: "The Regex" replacement: "The Replacement" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
58.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
58.3.2.2. クラスター CLI の使用手順
-
regex-router-action-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f regex-router-action-binding.yaml
58.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step regex-router-action -p "step-0.regex=The Regex" -p "step-0.replacement=The Replacement" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
58.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/regex-router-action.kamelet.yaml
第59章 フィールドアクションの置き換え
送信中のメッセージのフィールドを別のキーに置き換えます。
- 必須パラメーター 'renames' は、たとえば 'foo:bar,abc:xyz' のようにコロンで区切られたリネームのペアのコンマ区切りリストで、フィールドリネームマッピングを表します。
- オプションのパラメーター 'enabled' は、含めるべきフィールドを表します。指定された場合、指定されたフィールドのみが結果のメッセージに含まれます。
- オプションのパラメーター 'disabled' は、除外するフィールドを表します。指定された場合、リストされたフィールドは結果のメッセージから除外されます。これは 'enabled' パラメーターよりも優先されます。
- 'enabled' パラメーターのデフォルト値は 'all' なので、ペイロードのすべてのフィールドが含まれることになります。
- 'disabled' パラメーターのデフォルト値は 'none' なので、ペイロードのどのフィールドも除外されることはありません。
59.1. 設定オプション
以下の表では、replace-field-action
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
renames * | 名前変更 | 名前を変更する新しい値を持つフィールドのコンマ区切りリスト | string |
| |
disabled | 無効 | 無効にするフィールドのコンマ区切りリスト | string | "none" | |
enabled | 有効 | 有効にするフィールドのコンマ区切りリスト | string | "all" |
アスタリスク (*) のマークが付いたフィールドは必須です。
59.2. 依存関係
実行時に、replace-field-action
Kamelet は以下の依存関係の存在に依存します。
- github:openshift-integration.kamelet-catalog:camel-kamelets-utils:kamelet-catalog-1.6-SNAPSHOT
- camel:core
- camel:jackson
- camel:kamelet
59.3. 使用方法
このセクションでは、replace-field-action
の使用方法について説明します。
59.3.1. Knative Action
replace-field-action
Kamelet は、Knative バインディングの中間ステップとして使用できます。
replace-field-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: replace-field-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: replace-field-action properties: renames: "foo:bar,c1:c2" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
59.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
59.3.1.2. クラスター CLI の使用手順
-
replace-field-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f replace-field-action-binding.yaml
59.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step replace-field-action -p "step-0.renames=foo:bar,c1:c2" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
59.3.2. Kafka Action
replace-field-action
Kamelet は、Kafka バインディングの中間ステップとして使用できます。
replace-field-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: replace-field-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: replace-field-action properties: renames: "foo:bar,c1:c2" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
59.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
59.3.2.2. クラスター CLI の使用手順
-
replace-field-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f replace-field-action-binding.yaml
59.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step replace-field-action -p "step-0.renames=foo:bar,c1:c2" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
59.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/replace-field-action.kamelet.yaml
第60章 Salesforce ソース
Salesforce から更新を受け取ります。
60.1. 設定オプション
次の表は、salesforce-source
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
clientId * | Consumer Key | Salesforce アプリケーションコンシューマーキー | string | ||
clientSecret * | コンシューマーシークレット | Salesforce アプリケーションコンシューマーシークレット | string | ||
Password * | Password | Salesforce ユーザーのパスワード | string | ||
query * | Query | Salesforce で実行するクエリー | string |
| |
topicName * | トピック名 | 使用するトピック/チャネルの名前 | string |
| |
userName * | ユーザー名 | Salesforce のユーザー名 | string | ||
loginUrl | ログイン URL | Salesforce インスタンスのログイン URL | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
60.2. 依存関係
salesforce-source
Kamelet は、実行時に以下の依存関係の存在に依存します。
- camel:jackson
- camel:salesforce
- mvn:org.apache.camel.k:camel-k-kamelet-reify
- camel:kamelet
60.3. 使用方法
ここでは、salesforce-source
の使用方法について説明します。
60.3.1. Knative ソース
salesforce-source
Kamelet を Knative オブジェクトにバインドすることで、Knative ソースとして使用することができます。
salesforce-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: salesforce-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: salesforce-source properties: clientId: "The Consumer Key" clientSecret: "The Consumer Secret" password: "The Password" query: "SELECT Id, Name, Email, Phone FROM Contact" topicName: "ContactTopic" userName: "The Username" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
60.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
60.3.1.2. クラスター CLI の使用手順
-
salesforce-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f salesforce-source-binding.yaml
60.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind salesforce-source -p "source.clientId=The Consumer Key" -p "source.clientSecret=The Consumer Secret" -p "source.password=The Password" -p "source.query=SELECT Id, Name, Email, Phone FROM Contact" -p "source.topicName=ContactTopic" -p "source.userName=The Username" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
60.3.2. Kafka Source
salesforce-source
Kamelet を Kafka トピックにバインドすることにより、Kafka ソースとして使用できます。
salesforce-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: salesforce-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: salesforce-source properties: clientId: "The Consumer Key" clientSecret: "The Consumer Secret" password: "The Password" query: "SELECT Id, Name, Email, Phone FROM Contact" topicName: "ContactTopic" userName: "The Username" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
60.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
60.3.2.2. クラスター CLI の使用手順
-
salesforce-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f salesforce-source-binding.yaml
60.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind salesforce-source -p "source.clientId=The Consumer Key" -p "source.clientSecret=The Consumer Secret" -p "source.password=The Password" -p "source.query=SELECT Id, Name, Email, Phone FROM Contact" -p "source.topicName=ContactTopic" -p "source.userName=The Username" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
60.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/salesforce-source.kamelet.yaml
第61章 Salesforce の作成シンク
Salesforce にオブジェクトを作成します。メッセージの本文には、salesforce オブジェクトの JSON を含める必要があります。
Example body: { "Phone": "555", "Name": "Antonia", "LastName": "Garcia" }
61.1. 設定オプション
次の表は、salesforce-create-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
clientId * | Consumer Key | Salesforce アプリケーションコンシューマーキー | string | ||
clientSecret * | コンシューマーシークレット | Salesforce アプリケーションコンシューマーシークレット | string | ||
Password * | Password | Salesforce ユーザーのパスワード | string | ||
userName * | ユーザー名 | Salesforce のユーザー名 | string | ||
loginUrl | ログイン URL | Salesforce インスタンスのログイン URL | string |
| |
sObjectName | オブジェクト名 | オブジェクトのタイプ | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
61.2. 依存関係
salesforce-create-sink
Kamelet は、実行時に以下の依存関係の存在に依存します。
- camel:salesforce
- camel:kamelet
61.3. 使用方法
ここでは、salesforce-create-sink
の使用方法について説明します。
61.3.1. Knative Sink
salesforce-create-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative シンクとして使用することができます。
salesforce-create-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: salesforce-create-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: salesforce-create-sink properties: clientId: "The Consumer Key" clientSecret: "The Consumer Secret" password: "The Password" userName: "The Username"
61.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
61.3.1.2. クラスター CLI の使用手順
-
salesforce-create-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に合わせて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f salesforce-create-sink-binding.yaml
61.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel salesforce-create-sink -p "sink.clientId=The Consumer Key" -p "sink.clientSecret=The Consumer Secret" -p "sink.password=The Password" -p "sink.userName=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
61.3.2. Kafka Sink
salesforce-create-sink
Kamelet を Kafka トピックにバインドすることで、Kafka シンクとして使用することができます。
salesforce-create-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: salesforce-create-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: salesforce-create-sink properties: clientId: "The Consumer Key" clientSecret: "The Consumer Secret" password: "The Password" userName: "The Username"
61.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
61.3.2.2. クラスター CLI の使用手順
-
salesforce-create-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に合わせて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f salesforce-create-sink-binding.yaml
61.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic salesforce-create-sink -p "sink.clientId=The Consumer Key" -p "sink.clientSecret=The Consumer Secret" -p "sink.password=The Password" -p "sink.userName=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
61.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/salesforce-create-sink.kamelet.yaml
第62章 Salesforce の削除シンク
Salesforce からオブジェクトを削除します。受信する本文は、sObjectId と sObjectName の 2 つのキーを含む JSON である必要があります。
本文の例: { "sObjectId": "XXXXX0", "sObjectName": "Contact" }
62.1. 設定オプション
次の表は、salesforce-delete-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
clientId * | Consumer Key | Salesforce アプリケーションコンシューマーキー | string | ||
clientSecret * | コンシューマーシークレット | Salesforce アプリケーションコンシューマーシークレット | string | ||
Password * | Password | Salesforce ユーザーのパスワード | string | ||
userName * | ユーザー名 | Salesforce のユーザー名 | string | ||
loginUrl | ログイン URL | Salesforce インスタンスのログイン URL | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
62.2. 依存関係
salesforce-delete-sink
Kamelet は、実行時に以下の依存関係の存在に依存します。
- camel:salesforce
- camel:kamelet
- camel:core
- camel:jsonpath
62.3. 使用方法
このセクションでは、salesforce-delete-sink
の使用方法について説明します。
62.3.1. Knative Sink
salesforce-delete-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative シンクとして使用することができます。
salesforce-delete-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: salesforce-delete-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: salesforce-delete-sink properties: clientId: "The Consumer Key" clientSecret: "The Consumer Secret" password: "The Password" userName: "The Username"
62.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
62.3.1.2. クラスター CLI の使用手順
-
salesforce-delete-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f salesforce-delete-sink-binding.yaml
62.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel salesforce-delete-sink -p "sink.clientId=The Consumer Key" -p "sink.clientSecret=The Consumer Secret" -p "sink.password=The Password" -p "sink.userName=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
62.3.2. Kafka Sink
salesforce-delete-sink
Kamelet を Kafka トピックにバインドすることで、Kafka シンクとして使用することができます。
salesforce-delete-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: salesforce-delete-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: salesforce-delete-sink properties: clientId: "The Consumer Key" clientSecret: "The Consumer Secret" password: "The Password" userName: "The Username"
62.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
62.3.2.2. クラスター CLI の使用手順
-
salesforce-delete-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f salesforce-delete-sink-binding.yaml
62.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic salesforce-delete-sink -p "sink.clientId=The Consumer Key" -p "sink.clientSecret=The Consumer Secret" -p "sink.password=The Password" -p "sink.userName=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
62.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/salesforce-delete-sink.kamelet.yaml
第63章 Salesforce の更新シンク
Salesforce のオブジェクトを更新します。受信した本文には、更新する各プロパティーの JSON キーと値のペアが含まれている必要があり、sObjectName と sObjectId をパラメーターとして指定する必要があります。
キーと値のペアの例: { "Phone": "1234567890", "Name": "Antonia" }
63.1. 設定オプション
次の表は、salesforce-update-sink
Kamelet で利用できる設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
clientId * | Consumer Key | Salesforce アプリケーションコンシューマーキー | string | ||
clientSecret * | コンシューマーシークレット | Salesforce アプリケーションコンシューマーシークレット | string | ||
Password * | Password | Salesforce ユーザーのパスワード | string | ||
sObjectId * | オブジェクト ID | オブジェクトの ID。キーと値のペアを使用する場合にのみ必要です。 | string | ||
sObjectName * | オブジェクト名 | オブジェクトのタイプ。キーと値のペアを使用する場合にのみ必要です。 | string |
| |
userName * | ユーザー名 | Salesforce のユーザー名 | string | ||
loginUrl | ログイン URL | Salesforce インスタンスのログイン URL | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
63.2. 依存関係
salesforce-update-sink
Kamelet は、実行時に以下の依存関係の存在に依存します。
- camel:salesforce
- camel:kamelet
63.3. 使用方法
ここでは、salesforce-update-sink
の使用方法について説明します。
63.3.1. Knative Sink
salesforce-update-sink
Kamelet を Knative オブジェクトにバインドすることで、Knative シンクとして使用することができます。
salesforce-update-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: salesforce-update-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: salesforce-update-sink properties: clientId: "The Consumer Key" clientSecret: "The Consumer Secret" password: "The Password" sObjectId: "The Object Id" sObjectName: "Contact" userName: "The Username"
63.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
63.3.1.2. クラスター CLI の使用手順
-
salesforce-update-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に合わせて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f salesforce-update-sink-binding.yaml
63.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel salesforce-update-sink -p "sink.clientId=The Consumer Key" -p "sink.clientSecret=The Consumer Secret" -p "sink.password=The Password" -p "sink.sObjectId=The Object Id" -p "sink.sObjectName=Contact" -p "sink.userName=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
63.3.2. Kafka Sink
salesforce-update-sink
Kamelet を Kafka トピックにバインドすることで、Kafka シンクとして使用することが可能です。
salesforce-update-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: salesforce-update-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: salesforce-update-sink properties: clientId: "The Consumer Key" clientSecret: "The Consumer Secret" password: "The Password" sObjectId: "The Object Id" sObjectName: "Contact" userName: "The Username"
63.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
63.3.2.2. クラスター CLI の使用手順
-
salesforce-update-sink-binding.yaml
ファイルをローカルドライブに保存してから、設定に合わせて編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f salesforce-update-sink-binding.yaml
63.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic salesforce-update-sink -p "sink.clientId=The Consumer Key" -p "sink.clientSecret=The Consumer Secret" -p "sink.password=The Password" -p "sink.sObjectId=The Object Id" -p "sink.sObjectName=Contact" -p "sink.userName=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
63.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/salesforce-update-sink.kamelet.yaml
第64章 SFTP Sink
SFTP サーバーにデータを送信します。
Kamelet では、以下のヘッダーが設定されていることを想定しています。
-
file
/ce-file
: アップロードするファイル名として
ヘッダーが設定されていない場合、エクスチェンジ ID はファイル名として使用されます。
64.1. 設定オプション
以下の表では、sftp-sink
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
connectionHost * | 接続ホスト | FTP サーバーのホスト名 | string | ||
connectionPort * | 接続ポート | FTP サーバーのポート | string |
| |
directoryName * | ディレクトリー名 | 開始ディレクトリー | string | ||
Password * | Password | FTP サーバーにアクセスするためのパスワード | string | ||
username * | ユーザー名 | FTP サーバーにアクセスするためのユーザー名 | string | ||
fileExist | ファイルの存在 | すでにファイルが存在する場合にどのように動作するか。列挙は 4 つあり、値は Override、Append、Fail または Ignore のいずれかです。 | string |
| |
passiveMode | パッシブモード | パッシブモード接続の設定 | boolean |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
64.2. 依存関係
ランタイム時に、sftp-sink
Kamelet は、以下の依存関係の存在に依存します。
- camel:ftp
- camel:core
- camel:kamelet
64.3. 使用方法
本セクションでは、sftp-sink
を使用する方法を説明します。
64.3.1. Knative Sink
sftp-sink
Kamelet を Knative オブジェクトにバインドすることにより、これを Knative シンクとして使用できます。
sftp-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: sftp-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: sftp-sink properties: connectionHost: "The Connection Host" directoryName: "The Directory Name" password: "The Password" username: "The Username"
64.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
64.3.1.2. クラスター CLI の使用手順
-
sftp-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f sftp-sink-binding.yaml
64.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel sftp-sink -p "sink.connectionHost=The Connection Host" -p "sink.directoryName=The Directory Name" -p "sink.password=The Password" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
64.3.2. Kafka Sink
sftp-sink
Kamelet を Kafka トピックにバインドすることにより、Kafka シンクとして使用できます。
sftp-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: sftp-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: sftp-sink properties: connectionHost: "The Connection Host" directoryName: "The Directory Name" password: "The Password" username: "The Username"
64.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
64.3.2.2. クラスター CLI の使用手順
-
sftp-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f sftp-sink-binding.yaml
64.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic sftp-sink -p "sink.connectionHost=The Connection Host" -p "sink.directoryName=The Directory Name" -p "sink.password=The Password" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
64.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/sftp-sink.kamelet.yaml
第65章 SFTP ソース
SFTP サーバーからデータを受け取ります。
65.1. 設定オプション
以下の表では、sftp-source
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
connectionHost * | 接続ホスト | SFTP サーバーのホスト名 | string | ||
connectionPort * | 接続ポート | FTP サーバーのポート | string |
| |
directoryName * | ディレクトリー名 | 開始ディレクトリー | string | ||
Password * | Password | SFTP サーバーにアクセスするためのパスワード | string | ||
username * | ユーザー名 | SFTP サーバーにアクセスするためのユーザー名 | string | ||
idempotent | 冪等性 | 処理されたファイルを省略します。 | boolean |
| |
passiveMode | パッシブモード | パッシブモード接続の設定 | boolean |
| |
再帰 | 再帰 | ディレクトリーの場合は、すべてのサブディレクトリー内のファイルも検索します。 | boolean |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
65.2. 依存関係
ランタイム時に、sftp-source
Kamelet は、以下の依存関係の存在に依存します。
- camel:ftp
- camel:core
- camel:kamelet
65.3. 使用方法
本セクションでは、sftp-source
を使用する方法を説明します。
65.3.1. Knative ソース
sftp-source
Kamelet を Knative オブジェクトにバインドすることにより、これを Knative ソースとして使用できます。
sftp-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: sftp-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: sftp-source properties: connectionHost: "The Connection Host" directoryName: "The Directory Name" password: "The Password" username: "The Username" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
65.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
65.3.1.2. クラスター CLI の使用手順
-
sftp-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f sftp-source-binding.yaml
65.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind sftp-source -p "source.connectionHost=The Connection Host" -p "source.directoryName=The Directory Name" -p "source.password=The Password" -p "source.username=The Username" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
65.3.2. Kafka Source
sftp-source
Kamelet を Kafka トピックにバインドすることにより、Kafka ソースとして使用できます。
sftp-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: sftp-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: sftp-source properties: connectionHost: "The Connection Host" directoryName: "The Directory Name" password: "The Password" username: "The Username" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
65.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
65.3.2.2. クラスター CLI の使用手順
-
sftp-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f sftp-source-binding.yaml
65.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind sftp-source -p "source.connectionHost=The Connection Host" -p "source.directoryName=The Directory Name" -p "source.password=The Password" -p "source.username=The Username" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
65.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/sftp-source.kamelet.yaml
第66章 Slack ソース
Slack チャネルからメッセージを受信します。
66.1. 設定オプション
以下の表では、slack-source
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
channel * | Channel | メッセージを受信する Slack チャネル | string |
| |
token * | Token | Slack にアクセスするためのトークン。Slack アプリが必要です。このアプリには、channels:history と channels:read の権限が必要です。Bot User OAuth Access Token は、必要な種類のトークンです。 | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
66.2. 依存関係
ランタイム時に、slack-source
Kamelet は、以下の依存関係の存在に依存します。
- camel:kamelet
- camel:slack
- camel:jackson
66.3. 使用方法
本セクションでは、slack-source
を使用する方法を説明します。
66.3.1. Knative ソース
slack-source
Kamelet を Knative オブジェクトにバインドすることにより、これを Knative ソースとして使用できます。
slack-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: slack-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: slack-source properties: channel: "#myroom" token: "The Token" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
66.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
66.3.1.2. クラスター CLI の使用手順
-
slack-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f slack-source-binding.yaml
66.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind slack-source -p "source.channel=#myroom" -p "source.token=The Token" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
66.3.2. Kafka Source
slack-source
Kamelet を Kafka トピックにバインドすることにより、Kafka ソースとして使用できます。
slack-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: slack-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: slack-source properties: channel: "#myroom" token: "The Token" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
66.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
66.3.2.2. クラスター CLI の使用手順
-
slack-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f slack-source-binding.yaml
66.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind slack-source -p "source.channel=#myroom" -p "source.token=The Token" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
66.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/slack-source.kamelet.yaml
第67章 Microsoft SQL Server Sink
Microsoft SQL Server データベースにデータを送信します。
この Kamelet は JSON をボディーとして想定します。JSON フィールドとパラメーター間のマッピングはキーで実行されるため、以下のクエリーがある場合は以下を実行します。
'INSERT INTO accounts (username,city) VALUES (:#username,:#city)'
Kamelet は、以下のような入力として受信する必要があります。
'{ "username":"oscerd", "city":"Rome"}'
67.1. 設定オプション
以下の表は、sqlserver-sink
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
databaseName * | データベース名 | ポイントするデータベース名 | string | ||
Password * | Password | セキュアな SQL Server データベースへのアクセスに使用するパスワード | string | ||
query * | Query | SQL Server データベースに対して実行するクエリー | string |
| |
serverName * | サーバー名 | データソースのサーバー名 | string |
| |
username * | ユーザー名 | セキュアな SQL Server データベースへのアクセスに使用するユーザー名 | string | ||
serverPort | サーバーポート | データソースのサーバーポート | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
67.2. 依存関係
ランタイム時に、sqlserver-sink
Kamelet は、以下の依存関係の存在に依存します。
- camel:jackson
- camel:kamelet
- camel:sql
- mvn:org.apache.commons:commons-dbcp2:2.7.0.redhat-00001
- mvn:com.microsoft.sqlserver:mssql-jdbc:9.2.1.jre11
67.3. 使用方法
本セクションでは、sqlserver-sink
を使用する方法を説明します。
67.3.1. Knative Sink
sqlserver-sink
Kamelet を Knative オブジェクトにバインドすることにより、Knative シンクとして使用できます。
sqlserver-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: sqlserver-sink-binding spec: source: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: sqlserver-sink properties: databaseName: "The Database Name" password: "The Password" query: "INSERT INTO accounts (username,city) VALUES (:#username,:#city)" serverName: "localhost" username: "The Username"
67.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
67.3.1.2. クラスター CLI の使用手順
-
sqlserver-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f sqlserver-sink-binding.yaml
67.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind channel:mychannel sqlserver-sink -p "sink.databaseName=The Database Name" -p "sink.password=The Password" -p "sink.query=INSERT INTO accounts (username,city) VALUES (:#username,:#city)" -p "sink.serverName=localhost" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
67.3.2. Kafka Sink
sqlserver-sink
Kamelet を Kafka シンクとして使用することは、Kafka トピックにバインドします。
sqlserver-sink-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: sqlserver-sink-binding spec: source: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic sink: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: sqlserver-sink properties: databaseName: "The Database Name" password: "The Password" query: "INSERT INTO accounts (username,city) VALUES (:#username,:#city)" serverName: "localhost" username: "The Username"
67.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
67.3.2.2. クラスター CLI の使用手順
-
sqlserver-sink-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせてこれを編集します。 以下のコマンドを使用してシンクを実行します。
oc apply -f sqlserver-sink-binding.yaml
67.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してシンクを設定し、実行します。
kamel bind kafka.strimzi.io/v1beta1:KafkaTopic:my-topic sqlserver-sink -p "sink.databaseName=The Database Name" -p "sink.password=The Password" -p "sink.query=INSERT INTO accounts (username,city) VALUES (:#username,:#city)" -p "sink.serverName=localhost" -p "sink.username=The Username"
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
67.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/sqlserver-sink.kamelet.yaml
第68章 Telegram ソース
Telegram ボットに送信されたすべてのメッセージを受信します。
ボットを作成するには、Telegram アプリケーションを使用して @botfather アカウントにお問い合わせください。
ソースは、以下のヘッダーをメッセージに割り当てます。
-
chat-id
/ce-chatid
: メッセージが出るチャットの ID
68.1. 設定オプション
以下の表に、telegram-source
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
authorizationToken * | Token | Telegram でボットにアクセスするためのトークン。Telegram @botfather から取得できます。 | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
68.2. 依存関係
実行時には、telegram-source
Kamelet は以下の依存関係の存在に依存します。
- camel:jackson
- camel:kamelet
- camel:telegram
- camel:core
68.3. 使用方法
本セクションでは、telegram-source
の使用方法を説明します。
68.3.1. Knative ソース
telegram-source
Kamelet を Knative オブジェクトにバインドすることにより、Knative ソースとして使用できます。
telegram-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: telegram-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: telegram-source properties: authorizationToken: "The Token" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
68.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
68.3.1.2. クラスター CLI の使用手順
-
telegram-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f telegram-source-binding.yaml
68.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind telegram-source -p "source.authorizationToken=The Token" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
68.3.2. Kafka Source
telegram-source
Kamelet を Kafka トピックにバインドすることにより、Kafka のソースとして使用できます。
telegram-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: telegram-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: telegram-source properties: authorizationToken: "The Token" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
68.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
68.3.2.2. クラスター CLI の使用手順
-
telegram-source-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用してソースを実行します。
oc apply -f telegram-source-binding.yaml
68.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind telegram-source -p "source.authorizationToken=The Token" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
68.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/telegram-source.kamelet.yaml
第69章 スロットルアクション
スロットルアクションを使用すると、特定のシンクが過負荷にならないようにすることができます。
69.1. 設定オプション
以下の表では、throttle-action
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
messages * | Messages Number | 設定した時間内に送信するメッセージ数 | integer |
| |
timePeriod | Time Period | 最大要求数の有効期限をミリ秒単位で設定する | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
69.2. 依存関係
実行時に、throttle-action
Kamelet は以下の依存関係の存在に依存します。
- camel:core
- camel:kamelet
69.3. 使用方法
ここでは、throttle-action
の使用方法について説明します。
69.3.1. Knative Action
throttle-action
Kamelet は、Knative バインディングの中間ステップとして使用できます。
throttle-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: throttle-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: throttle-action properties: messages: 1 sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
69.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
69.3.1.2. クラスター CLI の使用手順
-
throttle-action-binding.yaml
ファイルをローカルドライブに保存してから、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f throttle-action-binding.yaml
69.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step throttle-action -p "step-0.messages=10" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
69.3.2. Kafka Action
throttle-action
Kamelet は、Kafka バインディングの中間ステップとして使用できます。
throttle-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: throttle-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: throttle-action properties: messages: 1 sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
69.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
69.3.2.2. クラスター CLI の使用手順
-
throttle-action-binding.yaml
ファイルをローカルドライブに保存してから、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f throttle-action-binding.yaml
69.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step throttle-action -p "step-0.messages=1" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
69.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/throttle-action.kamelet.yaml
第70章 タイマーソース
カスタムペイロードを使用して定期的なイベントを生成します。
70.1. 設定オプション
次の表は、timer-source
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
message * | Message | 生成するメッセージ | string |
| |
contentType | コンテンツタイプ | 生成されるメッセージのコンテンツタイプ | string |
| |
period | 期間 | 2 つのイベントの間隔 (ミリ秒単位) | integer |
| |
repeatCount | 繰り返し回数 | 実行回数の上限を指定します。 | integer |
アスタリスク (*) のマークが付いたフィールドは必須です。
70.2. 依存関係
timer-source
Kamelet は、実行時に以下の依存関係の存在に依存します。
- camel:core
- camel:timer
- camel:kamelet
70.3. 使用方法
ここでは、timer-source
の使用方法について説明します。
70.3.1. Knative ソース
timer-source
Kamelet を Knative オブジェクトにバインドすることにより、Knative ソースとして使用できます。
timer-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: timer-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "hello world" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
70.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
70.3.1.2. クラスター CLI の使用手順
-
timer-source-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してソースを実行します。
oc apply -f timer-source-binding.yaml
70.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind timer-source -p "source.message=hello world" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
70.3.2. Kafka Source
timer-source
Kamelet を Kafka のトピックにバインドすることで、Kafka のソースとして使用することができます。
timer-source-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: timer-source-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "hello world" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
70.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
70.3.2.2. クラスター CLI の使用手順
-
timer-source-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集してください。 以下のコマンドを使用してソースを実行します。
oc apply -f timer-source-binding.yaml
70.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用してソースを設定および実行します。
kamel bind timer-source -p "source.message=hello world" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
70.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/timer-source.kamelet.yaml
第71章 ルーターのタイムスタンプアクション
topic フィールドを、元のトピック名およびレコードのタイムスタンプとして更新します。
71.1. 設定オプション
次の表は、timestamp-router-action
Kamelet で利用可能な設定オプションをまとめたものです。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
timestampFormat | タイムスタンプの形式 | java.text.SimpleDateFormat と互換性があるタイムスタンプの文字列の文字列。 | string |
| |
timestampHeaderName | タイムスタンプヘッダー名 | タイムスタンプが含まれるヘッダーの名前 | string |
| |
topicFormat | トピックの形式 | それぞれトピックとタイムスタンプのプレースホルダーとして '$[topic]' および '$[timestamp]' を含む文字列のフォーマット文字列。 | string |
|
アスタリスク (*) のマークが付いたフィールドは必須です。
71.2. 依存関係
実行時、timestamp-router-action
Kamelet は以下の依存関係の存在に依存しています。
- github:openshift-integration.kamelet-catalog:camel-kamelets-utils:kamelet-catalog-1.6-SNAPSHOT
- camel:kamelet
- camel:core
71.3. 使用方法
ここでは、timestamp-router-action
の使用方法について説明します。
71.3.1. Knative Action
timestamp-router-action
Kamelet は、Knative バインディングの中間ステップとして使用することができます。
timestamp-router-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: timestamp-router-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timestamp-router-action sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
71.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
71.3.1.2. クラスター CLI の使用手順
-
timestamp-router-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f timestamp-router-action-binding.yaml
71.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step timestamp-router-action channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
71.3.2. Kafka Action
timestamp-router-action
Kamelet は、Kafka バインディングの中間ステップとして使用することができます。
timestamp-router-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: timestamp-router-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timestamp-router-action sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
71.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
71.3.2.2. クラスター CLI の使用手順
-
timestamp-router-action-binding.yaml
ファイルをローカルドライブに保存し、必要に応じて設定を編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f timestamp-router-action-binding.yaml
71.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step timestamp-router-action kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
71.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/timestamp-router-action.kamelet.yaml
第72章 キー動作に対する値
Kafka レコードキーを、ボディーのフィールドのサブセットから形成された新しいキーに置き換えます。
72.1. 設定オプション
以下の表には、value-to-key-action
Kamelet で利用可能な設定オプションをまとめています。
プロパティー | 名前 | 説明 | 型 | デフォルト | 例 |
---|---|---|---|---|---|
fields * | フィールド | 新しいキーを設定するために使用されるフィールドのコンマ区切りリスト | string |
アスタリスク (*) のマークが付いたフィールドは必須です。
72.2. 依存関係
ランタイム時に、value-to-key-action
Kamelet は、以下の依存関係の存在に依存します。
- github:openshift-integration.kamelet-catalog:camel-kamelets-utils:kamelet-catalog-1.6-SNAPSHOT
- camel:core
- camel:jackson
- camel:kamelet
72.3. 使用方法
本セクションでは、value-to-key-action
を使用する方法を説明します。
72.3.1. Knative Action
value-to-key-action
Kamelet を Knative バインディングの中間ステップとして使用できます。
value-to-key-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: value-to-key-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: value-to-key-action properties: fields: "The Fields" sink: ref: kind: Channel apiVersion: messaging.knative.dev/v1 name: mychannel
72.3.1.1. 前提条件
接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
72.3.1.2. クラスター CLI の使用手順
-
value-to-key-action-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f value-to-key-action-binding.yaml
72.3.1.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step value-to-key-action -p "step-0.fields=The Fields" channel:mychannel
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
72.3.2. Kafka Action
value-to-key-action
Kamelet を Kafka バインディングの中間ステップとして使用できます。
value-to-key-action-binding.yaml
apiVersion: camel.apache.org/v1alpha1 kind: KameletBinding metadata: name: value-to-key-action-binding spec: source: ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: timer-source properties: message: "Hello" steps: - ref: kind: Kamelet apiVersion: camel.apache.org/v1alpha1 name: value-to-key-action properties: fields: "The Fields" sink: ref: kind: KafkaTopic apiVersion: kafka.strimzi.io/v1beta1 name: my-topic
72.3.2.1. 前提条件
AMQ Streams Operator を OpenShift クラスターにインストールし、現在の namespace に my-topic
という名前のトピックを作成していることを確認します。接続先の OpenShift クラスターにRed Hat Integration - Camel Kがインストールされていることを確認します。
72.3.2.2. クラスター CLI の使用手順
-
value-to-key-action-binding.yaml
ファイルをローカルドライブに保存し、設定に合わせて編集します。 以下のコマンドを使用して、アクションを実行します。
oc apply -f value-to-key-action-binding.yaml
72.3.2.3. Kamel CLI を使用するための手順
以下のコマンドを使用して、アクションを設定および実行します。
kamel bind timer-source?message=Hello --step value-to-key-action -p "step-0.fields=The Fields" kafka.strimzi.io/v1beta1:KafkaTopic:my-topic
このコマンドは、クラスターの現在の namespace に KameletBinding を作成します。
72.4. Kamelet ソースファイル
https://github.com/openshift-integration/kamelet-catalog/value-to-key-action.kamelet.yaml