EclipseHonoでの新しいMongoDBベースのデバイスレジストリのリリース
Eclipse Honoは、公式サイトで説明されているように、デバイスで使用されるさまざまな通信プロトコルに関係なく、多数のIoTデバイスをバックエンドに接続するための統合APIを提供するIoT接続プラットフォームです。 Honoは、AMQP、COAP、HTTP、MQTTなどのプロトコルを介して通信するデバイスをすぐにサポートします。 Eclipse Honoは、Dockerコンテナーとしてパッケージ化され、Kubernetesなどのコンテナーオーケストレーションシステムにデプロイされるいくつかのマイクロサービスで構成されています。
デバイスレジストリは、Honoがすべてのテナント、デバイス、およびデバイスの資格情報を追跡するコンポーネントの1つです。プロトコルアダプタはデバイスレジストリを使用してテナントとデバイスが登録され、有効になっているかどうかを確認するため、Honoにとって非常に重要です。それに加えて、プロトコルアダプタは、テレメトリ、イベント、またはコマンド応答メッセージを受け入れる前に、デバイスレジストリを使用してデバイスを認証します。デバイスレジストリは、HTTPベースのデバイス管理APIも実装して、テナント、デバイス、および資格情報のストレージを管理します。
バージョン1.3.0まで、Honoはデータを永続化するために基盤となるローカルファイルシステムを使用する1つのデバイスレジストリ実装のみを提供していました。このファイルベースのデバイスレジストリは、デモデバイスレジストリとしての目的を十分に果たしました。ただし、コンポーネントを水平方向に簡単にスケールアウトできないため、実稼働環境での使用は意図されていません。したがって、ユーザーは、本番環境でHonoを使用するために、独自のデバイスレジストリを実装する必要がありました。 Hono 1.3.0のリリースでは、これは処理されており、本番環境でHonoを使用するために独自のデバイスレジストリを実装する必要はありません。
新しいMongoDBベースのデバイスレジストリ
現在、Honoは、MongoDBデータベースを使用してデータを永続化するもう1つのデバイスレジストリ実装を提供しています。ファイルベースの対応物とは異なり、このMongoDBベースのデバイスレジストリは、本番環境およびデモセットアップで使用することを目的としています。テナント、デバイス、クレデンシャル情報を、基盤となるMongoDBデータベースの個別のコレクションに保存します。 MongoDBは、シャーディングやデータ分散などの手法を使用した水平方向のスケールアウトをサポートしています。これにより、このレジストリはMongoDBのスケーラビリティを活用して、問題なくスケールアウトできます。
さらに、基本認証メカニズムを使用して、MongoDBデバイスレジストリ内のHTTPエンドポイントを簡単に保護できます。つまり、クライアントは、テナント、デバイス、および資格情報を管理するために、ユーザー名とパスワードを指定して、MongoDBベースのデバイスレジストリで認証する必要があります。構成プロパティ hono.registry.http.authenticationRequired
を設定することにより、認証メカニズムをオンまたはオフにできます。 true
に または false
。 MongoDBベースのデバイスレジストリを構成する方法の詳細については、MongoDBベースのデバイスレジストリ構成を参照してください。
ヘルムチャートを使用してMongoDBデバイスレジストリでEclipseHonoをインストールする
Eclipse IoTパッケージリポジトリはヘルムチャートをホストします。ヘルムチャートを使用して、KubernetesクラスターにHonoをインストールできます。デフォルトでは、Honoのヘルムチャートはファイルベースのデバイスレジストリを展開します。 Honoのヘルムチャートを使用して、MongoDBベースのデバイスレジストリでHonoをインストールする方法を紹介します。すでにKubernetesクラスターが実行されていると思います。
最初のステップは、以下のコマンドを使用してEclipseIoTパッケージチャートリポジトリを追加することです。このコマンドは、 eclipse-iot
という名前を使用してリポジトリーを追加します 。
次に、以下のコマンドを使用して、MongoDBベースのデバイスレジストリを使用してHonoを名前空間 hono
にデプロイします。 。
上記のように、プロパティ deviceRegistryExample.type
の値を設定しました mongodb
へ 。これにより、デフォルトのファイルベースのレジストリではなく、MongoDBベースのレジストリをデプロイするようにチャートが構成されます。
上記のコマンドでは、プロパティ mongodb.createInstance
を設定しました true
に 。デフォルト値は false
true
に設定されている場合 次に、チャートは新しいMongoDBデータベースインスタンスを個別のマイクロサービスとしてデプロイし、そのデータベースインスタンスを使用してデバイスレジストリデータを格納します。既存のMongoDBデータベースインスタンスを使用し、新しいインスタンスを作成しない場合は、 mongodb.createInstance
を設定します。 false
に 。その場合は、以下のMongoDB接続構成プロパティを使用して、既存のMongoDBデータベースをポイントします。
上記の手順で、これまでに、指定されたKubernetesクラスターにMongoDBベースのデバイスレジストリを使用してHonoをインストールしているはずです。インストールを確認することもできます。インストールを確認する方法の詳細については、HonoのヘルムチャートのREADMEページを参照してください。
産業技術
- コラボレーションが重要:新しいEclipseソフトウェア定義の車両ワーキンググループ
- Eclipse Hono 1.0.0がリリースされました:オープンなIoT接続プラットフォーム
- SECO:第8世代Intel CoreUおよび第9世代CoreHプロセッサーに基づく新しいソリューション
- LM35を使用した温度ベースのデバイス制御システム
- IoTから暗号ジャックへ:新しいモバイルデバイスの脅威を理解する
- 新しいレーザーベースのシステムは、材料への放射線損傷を継続的に監視できます
- 新しいフレキシブルデバイスはWiFi信号を電気に変換できます
- 新しい機械は雪だるまから電気を生成します
- Java 10 - 時間ベースのリリース バージョニング
- PEKKおよびPVDFに基づく新しい3D印刷フィラメントが利用可能になりました
- 業界5.0:新しい革命