aptpod Tech Blog

株式会社アプトポッドのテクノロジーブログです

ブラウザ操作でエッジデバイスをOTAアップデートできる新機能をリリースしました

intdashグループの野本です。

先日、intdashの新しいバージョンがリリース*1され、ブラウザからインターネット経由でデバイスの設定変更やOTAアップデートができる「Device Management Console」が新しく追加されました。

Device Management Console

この記事では、Device Management Consoleについて簡単にご紹介したいと思います。

Device Management Consoleとは

Device Management Consoleは、Terminal System 2が搭載されたデバイスを対象とした、OTA (Over the Air)デプロイメントを管理するためのWebコンソールです。

ユーザーは、ブラウザ上で操作することにより、OTAサーバー*2を経由して、Terminal System 2に対して各種操作やOTAを行うことができます。

https://docs.intdash.jp/manual/docs/latest/ja/_images/device-management-console-mender1.png

従来、Terminal System 2の操作を行うためには、Menderアカウントを作成し、Menderが提供している汎用的なWeb UIを使用する必要がありました。
新しいバージョンでは、今回リリースされたDevice Management Consoleを使用することで、intdashアカウントのみを利用して、最適化されたインターフェースでTerminal System 2を操作をすることができるようになりました。

Device Management Consoleでできること

Device Management Consoleでは、以下の操作が可能です。

デバイス管理

  • デバイスの一覧表示
  • デバイスの詳細情報表示
  • デバイスグループの作成
  • デバイスの認証管理

OTA/デプロイメント

  • デバイス設定の変更
  • デバイスの各種操作(計測の開始/終了、再起動など)
  • ソフトウェアの更新
  • 周辺機器のファームウェアの更新
  • デプロイメント履歴の一覧表示

実際に使ってみる

実際にDevice Management Consoleを使ってみましょう。 例として、新しく構築したintdashサーバーとTerminal System 2を利用し、遠隔で計測開始する手順を説明します。

事前準備

あらかじめ、セットアップ(プロビジョニング)が完了したTerminal System 2を起動しておき、Ethernetケーブルを接続してインターネットに接続した状態にしてください。 Terminal System 2は自動的にOTAサーバーに対して認証要求を送信します。

Device Management Consoleにアクセスする

Project Consoleを開き、右上の ボタンをクリックし、Device Management Consoleをクリックします。

Project Consoleのメニュー

おっと、エラー画面が表示されました。

OTAサービス設定がされていない

Device Management Consoleを使用するためには、OTAサービス設定の有効化が必要です。 OTAサービス設定はデフォルトで有効化されていませんので、設定を有効化しましょう。

OTAサービス設定

Admin Consoleを表示し、新しく追加されたOTAサービス設定画面を開きます。

OTAサービス設定画面

使用するMenderサーバーの接続情報を入力し、有効化します。

これでDevice Management Consoleを使用する準備ができました。再度、Device Mnaagement Consoleにアクセスします。

デバイス認証要求の承諾

Device Management Consoleのフロントページは、デバイス一覧画面を表示します。

デバイス一覧画面

Device Management Consoleでデバイスを扱えるようにするには、デバイスからMenderサーバーに送信された認証要求を承認する必要があります。 認証ステータスがPendingとなっているデバイスの[詳細]をクリックして、デバイス詳細画面を開きます。

デバイス認証要求の承認

デバイス詳細画面の[認証]タブの[承諾]ボタンをクリックして、デバイスの認証要求を承諾します。 これで、Device Management Consoleでデバイスを扱えるようになりました。

次は、計測を開始するためにデバイスの設定を変更します。

デバイス設定の変更

デバイス詳細画面の[設定]タブをクリックすると、現在のデバイスの設定を表示します。

デバイスの設定変更

[設定を変更する]をクリックして、テキストボックス内で設定を変更します。

intdashサーバー接続情報を設定する場合は、 agent.connection に値を設定します。

"agent.connection": {
   "server_url": "https://example.intdash.jp",
   "project_uuid": "00000000-0000-0000-0000-000000000000",
   "edge_uuid": "f90f2b42........468c36.EXAMPLE",
   "client_secret": "sEh9ZHPoKX8QYU...iBn5.EXAMPLE"
}

[デプロイメントを作成]をクリックすると、デバイスの設定を変更することができます。

デプロイメントを作成

計測を開始する

デバイス一覧画面で、計測を開始するデバイスにチェックマークを入れ、[デプロイメントを作成]をクリックします。

デプロイメントを作成

[リリースを選択]をクリックし、 measurement-start_<Terminal System OSのバージョン> (計測を開始するスクリプト)を選択し、デプロイメントを強制を有効化します。

計測開始をデプロイ

[デプロイメントを作成]をクリックすると、デプロイメント詳細画面に遷移します。

デプロイメント結果の確認

デプロイメント詳細画面では、デプロイメントのステータスやデバイスごとの進捗状況を確認することができます。

デプロイ結果

画面下部の[デバイス]セクションで、デバイスへのデプロイ結果が success になっていることを確認します。 今回は計測を開始するリリースをデプロイしたため、計測が正常に開始されたことが確認できました。

Edge Finderを開くと、intdashサーバーにリアルタイムデータが送信されています。

Edge Finderで確認

まとめ

新しくリリースされたDevice Management Consoleを使用し、遠隔で計測開始する手順をご紹介いたしました。

今回ご紹介した例は、計測を開始するスクリプトを遠隔からデプロイし、デバイス上で実行しています。 デプロイするリリースを変更することで、計測の停止、ソフトウェア/ファームウェアの更新なども同様の手順で行うことができます。 また、独自のアーティファクトを作成することで、幅広いユースケースのアップデート機能も実現可能です。*3

今後のリリースでは、より簡易にデバイス設定変更ができるようにする改善などを予定しております。今後のアップデートにもご期待ください。