第5章 Camel K リリースノート
Camel K は、OpenShift のクラウドでネイティブで実行される Apache Camel K からビルドされる軽量のインテグレーションフレームワークです。Camel K は、サーバーレスおよびマイクロサービスアーキテクチャー向けに特別に設計されています。Camel K を使用すると、Camel Domain Specific Language (DSL) で書かれたインテグレーションコードを直接 OpenShift で即座に実行することができます。
Camel K を OpenShift Serverless および Knative とともに使用すると、コンテナーは必要な場合のみ自動的に作成され、負荷時の自動スケーリングやゼロへのスケーリングが行われます。これにより、サーバーのプロビジョニングとメンテナンスのオーバーヘッドがなくなり、アプリケーションの開発に集中することができます。
Camel K を OpenShift Serverless および Knative Eventing とともに使用すると、システムのコンポーネントがサーバーレスアプリケーションのイベント駆動型アーキテクチャーで通信する方法を管理できます。これにより、イベントプロデューサーとコンシューマー間の関係が切り離されたパブリッシュ/サブスクライブモデルまたはイベントストリーミングモデルを使用すると、柔軟性を提供し、効率化を実現できます。
5.1. Camel K の新機能
Camel K は、以下の主要機能でクラウドネイティブインテグレーションを提供します。
- 自動スケーリングおよびゼロへのスケーリングを行うための Knative Serving
- イベント駆動型アーキテクチャーのための Knative Eventing
- デフォルトで Quarkus ランタイムを使用するパフォーマンスの最適化
- Java または YAML DSL で書かれた Camel インテグレーション
- OpenShift で Prometheus を使用したインテグレーションのモニタリング
- クイックスタートチュートリアル
- AWS、Jira、Salesforce などの外部システムへのコネクター用 Kamelet Catalog
以下のトレイトがテクノロジープレビューとして提供されます。
- Knative Service トレイト
- Knative トレイト
- OpenAPI トレイト
5.1.1. サポート対象の Kamelets
以下の表は、Camel K Operator のインストール時に OpenShift リソースとして提供される kamelets を示しています。
これらの kamelets の詳細は、https://github.com/openshift-integration/kamelet-catalog/tree/kamelet-catalog-1.4 を参照してください。
kamelets を使用してアプリケーションとサービスを接続する方法は、https://access.redhat.com/documentation/ja-jp/red_hat_integration/2021.Q3/html-single/integrating_applications_with_kamelets を参照してください。
アスタリスク (*) のマークが付いた Kamelets は、テクノロジープレビュー機能としてのみ提供されています。テクノロジープレビュー機能は、Red Hat の本番環境のサービスレベルアグリーメント (SLA) ではサポートされず、機能的に完全ではないことがあるため、Red Hat は本番環境での使用は推奨しません。Red Hat は実稼働環境でこれらを使用することを推奨していません。
このような機能は、近々発表予定の製品機能をリリースに先駆けてご提供します。これにより、お客様は機能性をテストし、開発プロセス中にフィードバックをお寄せいただくことができます。Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、「テクノロジプレビュー機能のサポート範囲」を参照してください。
表5.1 Camel K Operator で提供される Kamelets
Kamelet | ファイル名 | タイプ (シンク、ソース、アクション) |
---|---|---|
AWS 2 S3 |
| ソース/シンク |
AWS 2 Kinesis |
| ソース/シンク |
AWS 2 Lambda |
| シンク |
AWS 2 Simple Notification System |
| シンク |
AWS 2 Simple Queue Service |
| ソース/シンク |
Cassandra* |
| ソース/シンク |
データベース (PostgreSQL、MySQL、または SQL Server) |
| シンク |
Elasticsearch* |
| シンク |
(S)FTP |
| ソース/シンク |
HTTP |
| シンク |
Jira* |
| ソース |
JMS |
| ソース/シンク |
Kafka |
| ソース/シンク |
MongoDB |
| ソース/シンク |
Salesforce |
| ソース |
Telegram* |
| ソース |
正規表現ルーター |
| アクション (ルーター) |
TimeStamp |
| アクション (ルーター) |
Message TimeStamp |
| アクション (ルーター) |
述語フィルター |
| アクション (ルーター/フィルター) |
トピック名フィルター |
| アクション (データ変換) |
ヘッダーキーフィルター |
| アクション (データ変換) |
廃棄フィルター |
| アクション (データ変換) |
Value to Key |
| アクション (データ変換) |
フィールドのマスク |
| アクション (データ変換) |
ヘッダーの挿入 |
| アクション (データ変換) |
フィールドの挿入 |
| アクション (データ変換) |
Avro デシリアライズ/シリアライズ |
| アクション (データ変換) |
Protobuf デシリアライズ/シリアライズ |
| アクション (データ変換) |
JSON デシリアライズ/シリアライズ |
| アクション (データ変換) |