Eclipse Kapua™: IoTデバイスのためのモジュラー統合プラットフォーム
Eclipse Kapua™は、IoTデバイスとスマートセンサーのためのモジュラー統合プラットフォームであり、運用技術(OT)と情報技術(IT)を結びつけることを目的としています。以下に、Eclipse Kapua™プロジェクトの機能アーキテクチャを示します。
デバイス接続
デバイスの接続は、マルチプロトコルメッセージブローカーを通じて管理されます。初期の貢献では、デバイス接続のプロトコルとしてIoTプロトコルMQTTが使用されます。このブローカーは、アプリケーション統合のためにAMQPやWebSocketなどの他のプロトコルもサポートしています。デバイス接続モジュールは、接続の認証、適切な権限の強制(例えば、トピックネームスペース内で)、およびデバイスレジストリの維持を担当します。デバイスレジストリは、デバイスプロファイル、デバイス接続状況、デバイス接続ログを保存します。また、カスタム属性やタグを通じてデバイスの組織化を可能にします。
メッセージルーティング
デバイスから公開されるデータのストリームは、異なる消費者を持つ場合があります。コマンドおよび制御メッセージのような特定のメッセージは、デバイス管理コンポーネントによって消費されることを意図しています。一方、テレメトリデータのような他のメッセージは、IoTプラットフォームにアーカイブされるか、他のシステムにリダイレクトされることを意図しています。メッセージルーティングコンポーネントは、構成可能なマッサージルートを通じてメッセージストリームの柔軟な処理を可能にし、ハードコーディングされた動作を回避します。
デバイス管理
デバイス管理コンポーネントを通じて、IoTプラットフォームは接続されたデバイスに対してリモート操作を実行できます。IoTプラットフォームは、管理されるデバイスに対してオープンな契約を公開し、デバイスソフトウェアスタックに対する仮定を持ちません。初期の貢献では、デバイス管理契約はMQTT上のオープンアプリケーションプロトコルに基づいています。このプロトコルは、Eclipse Kuraプロジェクトによって既に実装されています。このプロトコルを使用することで、IoTプラットフォームは以下のことが可能です:
- デバイス設定の調査と管理
- サービスの開始および停止操作を含むデバイスサービスの管理
- アプリケーションのインストール、更新、削除を含むデバイスアプリケーションの管理
- デバイス上でのリモートOSコマンドの実行
- デバイス属性とリソースの取得および設定
- デバイスの初期設定のプロビジョニング
データ管理
Eclipse Kapuaは、デバイスから送信されたテレメトリデータを永続ストレージにアーカイブし、アプリケーションの取得を可能にします。タイムスタンプ、地理的位置、強く型付けされたメッセージヘッダー、および不透明なメッセージボディを含む参照メッセージペイロードが定義されています。選択されたエンコーディングは、オープンなGoogle Protocol Buffers文法に基づいています。初期の貢献では、柔軟なインデックス付けを可能にするためにNoSQLデータストレージが使用されます。受信メッセージは、タイムスタンプ、トピック、および発信資産によって保存およびインデックス付けされます。NoSQLストレージは、メッセージヘッダーのインデックス付けも可能にします。データ管理は、受信トラフィックを維持するトピックとメトリックを管理するデータレジストリも保持します。
セキュリティ
基盤層は、テナント、アカウント、ユーザーの管理など、IoTプラットフォームのセキュリティ面を維持します。アカウントモデルは、階層的なアクセス制御構造をサポートします。役割ベースのアクセス制御(RBAC)に従い、ユーザーのアイデンティティは定義され、1つ以上の権限に関連付けられ、「最小特権」の原則を保証します。デバイスは、これらのユーザーアイデンティティの1つの資格情報またはSSL認証を使用してプラットフォームに接続します。
アプリケーション統合
既存のアプリケーションとの統合のために、Eclipse Kapuaは、表現状態転送(REST)に基づく最新のWebサービスAPIを提供します。REST APIは、デバイス管理やデータ管理を含むすべてのプラットフォーム機能を公開します。また、REST APIは、アプリケーションからデバイスへのコマンドのルーティングを可能にするMQTTブローカーへの「ブリッジ」を提供し、メッセージブローカーへの特定の接続なしに実現します。REST/Comet/WebSocketsなどの技術が含まれ、デバイスから公開されたデータのリアルタイム表示をWebページやモバイルダッシュボードで可能にします。
管理コンソール
Eclipse Kapuaは、すべてのデバイスおよびデータ管理操作を実行するためのWebベースの管理コンソールを備えています。以下に、管理コンソールのスクリーンショットを示します。
結論
Eclipse Kapua™は、IoTデバイスの管理とデータ統合を効率化するための強力なプラットフォームです。最新の機能と柔軟なアーキテクチャにより、さまざまな業界でのIoTソリューションの構築をサポートします。ぜひ、Eclipse Kapua™を試してみてください!