IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ コニカミノルタ株式会社の特許一覧

特開2024-175443デバイス管理装置、デバイス管理方法及びプログラム
<>
  • 特開-デバイス管理装置、デバイス管理方法及びプログラム 図1
  • 特開-デバイス管理装置、デバイス管理方法及びプログラム 図2
  • 特開-デバイス管理装置、デバイス管理方法及びプログラム 図3
  • 特開-デバイス管理装置、デバイス管理方法及びプログラム 図4
  • 特開-デバイス管理装置、デバイス管理方法及びプログラム 図5
  • 特開-デバイス管理装置、デバイス管理方法及びプログラム 図6
  • 特開-デバイス管理装置、デバイス管理方法及びプログラム 図7
  • 特開-デバイス管理装置、デバイス管理方法及びプログラム 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024175443
(43)【公開日】2024-12-18
(54)【発明の名称】デバイス管理装置、デバイス管理方法及びプログラム
(51)【国際特許分類】
   G06F 9/445 20180101AFI20241211BHJP
【FI】
G06F9/445 130
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2023093235
(22)【出願日】2023-06-06
(71)【出願人】
【識別番号】000001270
【氏名又は名称】コニカミノルタ株式会社
(74)【代理人】
【識別番号】110002952
【氏名又は名称】弁理士法人鷲田国際特許事務所
(72)【発明者】
【氏名】岡本 悠史
【テーマコード(参考)】
5B376
【Fターム(参考)】
5B376AA14
5B376AA25
5B376AA32
(57)【要約】
【課題】異なる環境が設定されたデバイス群を管理するためのデバイス管理技術を提供することである。
【解決手段】本開示の一態様は、第1のデバイスから第2のデバイスへの切替条件が充足されているか判定する判定部と、前記切替条件が充足されていると判定すると、前記第1のデバイスに設定されている環境情報を前記第2のデバイスに設定する管理部と、前記環境情報が前記第2のデバイスに設定されると、前記第1のデバイスから前記第2のデバイスへの切替を実行する切替部と、を有するデバイス管理装置に関する。
【選択図】図2
【特許請求の範囲】
【請求項1】
第1のデバイスから第2のデバイスへの切替条件が充足されているか判定する判定部と、
前記切替条件が充足されていると判定すると、前記第1のデバイスに設定されている環境情報を前記第2のデバイスに設定する管理部と、
前記環境情報が前記第2のデバイスに設定されると、前記第1のデバイスから前記第2のデバイスへの切替を実行する切替部と、
を有するデバイス管理装置。
【請求項2】
前記環境情報は、前記第2のデバイスにインストールされているエージェントプログラムを介し設定される、請求項1に記載のデバイス管理装置。
【請求項3】
前記管理部は、管理対象のデバイスに設定されている環境情報を有し、
前記環境情報は、依存ライブラリ情報、アプリケーション情報、接続先情報、ログ/監視設定、及びライセンス情報の少なくとも1つを含む、請求項1に記載のデバイス管理装置。
【請求項4】
前記管理部は、前記管理対象のデバイスにおいて前記環境情報が更新されたことを検知すると、前記管理対象のデバイスに対して前記更新された環境情報を関連付ける、請求項3に記載のデバイス管理装置。
【請求項5】
前記管理部は、前記管理対象のデバイスに付与されるライセンスを管理し、前記切替の際、前記第1のデバイスのライセンスを前記第2のデバイスに付与する、請求項3に記載のデバイス管理装置。
【請求項6】
前記判定部は、前記第1のデバイスから受信した通知に基づいて、前記切替条件が充足されているか判定する、請求項1に記載のデバイス管理装置。
【請求項7】
前記切替部は、前記第1のデバイスの管理識別子を前記第2のデバイスに割り当てることによって前記切替を実行する、請求項1に記載のデバイス管理装置。
【請求項8】
前記第1のデバイスは、前記切替時の未処理データを前記第2のデバイスに送信する、請求項1に記載のデバイス管理装置。
【請求項9】
前記判定部が複数の第3のデバイスから前記第2のデバイスへの切替条件が充足されていると判定すると、
前記管理部は、前記複数の第3のデバイスに設定されている環境情報を前記第2のデバイスに設定し、
前記切替部は、前記複数の第3のデバイスから前記第2のデバイスへの切替を実行する、請求項1に記載のデバイス管理装置。
【請求項10】
第1のデバイスから第2のデバイスへの切替条件が充足されているか判定することと、
前記切替条件が充足されていると判定すると、前記第1のデバイスに設定されている環境情報を前記第2のデバイスに設定することと、
前記環境情報が前記第2のデバイスに設定されると、前記第1のデバイスから前記第2のデバイスへの切替を実行することと、
を有するコンピュータが実行するデバイス管理方法。
【請求項11】
第1のデバイスから第2のデバイスへの切替条件が充足されているか判定することと、
前記切替条件が充足されていると判定すると、前記第1のデバイスに設定されている環境情報を前記第2のデバイスに設定することと、
前記環境情報が前記第2のデバイスに設定されると、前記第1のデバイスから前記第2のデバイスへの切替を実行することと、
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、デバイス管理装置、デバイス管理方法及びプログラムに関する。
【背景技術】
【0002】
近年のディープラーニング技術の進展によって、機械学習モデルの利用機会が拡大している。機械学習モデルを実装したアプリケーションプログラムがインストールされた多数のエッジデバイスが、機械学習モデルが利用される現場に設置されている。例えば、工場などで製造される製品の外観検知に機械学習モデルが利用される場合、カメラと通信接続されたエッジデバイスが、製造ラインなどの様々な位置に配備されうる。
【0003】
これら設置されたエッジデバイスは、典型的には、エッジデバイスとインストールされている機械学習モデルとを管理するクラウドサーバなどと通信接続され、クラウドサーバなどによって管理されている。従来、運用中のエッジデバイスに障害が発生した場合の対処策が検討されてきた。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2022-69420号公報
【特許文献2】特開2015-201031号公報
【特許文献3】特開2017-102803号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
例えば、製造ラインを監視する各エッジデバイスは、異なるタスクを実行する異なる機械学習モデルを備えうる。例えば、エッジデバイス1は、製造ラインにおける部品を検知するタスクを実行し、エッジデバイス2は、部品の傷を検知するタスクを実行し、エッジデバイス3は、部品の色を検知するタスクを実行するなどである。この場合、エッジデバイス1~3には、異なるタスクを実行する異なる機械学習モデルが搭載される。このため、各エッジデバイスは、異なる機械学習モデルを実行するために異なる環境が設定されうる。
【0006】
運用中のエッジデバイスに障害が発生した場合、これを予備デバイスによって代替することが考えられうる。しかしながら、各エッジデバイスに異なる環境が設定される場合、障害が発生したエッジデバイスと同一の環境が予備デバイスに設定されているとは限らず、予備デバイスへのタスクの迅速な引き継ぎが困難になりうる。
【0007】
上記問題点に鑑み、本開示の1つの課題は、異なる環境が設定されたデバイス群を管理するためのデバイス管理技術を提供することである。
【課題を解決するための手段】
【0008】
本開示の一態様は、第1のデバイスから第2のデバイスへの切替条件が充足されているか判定する判定部と、前記切替条件が充足されていると判定すると、前記第1のデバイスに設定されている環境情報を前記第2のデバイスに設定する管理部と、前記環境情報が前記第2のデバイスに設定されると、前記第1のデバイスから前記第2のデバイスへの切替を実行する切替部と、を有するデバイス管理装置に関する。
【発明の効果】
【0009】
本開示によると、異なる環境が設定されたデバイス群を管理するためのデバイス管理技術を提供することができる。
【図面の簡単な説明】
【0010】
図1図1は、本開示の一実施例によるデバイス管理システムを示す概略図である。
図2図2は、本開示の一実施例によるデバイス切替処理を示す概略図である。
図3図3は、本開示の一実施例によるデバイス管理装置のハードウェア構成を示すブロック図である。
図4図4は、本開示の一実施例によるデバイス管理装置の機能構成を示すブロック図である。
図5図5は、本開示の一実施例によるデバイス管理情報を示す図である。
図6図6は、本開示の一実施例によるデバイス管理情報を示す図である。
図7図7A及び7Bは、本開示の一実施例によるデバイス管理情報を示す図である。
図8図8は、本開示の一実施例によるデバイス切替処理を示すフローチャートを示す図である。
【発明を実施するための形態】
【0011】
以下、図面を参照して本開示の実施の形態を説明する。
【0012】
以下の実施例では、機械学習モデルを実装したエッジ機器などのデバイスを管理するデバイス管理技術が開示される。
【0013】
[デバイス管理システム]
図1に示されるように、デバイス管理システム10は、エッジデバイス20_1,20_2,・・・,20_N(以降、エッジデバイス20と総称しうる)、センサデバイス30_1,30_2,・・・,30_N(以降、センサデバイス30と総称しうる)、ネットワーク40、及び、デバイス管理装置100を有する。図示されるように、エッジデバイス20は、センサデバイス30に通信接続されるとともに、ネットワーク40を介しデバイス管理装置100に通信接続される。
【0014】
エッジデバイス20は、例えば、エッジデバイス20に搭載されている機械学習モデルを利用して、カメラ、センサ等のセンサデバイス30から取得した情報に基づいて作業内容に応じた推論処理を実行する。例えば、作業内容がカメラによって撮像された画像に基づく異常検知である場合、エッジデバイス20は、取得した画像において異常を検出すると、ネットワーク40を介しデバイス管理装置100などに検出した異常の検出を通知してもよい。
【0015】
デバイス管理装置100は、ネットワーク40を介し通信接続されたエッジデバイス20を管理する。例えば、デバイス管理装置100は、エッジデバイス20が設置される際、エッジデバイス20に関する各種情報を登録及び保持する。デバイス管理装置100は、エッジデバイス20に関する各種情報をデバイス管理情報として格納する。なお、デバイス管理情報は、デバイス管理装置100内に保持されてもよいし、及び/又は他のデータベースサーバ(図示せず)などに格納されてもよい。
【0016】
以下の実施例では、図2に示されるように、エッジデバイス20_iに障害が発生した場合、デバイス管理情報100は、エッジデバイス20_iにおいて実行されるタスクを予備エッジデバイス20_rsvに代替させる。具体的には、デバイス管理情報100は、デバイス管理情報を参照して、エッジデバイス20_iに設定されている環境情報を特定し、特定した環境情報を予備エッジデバイス20_rsvに設定する。そして、デバイス管理装置100は、エッジデバイス20_iに接続されているセンサデバイス30_iの接続先を予備エッジデバイス20_rsvに変更させる。
【0017】
このようにして、デバイス管理装置100は、デバイス管理情報を利用して、故障したエッジデバイス20_iの環境情報を予備エッジデバイス20_rsvに設定し、予備エッジデバイス20_rsvにエッジデバイス20_iのタスクを迅速に引き継ぎさせることができる。
【0018】
ここで、デバイス管理装置100は、サーバ、パーソナルコンピュータ(PC)、スマートフォン、タブレット等の計算装置によって実現されてもよく、例えば、図3に示されるようなハードウェア構成を有してもよい。すなわち、デバイス管理装置100は、バスBを介し相互接続されるドライブ装置101、ストレージ装置102、メモリ装置103、プロセッサ104、ユーザインタフェース(UI)装置105及び通信装置106を有する。
【0019】
デバイス管理装置100における各種機能及び処理を実現するプログラム又は指示は、CD-ROM(Compact Disk-Read Only Memory)、フラッシュメモリ等の着脱可能な記憶媒体に格納されてもよい。当該記憶媒体がドライブ装置101にセットされると、プログラム又は指示が記憶媒体からドライブ装置101を介しストレージ装置102又はメモリ装置103にインストールされる。ただし、プログラム又は指示は、必ずしも記憶媒体からインストールされる必要はなく、ネットワークなどを介し何れかの外部装置からダウンロードされてもよい。
【0020】
ストレージ装置102は、ハードディスクドライブなどによって実現され、インストールされたプログラム又は指示と共に、プログラム又は指示の実行に用いられるファイル、データ等を格納する。
【0021】
メモリ装置103は、ランダムアクセスメモリ、スタティックメモリ等によって実現され、プログラム又は指示が起動されると、ストレージ装置102からプログラム又は指示、データ等を読み出して格納する。ストレージ装置102、メモリ装置103及び着脱可能な記憶媒体は、非一時的な記憶媒体(non-transitory storage medium)として総称されてもよい。
【0022】
プロセッサ104は、1つ以上のプロセッサコアから構成されうる1つ以上のCPU(Central Processing Unit)、GPU(Graphics Processing Unit)、処理回路(processing circuitry)等によって実現されてもよく、メモリ装置103に格納されたプログラム、指示、当該プログラム若しくは指示を実行するのに必要なパラメータなどのデータ等に従って、デバイス管理装置100の各種機能及び処理を実行する。
【0023】
ユーザインタフェース(UI)装置105は、キーボード、マウス、カメラ、マイクロフォン等の入力装置、ディスプレイ、スピーカ、ヘッドセット、プリンタ等の出力装置、タッチパネル等の入出力装置から構成されてもよく、ユーザとデバイス管理装置100との間のインタフェースを実現する。例えば、ユーザは、ディスプレイ又はタッチパネルに表示されたGUI(Graphical User Interface)をキーボード、マウス等を操作し、デバイス管理装置100を操作する。
【0024】
通信装置106は、外部装置、インターネット、LAN(Local Area Network)、セルラーネットワーク等の通信ネットワークとの有線及び/又は無線通信処理を実行する各種通信回路により実現される。
【0025】
しかしながら、上述したハードウェア構成は単なる一例であり、本開示によるデバイス管理装置100は、他の何れか適切なハードウェア構成により実現されてもよい。
【0026】
[デバイス管理装置]
次に、本開示の一実施例によるデバイス管理装置100を説明する。図4は、本開示の一実施例によるデバイス管理装置100を示すブロック図である。
【0027】
図4に示されるように、デバイス管理装置100は、判定部110、管理部120及び切替部130を有する。判定部110、管理部120及び切替部130の各機能部は、デバイス管理装置100のメモリ装置103に格納されているコンピュータプログラムがプロセッサ104によって実行されることによって実現されてもよい。
【0028】
判定部110は、運用中のデバイスから予備のデバイスへの切替条件が充足されているか判定する。具体的には、判定部110は、運用中のデバイスから受信した通知に基づいて、切替条件が充足されているか判定してもよい。例えば、判定部110は、運用中のエッジデバイス20_iにおける障害の発生を検知すると、エッジデバイス20_iを予備エッジデバイス20_rsvに切り替えることを判定してもよい。
【0029】
例えば、判定部110は、運用中の各エッジデバイス20_1~20_Nに定期的にビーコン信号などを送信させ、エッジデバイス20_iから所定の間隔又は期間内にビーコン信号を受信できなかった場合、エッジデバイス20_iに障害が発生したと判定してもよい。あるいは、各エッジデバイス20_1~20_Nから送信されるビーコン信号には、各エッジデバイス20_1~20_Nのヘルスチェック結果が含まれ、判定部110は、受信したビーコン信号のヘルスチェック結果に基づいて、各エッジデバイス20_1~20_Nにおける故障の発生を判定してもよい。
【0030】
エッジデバイス20から所定の間隔又は期間内にビーコン信号を受信できなかった場合、及び/又は、ヘルスチェック結果に基づいてエッジデバイス20に故障が発生している場合、判定部110は、運用中のエッジデバイス20から予備エッジデバイス20_rsvへの切替条件が充足されていると判定し、切替条件が充足されていることを管理部120及び/又は切替部130に通知してもよい。
【0031】
管理部120は、切替条件が充足されていると判定すると、運用中のデバイスに設定されている環境情報を予備のデバイスに設定する。ここで、管理部120は、管理対象のデバイスに設定されている環境情報を有しうる。具体的には、管理部120は、運用中のエッジデバイス20_iから予備エッジデバイス20_rsvへの切替条件の充足の通知を受信すると、デバイス管理情報における環境情報を参照してエッジデバイス20_iに設定されている環境情報を特定し、特定した環境情報を予備エッジデバイス20_rsvに設定してもよい。ここで、管理部120は、エッジデバイス20_iに設定されている環境情報と、予備エッジデバイス20_rsvに設定されている環境情報とを比較し、予備エッジデバイス20_rsvとエッジデバイス20_iとが同一の動作環境を有するように、その差分を予備エッジデバイス20_rsvに設定してもよい。
【0032】
管理部120は、管理対象のデバイスにおいて環境情報が更新されたことを検知すると、管理対象のデバイスに対して更新された環境情報を関連付けてもよい。具体的には、管理部120は、各エッジデバイス20において環境情報が更新されたことを検知すると、各エッジデバイス20及び/又は管理者などから環境情報を適宜取得し、取得した環境情報によってデバイス管理情報を更新してもよい。例えば、各エッジデバイス20において環境情報が更新されると、当該エッジデバイス20から更新された環境情報及び/又は更新通知が送信され、管理部120は、更新された環境情報及び/又は更新通知を受信することによって、環境情報の更新を検知してもよい。
【0033】
ここで、環境情報とは、例えば、依存ライブラリ情報、アプリケーション情報、接続先情報、ログ/監視設定情報、及びライセンス情報の少なくとも1つから構成されうる。依存ライブラリ情報は、エッジデバイス20において実行されるソリューションアプリケーションが動作するために必要なソフトウェア群を示すものであってもよく、例えば、オペレーティングシステム(OS)、ミドルウェア、そのバージョン情報を示すものであってもよい。
【0034】
アプリケーション情報は、例えば、エッジデバイス20に配備されているAIコンテナのバージョン、AIモデルの内容などを示すものであってもよい。接続先情報は、エッジデバイス20が何れのセンサデバイス30と接続しているかを示すものであってもよい。ログ/監視設定情報は、エッジデバイス20とデバイス管理装置100とのやりとりにおいて何れのログを監視し、何れの基準に従ってログに対するアラートを通知するかを示すものであってもよい。また、ライセンス情報は、エッジデバイス20に付与されているAIモデル、AIコンテナなどに対するライセンスに関する情報を示すものであってもよい。
【0035】
典型的には、依存ライブラリ情報は、運用中のエッジデバイス20だけでなく、予備エッジデバイス20_rsvについてもデバイス管理情報において管理されている。他方、アプリケーション情報、接続先情報、ログ/監視設定情報、及び/又はライセンス情報は、運用中のエッジデバイス20についてはデバイス管理情報において管理されているが、予備エッジデバイス20_rsvについてはデバイス管理情報に登録されていない。
【0036】
上述した環境情報を含むデバイス管理情報は、図5~7に示されるようなデータ形式により管理部120に登録及び管理されてもよい。例えば、ライセンス情報は、図5に示されるように、ライセンスID、ライセンス種別、割当デバイスID及び有効期限によって管理されてもよい。図示された例では、“部品検知AI”については、ライセンスID“Asdfghjklzxcvbnm”によって“1234567890”のエッジデバイス20には、“2023/3/31”までのライセンスが付与されている。同様に、“傷検知AI”については、ライセンスID“qwertyuiopasdfgh”によって“0987654321”のエッジデバイス20には、“2023/12/31”までのライセンスが付与されている。一方、“人検知AI”については、何れのエッジデバイス20にもライセンスは付与されていない。このようにして、管理部120は、管理対象のデバイスに付与されるライセンスを管理し、切替の際、運用中のデバイスのライセンスを予備のデバイスに付与してもよい。
【0037】
また、接続先情報は、例えば、図6に示されるように、デバイスID、稼働コンテナ、コンテナID、接続先センサ名、接続方式及び接続パスによって管理されてもよい。図示された例では、コンテナID“Ccccccc”によって識別される“部品検知AI”が稼働している“1234567890”のエッジデバイス20は、接続方式“rtsp”によって接続パス“rtsp://xxxxxxxx”を介し“カメラ1”に接続されている。また、コンテナID“Ddddddd”によって識別される“傷検知AI”が稼働している“0987654321”のエッジデバイス20は、接続方式“local”によって接続パス“/dev/usb1”を介し“カメラ2”に接続されている。
【0038】
また、エッジデバイス20と各種AIモデルを管理するクラウドとの関連付けを示すアクティベーション管理情報は、例えば、図7Aに示されるように、デバイスID及びアクティベーションコードによって管理されてもよい。図示された例では、“1234567890”のエッジデバイス20には、アクティベーションコード“12345qwert”が付与され、“0987654321”のエッジデバイス20には、アクティベーションコード“09876lkjhg”が付与されている。例えば、各エッジデバイス20がアクティベーションによってクラウドと関連付けされうる。エッジデバイスがクラウド上に登録されると、デバイスIDが発行されるとともに、発行されたデバイスIDに一意的なアクティベーションコードが割り当てられうる。
【0039】
また、依存ライブラリ情報は、例えば、図7Bに示されるように、デバイスID、管理情報及びRequired/Optionalによって管理されてもよい。図示された例では、“1234567890”のエッジデバイス20には、管理情報“接続センサ”が必須(Required)として管理され、管理情報“ログ”が任意的(Optional)として管理されている。
【0040】
なお、環境情報は、上述した実施例に限定されるものでなく、他のデータ形式によって記憶されてもよい。
【0041】
一実施例では、環境情報は、予備のデバイスにインストールされているエージェントプログラムを介し設定されてもよい。例えば、予備エッジデバイス20_rsvには、エージェントプログラムがインストールされており、管理部120は、インストールされているエージェントプログラムを利用した遠隔操作を介して、運用中のエッジデバイス20から予備エッジデバイス20_rsvへの切替に必要とされる環境情報を予備エッジデバイス20_rsvに設定してもよい。具体的には、管理部120から環境情報を取得すると、エージェントプログラムは、取得した環境情報を予備エッジデバイス20_rsvにインストールするためのインストール処理を実行してもよい。なお、OSへのインストールなど予備エッジデバイス20_rsvの再起動が必要であるケースにおいて、再起動に失敗した場合、管理部120は、管理者に予備エッジデバイス20_rsvの確認を促してもよい。
【0042】
切替部130は、環境情報が予備のデバイスに設定されると、運用中のデバイスから予備のデバイスへの切り替えを実行する。具体的には、切替部130は、故障したエッジデバイス20に設定されていた環境情報が予備エッジデバイス20_rsvに設定されると、故障したエッジデバイス20において実行されていたタスクを予備エッジデバイス20_rsvに代替させるための切替処理を実行してもよい。
【0043】
一実施例では、切替部130は、デバイス管理情報における予備エッジデバイス20_rsvのデバイスIDを故障したエッジデバイス20のデバイスIDに置換してもよい。すなわち、切替部130は、運用中のデバイスのデバイスIDなどの管理識別子を予備のデバイスに割り当てることによって切替を実行してもよい。例えば、エッジデバイス20上のエージェントプログラムは、アクティベーションコードをやりとりすることによって、クラウド上のデバイスIDと連携することができる。従って、エッジデバイス20をデアクティベーションしてデバイスIDとの関連付けを破棄し、当該デバイスIDに対して予備エッジデバイス20_rsvをアクティベーションすることによって、デバイスIDの予備エッジデバイス20_rsvへの引き継ぎが可能になる。このようにして、予備エッジデバイス20_rsvは、故障したエッジデバイス20に対する設定情報を引き継ぐことが可能になり、エッジデバイス20におけるタスク及びタスクの実行に必要な各種環境を引き継ぐことが可能になる。
【0044】
他の実施例では、切替部130は、切替の際、予備エッジデバイス20_rsvに新規のデバイスIDを設定してもよい。例えば、故障したエッジデバイス20がGPU(Graphics Processing Unit)を有しているが、予備エッジデバイス20_rsvはGPUを有していない場合、ログ/監視用のリソースに有意な相違が生じるため、予備エッジデバイス20_rsvは、エッジデバイス20の環境情報を引き継がないよう設定されることが望ましい。すなわち、故障したエッジデバイス20と予備エッジデバイス20_rsvとの間にタスクの実行に必要なハードウェアリソースの有意な相違がある場合、予備エッジデバイス20_rsvは、エッジデバイス20の環境情報を引き継がないよう設定されてもよい。
【0045】
また、切替部130は、故障したエッジデバイス20に設定されている環境情報の一部のみを予備エッジデバイス20_rsvに設定するようにしてもよい。具体的には、切替部130は、エッジデバイス20のAIモデル又はAIコンテナなどのソリューションアプリケーションに関連する環境情報の一部のみを予備エッジデバイス20_rsvに設定してもよい。エッジデバイス20に設定されている環境情報のうち予備エッジデバイス20_rsvに引き継がれる部分は、事前に指定されてもよい。
【0046】
切替部130は、予備エッジデバイス20_rsvへの切替後、予備エッジデバイス20_rsvに対してヘルスチェックを実行してもよい。ヘルスチェック結果に問題がない場合、切替部130は、予備エッジデバイス20_rsvへの切替が成功したと判定し、故障したエッジデバイス20におけるタスクを予備エッジデバイス20_rsvに代替させることができる。
【0047】
一実施例では、故障したデバイスは、切替時の未処理データを予備のデバイスに送信するようにしてもよい。具体的には、故障したエッジデバイス20は、予備エッジデバイス20_rsvへの切替の際、エッジデバイス20において未処理のデータを予備エッジデバイス20_rsvに送信し、予備エッジデバイス20_rsvにおいて残りの処理を実行できるようにしてもよい。例えば、エッジデバイス20は、故障を示すヘルスチェック結果をデバイス管理装置100に送信する際、未処理データを一緒に送信するようにしてもよい。ヘルチェック結果とともに未処理データを取得すると、切替部130は、エッジデバイス20から予備エッジデバイス20_rsvへの切替を実行するとともに、予備エッジデバイス20_rsvに取得した未処理データを送信し、未処理データに対してエッジデバイス20のタスクを代替するよう予備エッジデバイス20_rsvに指示してもよい。これにより、エッジデバイス20の故障の検出から予備エッジデバイス20_rsvへの切替完了までの未処理データに対するタスクを間断なく実行することができる。
【0048】
また、一実施例では、切替部130は、故障したエッジデバイス20に付与されたライセンスを無効化し、予備エッジデバイス20_rsvに当該ライセンスを付与するようにしてもよい。上述したように、デバイス管理情報は、発行中のライセンスと当該ライセンスが割り当てられているデバイスIDとの関連付けを示すライセンス情報を含む。例えば、切替部130は、図5に示されるようなデバイス管理情報のライセンス情報の“割当デバイスID”を予備エッジデバイス20_rsvのデバイスIDに変更するよう管理部120に指示することによって、予備エッジデバイス20_rsvへのライセンスの切替を実行することができる。
【0049】
また、一実施例では、判定部110が複数の運用中のデバイスから予備のデバイスへの切替条件が充足されていると判定すると、管理部120は、複数の運用中のデバイスに設定されている環境情報を予備のデバイスに設定し、切替部130は、複数の運用中のデバイスから予備のデバイスへの切替を実行してもよい。すなわち、予備エッジデバイス20_rsvは、複数のエッジデバイス20のタスクを代替してもよい。例えば、予備エッジデバイス20_rsvにエッジデバイス20より高い仕様/性能を備えさせることによって、複数のエッジデバイス20に障害が発生した場合であっても、これらのエッジデバイス20におけるタスクを予備エッジデバイス20_rsvに代替させることができる。この場合、管理部120は、複数のエッジデバイス20の環境情報を確認し、予備エッジデバイス20_rsvの環境情報との差分に対応する環境情報を予備エッジデバイス20_rsvに設定してもよい。ここで、複数のエッジデバイス20に対して、同一ライブラリについて異なるバージョンが規定されている場合、例えば、エッジデバイス20_iがバージョン2以上であり、エッジデバイス20_jがバージョン3である場合、管理部120は、エッジデバイス20_iと20_jとの双方を充足するバージョン3を予備エッジデバイス20_rsvに設定してもよい。他方、複数のエッジデバイスの全てを充足するバージョンが存在しない場合、管理部120は、その旨を管理者に通知してもよい。
【0050】
また、一実施例では、管理部120又は切替部130は、何らかの理由によって予備エッジデバイス20_rsvへの切替が不可である場合、その旨を管理者に通知してもよい。
【0051】
[デバイス管理処理]
次に、本開示の一実施例によるデバイス管理処理を説明する。当該デバイス管理処理は、デバイス管理装置100によって実行され、より詳細には、デバイス管理装置100の1つ以上のプロセッサ104が1つ以上のメモリ装置103に格納された1つ以上のプログラム又は指示を実行することによって実現されてもよい。図8は、本開示の一実施例によるデバイス管理処理を示すフローチャートである。
【0052】
ステップS101において、デバイス管理装置100は、運用中のデバイスから予備のデバイスへの切替条件が充足されているか判定する。具体的には、デバイス管理装置100は、運用中のエッジデバイス20_iにおける障害の発生を検知すると、エッジデバイス20_iを予備エッジデバイス20_rsvに切り替えるべきであると判定してもよい。例えば、運用中の各エッジデバイス20_1~20_Nが定期的にビーコン信号などをデバイス管理装置100に送信している場合、エッジデバイス20_iから所定の間隔又は期間内にビーコン信号を受信できなかったことに応答して、デバイス管理装置100は、エッジデバイス20_iに障害が発生したと判定してもよい。あるいは、各エッジデバイス20_1~20_Nから送信されるビーコン信号には、各エッジデバイス20_1~20_Nのヘルスチェック結果が含まれてもよく、デバイス管理装置100は、受信したビーコン信号のヘルスチェック結果に基づいて、各エッジデバイス20_1~20_Nにおける故障の発生を判定してもよい。
【0053】
ステップS102において、デバイス管理装置100は、切替条件が充足されていると判定すると、運用中のデバイスに設定されている環境情報を予備のデバイスに設定する。具体的には、デバイス管理装置100は、運用中のエッジデバイス20_iから予備エッジデバイス20_rsvへの切替条件が充足されていると、デバイス管理情報におけるエッジデバイス20_iに設定されている環境情報を特定し、特定した環境情報を予備エッジデバイス20_rsvに設定してもよい。例えば、デバイス管理装置100は、エッジデバイス20_iに設定されている環境情報と、予備エッジデバイス20_rsvに設定されている環境情報と比較し、予備エッジデバイス20_rsvとエッジデバイス20_iとが同一の動作環境を有するように、その差分を予備エッジデバイス20_rsvに設定してもよい。
【0054】
ここで、環境情報とは、例えば、依存ライブラリ情報、アプリケーション情報、接続先情報、ログ/監視設定情報、及びライセンス情報の少なくとも1つから構成されうる。デバイス管理装置100は、管理対象のデバイスにおいて環境情報が更新されたことを検知すると、管理対象のデバイスに対して更新された環境情報を関連付けてもよい。具体的には、デバイス管理装置100は、各エッジデバイス20において環境情報が更新されたことを検知すると、各エッジデバイス20及び/又は管理者などから環境情報を適宜取得し、取得した環境情報によってデバイス管理情報を更新してもよい。
【0055】
また、環境情報は、予備のデバイスにインストールされているエージェントプログラムを介し設定されてもよい。例えば、デバイス管理装置100は、予備エッジデバイス20_rsvにインストールされているエージェントプログラムを利用した遠隔操作を介して、運用中のエッジデバイス20から予備エッジデバイス20_rsvへの切替に必要とされる環境情報を予備エッジデバイス20_rsvに設定してもよい。
【0056】
ステップS103において、デバイス管理装置100は、環境情報が予備のデバイスに設定されると、運用中のデバイスから予備のデバイスへの切替を実行する。具体的には、デバイス管理装置100は、故障したエッジデバイス20に設定されていた環境情報が予備エッジデバイス20_rsvに設定されると、故障したエッジデバイス20において実行されていたタスクを予備エッジデバイス20_rsvに代替させるための切替処理を実行してもよい。例えば、切替処理は、デバイス管理情報における予備エッジデバイス20_rsvのデバイスIDを故障したエッジデバイス20のデバイスIDに置換することを含んでもよい。あるいは、切替処理は、予備エッジデバイス20_rsvに新規のデバイスIDを設定することを含んでもよい。また、切替処理は、故障したエッジデバイス20に設定されている環境情報の一部のみを予備エッジデバイス20_rsvに設定することを含んでもよい。
【0057】
予備エッジデバイス20_rsvへの切替後、デバイス管理装置100は、予備エッジデバイス20_rsvに対してヘルスチェックを実行してもよい。ヘルスチェック結果に問題がない場合、デバイス管理装置100は、予備エッジデバイス20_rsvへの切替が成功したと判定し、故障したエッジデバイス20におけるタスクを予備エッジデバイス20_rsvに代替させることができる。
【0058】
また、故障したデバイスは、切替時の未処理データを予備のデバイスに送信するようにしてもよい。具体的には、故障したエッジデバイス20は、予備エッジデバイス20_rsvへの切替の際、エッジデバイス20において未処理のデータを予備エッジデバイス20_rsvに送信し、予備エッジデバイス20_rsvにおいて残りの処理を実行できるようにしてもよい。
【0059】
上述した実施例によると、デバイス管理装置100は、デバイス管理情報を利用して、故障したエッジデバイス20_iの環境情報を予備エッジデバイス20_rsvに設定し、予備エッジデバイス20_rsvにエッジデバイス20_iのタスクを迅速に引き継ぎさせることができる。
【0060】
なお、以上の説明に関して更に以下の付記を開示する。
(付記1)
第1のデバイスから第2のデバイスへの切替条件が充足されているか判定する判定部と、
前記切替条件が充足されていると判定すると、前記第1のデバイスに設定されている環境情報を前記第2のデバイスに設定する管理部と、
前記環境情報が前記第2のデバイスに設定されると、前記第1のデバイスから前記第2のデバイスへの切替を実行する切替部と、
を有するデバイス管理装置。
(付記2)
前記環境情報は、前記第2のデバイスにインストールされているエージェントプログラムを介し設定される、付記1に記載のデバイス管理装置。
(付記3)
前記管理部は、管理対象のデバイスに設定されている環境情報を有し、
前記環境情報は、依存ライブラリ情報、アプリケーション情報、接続先情報、ログ/監視設定、及びライセンス情報の少なくとも1つを含む、付記1又は2に記載のデバイス管理装置。
(付記4)
前記管理部は、前記管理対象のデバイスにおいて前記環境情報が更新されたことを検知すると、前記管理対象のデバイスに対して前記更新された環境情報を関連付ける、付記3に記載のデバイス管理装置。
(付記5)
前記管理部は、前記管理対象のデバイスに付与されるライセンスを管理し、前記切替の際、前記第1のデバイスのライセンスを前記第2のデバイスに付与する、付記3に記載のデバイス管理装置。
(付記6)
前記判定部は、前記第1のデバイスから受信した通知に基づいて、前記切替条件が充足されているか判定する、付記1~5の何れか1つに記載のデバイス管理装置。
(付記7)
前記切替部は、前記第1のデバイスの管理識別子を前記第2のデバイスに割り当てることによって前記切替を実行する、付記1~5の何れか1つに記載のデバイス管理装置。
(付記8)
前記第1のデバイスは、前記切替時の未処理データを前記第2のデバイスに送信する、付記1~7の何れか1つに記載のデバイス管理装置。
(付記9)
前記判定部が複数の第3のデバイスから前記第2のデバイスへの切替条件が充足されていると判定すると、
前記管理部は、前記複数の第3のデバイスに設定されている環境情報を前記第2のデバイスに設定し、
前記切替部は、前記複数の第3のデバイスから前記第2のデバイスへの切替を実行する、付記1~8の何れか1つに記載のデバイス管理装置。
(付記10)
第1のデバイスから第2のデバイスへの切替条件が充足されているか判定することと、
前記切替条件が充足されていると判定すると、前記第1のデバイスに設定されている環境情報を前記第2のデバイスに設定することと、
前記環境情報が前記第2のデバイスに設定されると、前記第1のデバイスから前記第2のデバイスへの切替を実行することと、
を有するコンピュータが実行するデバイス管理方法。
(付記11)
第1のデバイスから第2のデバイスへの切替条件が充足されているか判定することと、
前記切替条件が充足されていると判定すると、前記第1のデバイスに設定されている環境情報を前記第2のデバイスに設定することと、
前記環境情報が前記第2のデバイスに設定されると、前記第1のデバイスから前記第2のデバイスへの切替を実行することと、
をコンピュータに実行させるプログラム。
【0061】
以上、本開示の実施例について詳述したが、本開示は上述した特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本開示の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【0062】
10 デバイス管理システム
20 エッジデバイス
30 センサデバイス
40 ネットワーク
100 デバイス管理装置
110 判定部
120 管理部
130 切替部
図1
図2
図3
図4
図5
図6
図7
図8