Eclipse Hono、MongoDBベースのデバイスレジストリを導入——スケーラブルで本番対応
公式サイトで説明されている通り、Eclipse Honoは、使用プロトコルに関わらず、数千のデバイスをバックエンドサービスに接続するための統一APIを提供するIoT接続プラットフォームです。AMQP、CoAP、HTTP、MQTTを標準サポート。プラットフォームはマイクロサービスで構成され、Dockerコンテナとしてパッケージ化され、Kubernetesや類似のオーケストレーターでデプロイされます。
コアコンポーネントの一つがデバイスレジストリで、テナント、デバイス、認証情報を格納。プロトコルアダプタはレジストリを参照し、テナントとデバイスが登録・有効かを確認し、テレメトリ、イベント、コマンド応答を受け入れる前にデバイスを認証。レジストリはこのデータ管理用のHTTP APIも公開します。
Hono 1.3.0以前、組み込みレジストリはファイルベースのみで、デモには適するが水平スケーリング不能なため本番には不向き。ユーザーは実デプロイ用に独自レジストリを実装する必要がありました。1.3.0リリースでこの壁が取り払われました。
MongoDBベースのデバイスレジストリ
Honoに本番グレードのレジストリが搭載され、データをMongoDBに永続化。テナント、デバイス、認証情報は個別コレクションに格納され、データベースのネイティブなシャーディングと水平スケーリング機能を自動的に活用可能。デバイス数増加に合わせてレジストリを容易にスケールできます。
MongoDBレジストリのHTTPエンドポイントは基本認証で保護可能。クライアントはユーザー名とパスワードでリソース管理。設定プロパティ hono.registry.http.authenticationRequired を true または false で切り替え。詳細設定はMongoDB Device Registry設定ガイドを参照。
Helmを使用したMongoDBレジストリ付きHonoのデプロイ
Eclipse IoT Packagesリポジトリが、KubernetesへのHonoインストール用Helmチャートをホスト。デフォルトではファイルベースレジストリがデプロイされます。以下の手順でMongoDBレジストリ付きHonoをインストール:
- Eclipse IoTチャートリポジトリを追加:
$ helm repo add eclipse-iot https://eclipse.org/packages/charts
- MongoDBレジストリ付きHonoを
honoネームスペースにインストール:$ helm install \ --set deviceRegistryExample.type=mongodb \ --set mongodb.createInstance=true \ --dependency-update \ -n hono eclipse-hono eclipse-iot/hono
deviceRegistryExample.type=mongodbフラグでデフォルトのファイルベースではなくMongoDB実装を選択。mongodb.createInstance=true(デフォルトfalse)で、チャートが新しいMongoDBインスタンスを別マイクロサービスとしてデプロイ。既存MongoDBがある場合はfalseに設定し接続詳細を提供:mongodb: host: # MongoDBインスタンスのホスト名またはIP port: # リッスンポート dbName: # デバイスレジストリ用データベース名 username: # オプションの認証ユーザー名 password: # オプションの認証パスワード
- インストール後、HelmチャートのREADMEの手順でデプロイを検証。
これらの手順で、Honoは堅牢なMongoDBバックエンドを使用して、大規模デバイス管理の準備が整います。
産業技術
- AT89S52マイコンとLM35センサーによる温度ベース機器制御システム
- 新Eclipse SDVワーキンググループ、自動車とITを結集しソフトウェア定義車両を推進
- Eclipse Hono 1.0.0リリース:統合オープンソースIoT接続プラットフォーム
- レーザーベースシステムで材料の放射線損傷をリアルタイム監視
- フレキシブルなレクテナでWi-Fi電波を電力に変換、微小デバイス駆動へ道
- 降雪から静電気を収穫する革新デバイスで再生可能電力を生成
- インダストリー5.0:未来の製造業を再定義する
- SECO、Intel第8世代Core Uおよび第9世代Core Hプロセッサー搭載の高性能ソリューションを発表
- IoTからクリプトジャッキングまで:モバイルデバイス新興脅威ガイド
- Arkema、産業用途向け耐久性PEKK・PVDF 3Dプリントフィラメントを発表
- Java 10の時間ベースリリースバージョニング:予測可能な半年ごとのアップデート