(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024114282
(43)【公開日】2024-08-23
(54)【発明の名称】遊休リソース利用支援装置、遊休リソース利用支援方法、プログラム及び記録媒体
(51)【国際特許分類】
G06F 9/50 20060101AFI20240816BHJP
【FI】
G06F9/50 120A
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023019947
(22)【出願日】2023-02-13
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVA
2.python
(71)【出願人】
【識別番号】000232092
【氏名又は名称】NECソリューションイノベータ株式会社
(74)【代理人】
【識別番号】100115255
【弁理士】
【氏名又は名称】辻丸 光一郎
(74)【代理人】
【識別番号】100201732
【弁理士】
【氏名又は名称】松縄 正登
(74)【代理人】
【識別番号】100154081
【弁理士】
【氏名又は名称】伊佐治 創
(74)【代理人】
【識別番号】100227019
【弁理士】
【氏名又は名称】安 修央
(72)【発明者】
【氏名】荻田 章博
(57)【要約】 (修正有)
【課題】遊休リソースの利用を促進可能な遊休リソース利用支援装置を提供する。
【解決手段】本発明の遊休リソース利用支援装置10は、タスク依頼情報取得部、稼働状態判定部、装置選択部、タスク配信部、タスク実行管理部、処理結果取得部、及び出力部を含み、前記タスク依頼情報取得部は、タスク依頼情報を取得し、前記稼働状態判定部は、管理対象装置の稼働状態を判定し、前記装置選択部は、前記稼働状態が遊休状態と判定された前記管理対象装置から、少なくとも一つの前記管理対象装置を選択し、前記タスク配信部は、選択した前記管理対象装置に前記タスク依頼情報を配信し、前記タスク実行管理部は、前記タスク依頼情報を配信した前記管理対象装置に前記タスク依頼情報のタスクを実行させ、前記処理結果取得部は、前記管理対象装置のタスク実行結果を取得し、前記出力部は、前記タスク実行結果を出力する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
タスク依頼情報取得部、稼働状態判定部、装置選択部、タスク配信部、タスク実行管理部、処理結果取得部、及び出力部を含み、
前記タスク依頼情報取得部は、タスク依頼情報を取得し、
前記稼働状態判定部は、管理対象装置の稼働状態を判定し、
前記装置選択部は、前記稼働状態が遊休状態と判定された管理対象装置から、少なくとも一つの管理対象装置を選択し、
前記タスク配信部は、選択した前記管理対象装置に前記タスク依頼情報を配信し、
前記タスク実行管理部は、前記タスク依頼情報を配信した前記管理対象装置に前記タスク依頼情報のタスクを実行させ、
前記処理結果取得部は、前記管理対象装置のタスク実行結果を取得し、
前記出力部は、前記タスク実行結果を出力する、遊休リソース利用支援装置。
【請求項2】
前記タスク配信部は、選択した前記管理対象装置に、前記タスク依頼情報と、前記タスク依頼情報のタスク実行基盤とを含むコンテナイメージを配信する、請求項1記載の遊休リソース利用支援装置。
【請求項3】
前記稼働状態判定部は、前記管理対象装置について、使用中のユーザの有無を判定し、使用中のユーザがいない管理対象装置の稼働状態を遊休状態と判定する、請求項1または2記載の遊休リソース利用支援装置。
【請求項4】
前記稼働状態判定部は、
前記管理対象装置について、ハードウェアリソースの使用状況を取得し、
前記ハードウェアリソースの使用状況が閾値未満である場合に、管理対象装置の稼働状態を離席状態と判定し、
前記装置選択部は、前記稼働状態が前記遊休状態または前記離席状態と判定された管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信部は、選択された前記管理対象装置に前記タスク依頼情報を配信する、請求項1または2に記載の遊休リソース利用支援装置。
【請求項5】
前記タスク実行管理部は、
前記タスク依頼情報を配信した前記管理対象装置のハードウェアリソースの使用状況を取得し、
前記ハードウェアリソースの使用状況に基づいて、前記タスク依頼情報を配信した前記管理対象装置の使用状態を判定し、
前記管理対象装置の使用状態を使用中と判定した場合、配信したタスクを中断させる、請求項1または2に記載の遊休リソース利用支援装置。
【請求項6】
前記タスク配信部は、複数の管理対象装置に前記タスク依頼情報を配信し、
前記処理結果取得部は、
複数の前記管理対象装置のタスク実行結果を取得し、
複数のタスク実行結果を比較し、複数のタスク実行結果が一致する場合、正しい結果であると判定し、
前記出力部は、正しい結果であると判定されたタスク実行結果を出力する、請求項1または2に記載の遊休リソース利用支援装置。
【請求項7】
前記処理結果取得部は、複数の前記タスク実行結果のハッシュ値を比較し、前記ハッシュ値が一致する場合、正しい結果であると判定する、請求項6記載の遊休リソース利用支援装置。
【請求項8】
タスク依頼情報取得工程、稼働状態判定工程、装置選択工程、タスク配信工程、タスク実行管理工程、処理結果取得工程、及び出力工程を含み、
前記タスク依頼情報取得工程は、タスク依頼情報を取得し、
前記稼働状態判定工程は、管理対象装置の稼働状態を判定し、
前記装置選択工程は、前記稼働状態が遊休状態と判定された管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信工程は、選択した前記管理対象装置に前記タスク依頼情報を配信し、
前記タスク実行管理工程は、前記タスク依頼情報を配信した前記管理対象装置に前記タスク依頼情報のタスクを実行させ、
前記処理結果取得工程は、前記管理対象装置のタスク実行結果を取得し、
前記出力工程は、前記タスク実行結果を出力する、遊休リソース利用支援方法。
【請求項9】
タスク依頼情報取得手順、稼働状態判定手順、装置選択手順、タスク配信手順、タスク実行管理手順、処理結果取得手順、及び出力手順を含み、
前記タスク依頼情報取得手順は、タスク依頼情報を取得し、
前記稼働状態判定手順は、管理対象装置の稼働状態を判定し、
前記装置選択手順は、前記稼働状態が遊休状態と判定された管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信手順は、選択した前記管理対象装置に前記タスク依頼情報を配信し、
前記タスク実行管理手順は、前記タスク依頼情報を配信した前記管理対象装置に前記タスク依頼情報のタスクを実行させ、
前記処理結果取得手順は、前記管理対象装置のタスク実行結果を取得し、
前記出力手順は、前記タスク実行結果を出力し、
前記各手順をコンピュータに実行させるためのプログラム。
【請求項10】
タスク依頼情報取得手順、稼働状態判定手順、装置選択手順、タスク配信手順、タスク実行管理手順、処理結果取得手順、及び出力手順を含み、
前記タスク依頼情報取得手順は、タスク依頼情報を取得し、
前記稼働状態判定手順は、管理対象装置の稼働状態を判定し、
前記装置選択手順は、前記稼働状態が遊休状態と判定された管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信手順は、選択した前記管理対象装置に前記タスク依頼情報を配信し、
前記タスク実行管理手順は、前記タスク依頼情報を配信した前記管理対象装置に前記タスク依頼情報のタスクを実行させ、
前記処理結果取得手順は、前記管理対象装置のタスク実行結果を取得し、
前記出力手順は、前記タスク実行結果を出力し、
前記各手順をコンピュータに実行させるためのプログラムを記録しているコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、遊休リソース利用支援装置、遊休リソース利用支援方法、プログラム及び記録媒体に関する。
【背景技術】
【0002】
近年、新型コロナウイルス感染症等(COVID-19)の流行等の関連もあり、テレワークが社会で一般化している。これに伴い、シンクライアント環境の利用が多くなっている(特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、シンクライアント環境は、時間帯ごとの負荷の大小の差が大きく、コンピューティングリソースが遊休状態になる場合があるという課題がある。
【0005】
そこで本発明は、遊休リソースの利用を促進可能な遊休リソース利用支援装置、遊休リソース利用支援方法、プログラム及び記録媒体の提供を目的とする。
【課題を解決するための手段】
【0006】
前記目的を達成するために、本発明の遊休リソース利用支援装置は、
タスク依頼情報取得部、稼働状態判定部、装置選択部、タスク配信部、タスク実行管理部、処理結果取得部、及び出力部を含み、
前記タスク依頼情報取得部は、タスク依頼情報を取得し、
前記稼働状態判定部は、管理対象装置の稼働状態を判定し、
前記装置選択部は、前記稼働状態が遊休状態と判定された管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信部は、選択した前記管理対象装置に前記タスク依頼情報を配信し、
前記タスク実行管理部は、前記タスク依頼情報を配信した前記管理対象装置に前記タスク依頼情報のタスクを実行させ、
前記処理結果取得部は、前記管理対象装置のタスク実行結果を取得し、
前記出力部は、前記タスク実行結果を出力する。
【0007】
本発明の遊休リソース利用支援方法は、
タスク依頼情報取得工程、稼働状態判定工程、装置選択工程、タスク配信工程、タスク実行管理工程、処理結果取得工程、及び出力工程を含み、
前記タスク依頼情報取得工程は、タスク依頼情報を取得し、
前記稼働状態判定工程は、管理対象装置の稼働状態を判定し、
前記装置選択工程は、前記稼働状態が遊休状態と判定された管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信工程は、選択した前記管理対象装置に前記タスク依頼情報を配信し、
前記タスク実行管理工程は、前記タスク依頼情報を配信した前記管理対象装置に前記タスク依頼情報のタスクを実行させ、
前記処理結果取得工程は、前記管理対象装置のタスク実行結果を取得し、
前記出力工程は、前記タスク実行結果を出力する。
【0008】
本発明のプログラムは、
タスク依頼情報取得手順、稼働状態判定手順、装置選択手順、タスク配信手順、タスク実行管理手順、処理結果取得手順、及び出力手順を含み、
前記タスク依頼情報取得手順は、タスク依頼情報を取得し、
前記稼働状態判定手順は、管理対象装置の稼働状態を判定し、
前記装置選択手順は、前記稼働状態が遊休状態と判定された管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信手順は、選択した前記管理対象装置に前記タスク依頼情報を配信し、
前記タスク実行管理手順は、前記タスク依頼情報を配信した前記管理対象装置に前記タスク依頼情報のタスクを実行させ、
前記処理結果取得手順は、前記管理対象装置のタスク実行結果を取得し、
前記出力手順は、前記タスク実行結果を出力し、
前記各手順をコンピュータに実行させるためのプログラムである。
【0009】
本発明の記録媒体は、
タスク依頼情報取得手順、稼働状態判定手順、装置選択手順、タスク配信手順、タスク実行管理手順、処理結果取得手順、及び出力手順を含み、
前記タスク依頼情報取得手順は、タスク依頼情報を取得し、
前記稼働状態判定手順は、管理対象装置の稼働状態を判定し、
前記装置選択手順は、前記稼働状態が遊休状態と判定された管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信手順は、選択した前記管理対象装置に前記タスク依頼情報を配信し、
前記タスク実行管理手順は、前記タスク依頼情報を配信した前記管理対象装置に前記タスク依頼情報のタスクを実行させ、
前記処理結果取得手順は、前記管理対象装置のタスク実行結果を取得し、
前記出力手順は、前記タスク実行結果を出力し、
前記各手順をコンピュータに実行させるためのプログラムを記録しているコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【0010】
本発明によれば、遊休リソースの利用を促進できる。
【図面の簡単な説明】
【0011】
【
図1】
図1は、実施形態1の遊休リソース利用支援装置を含む遊休リソース利用支援システムの一例の構成を示すブロック図である。
【
図2】
図2は、実施形態1の遊休リソース利用支援装置のハードウェア構成の一例を示すブロック図である。
【
図3】
図3は、実施形態1の遊休リソース利用支援装置における処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本発明の実施形態について図を用いて説明する。本発明は、以下の実施形態には限定されない。以下の各図において、同一部分には、同一符号を付している。また、各実施形態の説明は、特に言及がない限り、互いの説明を援用でき、各実施形態の構成は、特に言及がない限り、組合せ可能である。
【0013】
[実施形態1]
図1は、本実施形態の遊休リソース利用支援装置10(以下「本装置」ともいう。)の一例の構成を示すブロック図である。
図1に示すように、本装置10は、タスク依頼情報取得部11、稼働状態判定部12、装置選択部13、タスク配信部14、タスク実行管理部15、処理結果取得部16、及び出力部17を含む。また、本装置10は、図示していないが、例えば、入力部、表示部及び/又は記憶部を含んでもよい。
【0014】
本装置10は、例えば、前記各部を含む1つの装置でもよいし、前記各部が、通信回線網を介して接続可能な装置でもよい。また、本装置10は、前記通信回線網を介して、後述する外部装置と接続可能である。前記通信回線網は、特に制限されず、公知のネットワークを使用でき、例えば、有線でも無線でもよい。前記通信回線網は、例えば、インターネット回線、WWW(World Wide Web)、電話回線、LAN(Local Area Network)、SAN(Storage Area Network)、DTN(Delay Tolerant Networking)、LPWA(Low Power Wide Area)、L5G(ローカル5G)、等があげられる。無線通信としては、例えば、Wi-Fi(登録商標)、Bluetooth(登録商標)、ローカル5G、LPWA等が挙げられる。前記無線通信としては、各装置が直接通信する形態(Ad Hoc通信)、インフラストラクチャ(infrastructure通信)、アクセスポイントを介した間接通信等であってもよい。本装置10は、例えば、システムとしてサーバに組み込まれていてもよい。また、本装置10は、例えば、本発明のプログラムがインストールされたパーソナルコンピュータ(PC、例えば、デスクトップ型、ノート型)、スマートフォン、タブレット端末等であってもよい。本装置10は、例えば、前記各部のうち少なくとも一つがサーバ上にあり、その他の前記各部が端末上にあるような、クラウドコンピューティングやエッジコンピューティング等の形態であってもよい。
【0015】
図2に、本装置10のハードウェア構成のブロック図を例示する。本装置10は、例えば、中央処理装置(CPU、GPU等)101、メモリ102、バス103、記憶装置104、入力装置105、出力装置106、通信デバイス107等を含む。本装置10の各部は、それぞれのインタフェース(I/F)により、バス103を介して相互に接続されている。
【0016】
中央処理装置101は、コントローラ(システムコントローラ、I/Oコントローラ等)等により、他の構成と連携動作し、本装置10の全体の制御を担う。本装置10において、中央処理装置101により、例えば、本発明のプログラムやその他のプログラムが実行され、また、各種情報の読み込みや書き込みが行われる。具体的には、例えば、中央処理装置101が、タスク依頼情報取得部11、稼働状態判定部12、装置選択部13、タスク配信部14、タスク実行管理部15、処理結果取得部16、及び出力部17として機能する。本装置10は、演算装置として、CPU、GPU(Graphics Processing Unit)、APU(Accelerated Processing Unit)等の他の演算装置を備えてもよいし、これらの組合せを備えてもよい。
【0017】
バス103は、例えば、外部装置とも接続できる。前記外部装置は、例えば、ユーザの端末、管理対象装置、外部記憶装置(外部データベース等)、プリンタ、外部入力装置、外部表示装置、外部撮像装置等があげられる。本装置10は、例えば、バス103に接続された通信デバイス107により、外部ネットワーク(前記通信回線網)に接続でき、外部ネットワークを介して、他の装置と接続することもできる。
【0018】
メモリ102は、例えば、メインメモリ(主記憶装置)が挙げられる。中央処理装置101が処理を行う際には、例えば、後述する記憶装置104に記憶されている本発明のプログラム等の種々の動作プログラムを、メモリ102が読み込み、中央処理装置101は、メモリ102からデータを受け取って、プログラムを実行する。前記メインメモリは、例えば、RAM(ランダムアクセスメモリ)である。また、メモリ102は、例えば、ROM(読み出し専用メモリ)であってもよい。
【0019】
記憶装置104は、例えば、前記メインメモリ(主記憶装置)に対して、いわゆる補助記憶装置ともいう。前述のように、記憶装置104には、本発明のプログラムを含む動作プログラムが格納されている。記憶装置104は、例えば、記録媒体と、記録媒体に読み書きするドライブとの組合せであってもよい。前記記録媒体は、特に制限されず、例えば、内蔵型でも外付け型でもよく、HD(ハードディスク)、CD-ROM、CD-R、CD-RW、MO、DVD、フラッシュメモリー、メモリーカード等が挙げられる。記憶装置104は、例えば、記録媒体とドライブとが一体化されたハードディスクドライブ(HDD)、及びソリッドステートドライブ(SSD)であってもよい。本装置10が前記記憶部を含む場合、例えば、記憶装置104は、前記記憶部として機能する。前記記憶部は、例えば、タスク依頼情報、タスク実行結果、管理対象装置のハードウェアリソースの使用状況、及びユーザ情報等を記憶できる。
【0020】
本装置10において、メモリ102及び記憶装置104は、ログ情報、外部データベース(図示せず)や外部の装置から取得した情報、本装置10によって生成した情報、本装置10が処理を実行する際に用いる情報等の種々の情報を記憶することも可能である。この場合、メモリ102及び記憶装置104は、例えば、前述の本装置のユーザの情報等を記憶していてもよい。なお、少なくとも一部の情報は、例えば、メモリ102及び記憶装置104以外の外部サーバに記憶されていてもよいし、複数の端末にブロックチェーン技術等を用いて分散して記憶されていてもよい。
【0021】
本装置10は、例えば、さらに、入力装置105、出力装置106を備える。入力装置105は、例えば、タッチパネル、トラックパッド、マウス等のポインティングデバイス;キーボード;カメラ、スキャナ等の撮像手段;ICカードリーダ、磁気カードリーダ等のカードリーダ;マイク等の音声入力手段;等があげられる。出力装置106は、例えば、LEDディスプレー、液晶ディスプレー等の表示装置;スピーカ等の音声出力装置;プリンタ;等があげられる。本実施形態1において、入力装置105と出力装置106とは、別個に構成されているが、入力装置105と出力装置106とは、タッチパネルディスプレーのように、一体として構成されてもよい。
【0022】
つぎに、本実施形態の遊休リソース利用支援方法の一例を、
図3のフローチャートに基づき説明する。本実施形態の遊休リソース利用支援方法は、例えば、
図1又は
図2の装置10を用いて、次のように実施する。なお、本実施形態の遊休リソース利用支援方法は、
図1又は
図2の装置10の使用には限定されない。
【0023】
まず、タスク依頼情報取得部11は、タスク依頼情報を取得する(S1、タスク依頼情報取得工程)。前記タスク依頼情報は、例えば、本装置10を利用するユーザが、遊休リソースとなった管理対象装置に任意のタスクを実行させるための情報である。前記タスクは、例えば、1つでもよいし、複数でもよい。前記タスク依頼情報の形式は、特に制限されず、例えば、管理対象装置のOS標準で実行できる形式のファイルでもよいし、管理対象装置のOS標準では実行できない形式のファイルでもよい。前者の具体例としては、例えば、いわゆるバッチファイル(BATファイル)があげられ、拡張子が.batのファイル等があげられる。後者の具体例としては、例えば、java、python、シェルスクリプト等の各種スクリプト言語で記述されたプログラム等があげられる。タスク依頼情報取得部11は、例えば、前記ユーザの端末から前記タスク依頼情報を取得できるが、これには制限されず、前記タスク依頼情報を記憶した記憶装置またはサーバ装置からタスク依頼情報を取得してもよい。タスク依頼情報取得部11は、例えば、取得したタスク依頼情報を本装置10のメモリ102または記憶装置104に記憶してもよい。
【0024】
前記管理対象装置は、本装置10がアクセス可能且つ前記タスク依頼情報を配信可能な情報処理装置である。前記情報処理装置は、例えば、パーソナルコンピュータ、スーパーコンピュータ、メインフレーム、サーバ、マイクロコンピュータ、タブレット端末、スマートフォン、携帯電話、PDA等の各種機器があげられる。前記管理対象装置は、例えば、Virtual PC等の仮想マシン(VM:Virtual Machine)を含んでもよい。前記管理対象装置は、例えば、1つでもよいし、2以上の複数でもよい。前記管理対象装置は、例えば、複数の情報処理装置を含むネットワークに属する情報処理装置群であってもよい。具体的に、前記管理対象装置は、例えば、特定の社内ネットワークに属するPCおよび/またはVPC群があげられる。本装置10の管理対象とする社内ネットワークは、例えば、1つでもよいし、2以上の複数でもよいが、後者が好ましい。前記管理対象装置は、例えば、本装置10に前記タスク依頼情報を入力した前記ユーザの所有(管理)する装置でもよいし、前記ユーザとは無関係の第三者が所有(管理)する装置でもよい。
【0025】
稼働状態判定部12は、管理対象装置の稼働状態を判定する(S2、稼働状態判定工程)。具体的に、稼働状態判定部12は、前記管理対象装置について、使用中のユーザの有無を判定し、使用中のユーザがいない管理対象装置の稼働状態を遊休状態と判定できる。前記「使用中のユーザがいない」とは、例えば、前記管理対象装置のOSに対し、ログイン中のユーザがいない場合を意味する。また、稼働状態判定部12は、例えば、前記管理対象装置について、ハードウェアリソースの使用状況を取得し、前記ハードウェアリソースの使用状況が閾値未満である場合に、管理対象装置の稼働状態を離席状態と判定してもよい。この場合、稼働状態判定部12は、例えば、前記ハードウェアリソースの使用状況が閾値以上の場合に、管理対象装置の稼働状態を使用中であると判定してもよい。前記ハードウェアリソースは、例えば、管理対象装置のCPU、メモリ、ディスクアクセス、通信デバイス等の使用率等があげられる。前記閾値は、前記ハードウェアリソースの使用割合であり、特に制限されず、任意の値が設定できる。前記閾値は、例えば、前記ハードウェアリソースの種類毎に異なる割合を設定してもよいし、同じ割合を設定してもよい。
【0026】
装置選択部13は、前記稼働状態が遊休状態と判定された管理対象装置から、少なくとも一つの前記管理対象装置を選択する(S3、装置選択工程)。また、装置選択部13は、前記稼働状態が前記遊休状態または前記離席状態と判定された管理対象装置から、少なくとも一つの前記管理対象装置を選択してもよい。装置選択部13による管理対象装置の選択基準は、特に制限されず、例えば、前記ハードウェアリソースの使用割合の低いものから選択してもよいし、予め定めた優先度に沿って選択してもよいし、前記タスク依頼情報が含むタスクの処理負荷と管理対象装置の処理能力とから適切な装置を選択してもよい。前記優先度は、特に制限されず、例えば、過去の管理対象装置の使用履歴等から本装置10が決定した優先度でもよいし、前記管理対象装置の管理者により定められた優先度でもよい。
【0027】
タスク配信部14は、選択した前記管理対象装置に前記タスク依頼情報を配信する(S4、タスク配信工程)。タスク配信部14は、例えば、選択した管理対象装置のすべてに前記タスク依頼情報を配信してもよいし、一部の管理対象装置に前記タスク依頼情報を配信してもよい。また、タスク配信部14は、例えば、1つのタスク依頼情報を複数の管理対象装置に配信してもよい。この場合、1つのタスク依頼情報を分割して複数の管理対象装置に配信してもよいし、同一のタスク依頼情報を複数の管理対象装置にそれぞれ配信してもよい。また、タスク配信部14は、例えば、選択した前記管理対象装置に、前記タスク依頼情報と、前記タスク依頼情報のタスク実行基盤とを含むコンテナイメージを配信してもよい。前記タスク実行基盤は、例えば、前記タスク依頼情報の形式に応じた実行環境のファイルである。具体例として、例えば、前記タスク依頼情報が、前記スクリプト言語で記述されたプログラムである場合、前記タスク実行基盤は、例えば、前記プログラムの実行環境(例えば、ランタイムライブラリ等)を含む。また、前記コンテナイメージは、例えば、前記タスク依頼情報のタスク実行に必要な任意のプログラム、データ等を含んでもよい。タスク配信部14が前記管理対象装置に前記コンテナイメージを配信することにより、例えば、タスク依頼情報が含むタスクの実行環境を管理対象装置のOSから切り離すことが可能になる。これにより、例えば、タスク依頼を行うユーザの環境とタスクを実行する前記管理対象装置の環境とが異なってもタスクを実行させることが可能となる。また、前記コンテナイメージを配信することにより、悪意のあるタスクが管理対象装置で実行された場合にも管理対象装置を保護することができる。
【0028】
タスク実行管理部15は、前記タスク依頼情報を配信した前記管理対象装置に前記タスク依頼情報のタスクを実行させる(S5、タスク実行管理工程)。タスク実行管理部15は、例えば、前記管理対象装置にタスク依頼情報(BATファイル)を実行させることにより、前記タスク依頼情報のタスクを実行させることができる。また、S4において前記管理対象装置に前記コンテナイメージを配信していた場合、タスク実行管理部15は、例えば、前記管理対象装置に前記実行基盤を展開し、前記実行基盤上で前記タスク依頼情報を実行させることにより前記タスクを実行させることができる。また、タスク実行管理部15は、例えば、前記管理対象装置のタスク実行状況を管理してもよい。この場合、タスク実行管理部15は、例えば、前記タスク依頼情報を配信した前記管理対象装置のハードウェアリソースの使用状況を取得し、前記ハードウェアリソースの使用状況に基づいて、前記タスク依頼情報を配信した前記管理対象装置の使用状態を判定し、前記管理対象装置の使用状態を使用中と判定した場合、配信したタスクを中断できる。また、タスク実行管理部15は、例えば、一定時間の間、管理対象装置の使用状態を使用中であると判定した場合、当該使用中の管理対象装置に対して配信したタスクを破棄してもよい。この場合、本装置10は、例えば、前記S3に戻り、破棄したタスクに関するタスク依頼情報を実行させる管理対象装置を改めて選択し、選択した管理対象装置にタスク依頼情報を配信し、タスクを実行させることができる。タスク実行管理部15による前記使用状態の判定は、例えば、S2と同様にして判定できる。
【0029】
処理結果取得部16は、前記管理対象装置のタスク実行結果を取得する(S6、処理結果取得工程)。処理結果取得部16は、例えば、複数の前記管理対象装置からタスク実行結果を取得した場合、前記複数のタスク実行結果を比較し、複数のタスク実行結果が一致する場合、正しい結果であると判定してもよい。具体的に、処理結果取得部16は、例えば、複数のタスク実行結果のハッシュ値を比較し、前記ハッシュ値が一致する場合、正しい結果であると判定できる。前記ハッシュ値は、例えば、本装置10が算出してもよいし、管理対象装置またはその他の装置が算出してもよい。処理結果取得部16が複数のタスク実行結果が一致するかを判定することにより、例えば、不正なタスク実行結果でないかを検証することができる。また、処理結果取得部16が前記タスク実行結果のハッシュ値を比較することにより、本装置10で前記タスク実行結果のデータを直接比較せずにタスク実行結果が一致するかを判定できるため、セキュリティリスクを低減できる。
【0030】
出力部17は、前記タスク実行結果を出力する(S7、出力工程)。出力部17は、例えば、本装置10のディスプレイ等の出力装置106に前記タスク実行結果を出力してもよいし、本装置10外の外部装置に前記タスク実行結果を出力してもよい。前記外部装置は、例えば、前記タスク依頼情報を取得したユーザの端末等があげられる。また、出力部17は、例えば、処理結果取得部16で正しい結果であると判定された前記タスク実行結果を出力することが好ましい。
【0031】
なお、本実施形態の遊休リソース利用支援装置10は、例えば、タスク依頼情報取得部11、処理結果取得部16、及び出力部17を含むクラウドスケジューラ(CS)と、稼働状態判定部12、装置選択部13、タスク配信部14、及びタスク実行管理部15を含むローカルスケジューラ(LS)を含み、CSとLSとが通信回線網を介して通信可能な形態でもよい。この場合、遊休リソース利用支援装置10は、例えば、遊休リソース利用支援システム10ともいう。遊休リソース利用支援システム10は、例えば、複数のCSおよび複数のLSを含んでもよい。この場合、例えば、一つのCSの配下に複数のLSを含んでもよい。このような形態によれば、例えば、一つのCSの配下に複数のLSをおき、LS毎に異なるネットワークに属する管理対象装置を接続することにより、効率的な管理対象装置の運用が可能となる。また、このような形態によれば、例えば、CSと通信可能なLSを複数の企業に配置することで、各企業の社内ネットワーク内の情報処理装置を管理対象装置とし、組織の枠にとらわれない総括的な遊休リソースの運用が可能となる。
【0032】
上記の説明において、S1~S7までを順次実行する場合を例に挙げて説明したが、本発明はこれには制限されず、S1~S7を実行する順序は、特に制限されず任意である。
【0033】
本実施形態の遊休リソース利用支援装置10は、例えば、管理対象装置の稼働状態を判定し、遊休状態又は離席状態と判定した管理対象装置にタスク依頼情報のタスクを実行させることができる。このため、本実施形態の遊休リソース利用支援装置10によれば、例えば、遊休リソースの利用を促進できる。
【0034】
[実施形態2]
本実施形態のプログラムは、前述の遊休リソース利用支援方法の各工程を、コンピュータに実行させるためのプログラムである。具体的に、本実施形態のプログラムは、コンピュータに、タスク依頼情報取得手順、稼働状態判定手順、装置選択手順、タスク配信手順、タスク実行管理手順、処理結果取得手順、及び出力手順を実行させるためのプログラムである。
【0035】
前記タスク依頼情報取得手順は、タスク依頼情報を取得し、
前記稼働状態判定手順は、管理対象装置の稼働状態を判定し、
前記装置選択手順は、前記稼働状態が遊休状態と判定された管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信手順は、選択した前記管理対象装置に前記タスク依頼情報を配信し、
前記タスク実行管理手順は、前記タスク依頼情報を配信した前記管理対象装置に前記タスク依頼情報のタスクを実行させ、
前記処理結果取得手順は、前記管理対象装置のタスク実行結果を取得し、
前記出力手順は、前記タスク実行結果を出力する。
【0036】
また、本実施形態のプログラムは、コンピュータを、タスク依頼情報取得手順、稼働状態判定手順、装置選択手順、タスク配信手順、タスク実行管理手順、処理結果取得手順、及び出力手順として機能させるプログラムということもできる。
【0037】
本実施形態のプログラムは、前記本発明の遊休リソース利用支援装置及び遊休リソース利用支援方法における記載を援用できる。前記各手順は、例えば、「手順」を「処理」と読み替え可能である。また、本実施形態のプログラムは、例えば、コンピュータ読み取り可能な記録媒体に記録されてもよい。前記記録媒体は、例えば、非一時的なコンピュータ可読記録媒体(non-transitory computer-readable storage medium)である。前記記録媒体は、特に制限されず、例えば、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、ハードディスク(HD)、フラッシュメモリー(例えば、SSD(Solid State Drive)、USBフラッシュメモリー、SD/SDHCカード等)、光ディスク(例えば、CD‐R/CD‐RW、DVD‐R/DVD‐RW、BD‐R/BD‐RE等)、光磁気ディスク(MO)、フロッピー(登録商標)ディスク(FD)等があげられる。また、本実施形態のプログラム(例えば、プログラミング製品、又はプログラム製品ともいう)は、例えば、外部のコンピュータから配信される形態であってもよい。前記「配信」は、例えば、通信回線網を介した配信でもよいし、有線で接続された装置を介した配信であってもよい。本実施形態のプログラムは、配信された装置にインストールされて実行されてもよいし、インストールされずに実行されてもよい。
【0038】
以上、実施形態を参照して本発明を説明したが、本発明は、上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しうる様々な変更をできる。
【0039】
<付記>
上記の実施形態の一部又は全部は、以下の付記のように記載されうるが、以下には限られない。
(付記1)
タスク依頼情報取得部、稼働状態判定部、装置選択部、タスク配信部、タスク実行管理部、処理結果取得部、及び出力部を含み、
前記タスク依頼情報取得部は、タスク依頼情報を取得し、
前記稼働状態判定部は、管理対象装置の稼働状態を判定し、
前記装置選択部は、前記稼働状態が遊休状態と判定された管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信部は、選択した前記管理対象装置に前記タスク依頼情報を配信し、
前記タスク実行管理部は、前記タスク依頼情報を配信した前記管理対象装置に前記タスク依頼情報のタスクを実行させ、
前記処理結果取得部は、前記管理対象装置のタスク実行結果を取得し、
前記出力部は、前記タスク実行結果を出力する、遊休リソース利用支援装置。
(付記2)
前記タスク配信部は、選択した前記管理対象装置に、前記タスク依頼情報と、前記タスク依頼情報のタスク実行基盤とを含むコンテナイメージを配信する、付記1記載の遊休リソース利用支援装置。
(付記3)
前記稼働状態判定部は、前記管理対象装置について、使用中のユーザの有無を判定し、使用中のユーザがいない管理対象装置の稼働状態を遊休状態と判定する、付記1または2記載の遊休リソース利用支援装置。
(付記4)
前記稼働状態判定部は、
前記管理対象装置について、ハードウェアリソースの使用状況を取得し、
前記ハードウェアリソースの使用状況が閾値未満である場合に、管理対象装置の稼働状態を離席状態と判定し、
前記装置選択部は、前記稼働状態が前記遊休状態または前記離席状態と判定された管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信部は、選択された管理対象装置に前記タスク依頼情報を配信する、付記1から3のいずれかに記載の遊休リソース利用支援装置。
(付記5)
前記タスク実行管理部は、
前記タスク依頼情報を配信した前記管理対象装置のハードウェアリソースの使用状況を取得し、
前記ハードウェアリソースの使用状況に基づいて、前記タスク依頼情報を配信した前記管理対象装置の使用状態を判定し、
前記管理対象装置の使用状態を使用中と判定した場合、配信したタスクを中断させる、付記1から4のいずれかに記載の遊休リソース利用支援装置。
(付記6)
前記タスク配信部は、複数の管理対象装置に前記タスク依頼情報を配信し、
前記処理結果取得部は、
複数の前記管理対象装置のタスク実行結果を取得し、
複数のタスク実行結果を比較し、複数のタスク実行結果が一致する場合、正しい結果であると判定し、
前記出力部は、正しい結果であると判定されたタスク実行結果を出力する、付記1から5のいずれかに記載の遊休リソース利用支援装置。
(付記7)
前記処理結果取得部は、複数のタスク実行結果のハッシュ値を比較し、前記ハッシュ値が一致する場合、正しい結果であると判定する、付記6記載の遊休リソース利用支援装置。
(付記8)
タスク依頼情報取得工程、稼働状態判定工程、装置選択工程、タスク配信工程、タスク実行管理工程、処理結果取得工程、及び出力工程を含み、
前記タスク依頼情報取得工程は、タスク依頼情報を取得し、
前記稼働状態判定工程は、管理対象装置の稼働状態を判定し、
前記装置選択工程は、前記稼働状態が遊休状態と判定された前記管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信工程は、選択した前記管理対象装置に前記タスク依頼情報を配信し、
前記タスク実行管理工程は、前記タスク依頼情報を配信した前記管理対象装置に前記タスク依頼情報のタスクを実行させ、
前記処理結果取得工程は、前記管理対象装置のタスク実行結果を取得し、
前記出力工程は、前記タスク実行結果を出力する、遊休リソース利用支援方法。
(付記9)
前記タスク配信工程は、選択した前記管理対象装置に、前記タスク依頼情報と、前記タスク依頼情報のタスク実行基盤とを含むコンテナイメージを配信する、付記8記載の遊休リソース利用支援方法。
(付記10)
前記稼働状態判定工程は、前記管理対象装置について、使用中のユーザの有無を判定し、使用中のユーザがいない管理対象装置の稼働状態を遊休状態と判定する、付記8または9記載の遊休リソース利用支援方法。
(付記11)
前記稼働状態判定工程は、
前記管理対象装置について、ハードウェアリソースの使用状況を取得し、
前記ハードウェアリソースの使用状況が閾値未満である場合に、管理対象装置の稼働状態を離席状態と判定し、
前記装置選択工程は、前記稼働状態が前記遊休状態または前記離席状態と判定された管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信工程は、選択された前記管理対象装置に前記タスク依頼情報を配信する、付記8から10のいずれかに記載の遊休リソース利用支援方法。
(付記12)
前記タスク実行管理工程は、
前記タスク依頼情報を配信した前記管理対象装置のハードウェアリソースの使用状況を取得し、
前記ハードウェアリソースの使用状況に基づいて、前記タスク依頼情報を配信した前記管理対象装置の使用状態を判定し、
前記管理対象装置の使用状態を使用中と判定した場合、配信したタスクを中断させる、付記8から11のいずれかに記載の遊休リソース利用支援方法。
(付記13)
前記タスク配信工程は、複数の管理対象装置に前記タスク依頼情報を配信し、
前記処理結果取得工程は、
複数の前記管理対象装置のタスク実行結果を取得し、
複数のタスク実行結果を比較し、複数のタスク実行結果が一致する場合、正しい結果であると判定し、
前記出力工程は、正しい結果であると判定されたタスク実行結果を出力する、付記8から12のいずれかに記載の遊休リソース利用支援方法。
(付記14)
前記処理結果取得工程は、複数の前記タスク実行結果のハッシュ値を比較し、前記ハッシュ値が一致する場合、正しい結果であると判定する、付記13記載の遊休リソース利用支援方法。
(付記15)
タスク依頼情報取得手順、稼働状態判定手順、装置選択手順、タスク配信手順、タスク実行管理手順、処理結果取得手順、及び出力手順を含み、
前記タスク依頼情報取得手順は、タスク依頼情報を取得し、
前記稼働状態判定手順は、管理対象装置の稼働状態を判定し、
前記装置選択手順は、前記稼働状態が遊休状態と判定された管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信手順は、選択した前記管理対象装置に前記タスク依頼情報を配信し、
前記タスク実行管理手順は、前記タスク依頼情報を配信した前記管理対象装置に前記タスク依頼情報のタスクを実行させ、
前記処理結果取得手順は、前記管理対象装置のタスク実行結果を取得し、
前記出力手順は、前記タスク実行結果を出力し、
前記各手順をコンピュータに実行させるためのプログラム。
(付記16)
前記タスク配信手順は、選択した前記管理対象装置に、前記タスク依頼情報と、前記タスク依頼情報のタスク実行基盤とを含むコンテナイメージを配信する、付記15記載のプログラム。
(付記17)
前記稼働状態判定手順は、前記管理対象装置について、使用中のユーザの有無を判定し、使用中のユーザがいない管理対象装置の稼働状態を遊休状態と判定する、付記15または16記載のプログラム。
(付記18)
前記稼働状態判定手順は、
前記管理対象装置について、ハードウェアリソースの使用状況を取得し、
前記ハードウェアリソースの使用状況が閾値未満である場合に、管理対象装置の稼働状態を離席状態と判定し、
前記装置選択手順は、前記稼働状態が前記遊休状態または前記離席状態と判定された前記管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信手順は、選択された前記管理対象装置に前記タスク依頼情報を配信する、付記15から17のいずれかに記載のプログラム。
(付記19)
前記タスク実行管理手順は、
前記タスク依頼情報を配信した前記管理対象装置のハードウェアリソースの使用状況を取得し、
前記ハードウェアリソースの使用状況に基づいて、前記タスク依頼情報を配信した前記管理対象装置の使用状態を判定し、
前記管理対象装置の使用状態を使用中と判定した場合、配信したタスクを中断させる、付記15から18のいずれかに記載のプログラム。
(付記20)
前記タスク配信手順は、複数の前記管理対象装置に前記タスク依頼情報を配信し、
前記処理結果取得手順は、
複数の前記管理対象装置のタスク実行結果を取得し、
複数の前記タスク実行結果を比較し、複数の前記タスク実行結果が一致する場合、正しい結果であると判定し、
前記出力手順は、正しい結果であると判定された前記タスク実行結果を出力する、付記15から19のいずれかに記載のプログラム。
(付記21)
前記処理結果取得手順は、複数の前記タスク実行結果のハッシュ値を比較し、前記ハッシュ値が一致する場合、正しい結果であると判定する、付記20記載のプログラム。
(付記22)
タスク依頼情報取得手順、稼働状態判定手順、装置選択手順、タスク配信手順、タスク実行管理手順、処理結果取得手順、及び出力手順を含み、
前記タスク依頼情報取得手順は、タスク依頼情報を取得し、
前記稼働状態判定手順は、管理対象装置の稼働状態を判定し、
前記装置選択手順は、前記稼働状態が遊休状態と判定された前記管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信手順は、選択した前記管理対象装置に前記タスク依頼情報を配信し、
前記タスク実行管理手順は、前記タスク依頼情報を配信した前記管理対象装置に前記タスク依頼情報のタスクを実行させ、
前記処理結果取得手順は、前記管理対象装置のタスク実行結果を取得し、
前記出力手順は、前記タスク実行結果を出力し、
前記各手順をコンピュータに実行させるためのプログラムを記録しているコンピュータ読み取り可能な記録媒体。
(付記23)
前記タスク配信手順は、選択した前記管理対象装置に、前記タスク依頼情報と、前記タスク依頼情報のタスク実行基盤とを含むコンテナイメージを配信する、付記22記載の記録媒体。
(付記24)
前記稼働状態判定手順は、前記管理対象装置について、使用中のユーザの有無を判定し、使用中のユーザがいない管理対象装置の稼働状態を遊休状態と判定する、付記22または23記載の記録媒体。
(付記25)
前記稼働状態判定手順は、
前記管理対象装置について、ハードウェアリソースの使用状況を取得し、
前記ハードウェアリソースの使用状況が閾値未満である場合に、管理対象装置の稼働状態を離席状態と判定し、
前記装置選択手順は、前記稼働状態が前記遊休状態または前記離席状態と判定された前記管理対象装置から、少なくとも一つの前記管理対象装置を選択し、
前記タスク配信手順は、選択された前記管理対象装置に前記タスク依頼情報を配信する、付記22から24のいずれかに記載の記録媒体。
(付記26)
前記タスク実行管理手順は、
前記タスク依頼情報を配信した前記管理対象装置のハードウェアリソースの使用状況を取得し、
前記ハードウェアリソースの使用状況に基づいて、前記タスク依頼情報を配信した前記管理対象装置の使用状態を判定し、
前記管理対象装置の使用状態を使用中と判定した場合、配信したタスクを中断させる、付記22から25のいずれかに記載の記録媒体。
(付記27)
前記タスク配信手順は、複数の前記管理対象装置に前記タスク依頼情報を配信し、
前記処理結果取得手順は、
複数の前記管理対象装置のタスク実行結果を取得し、
複数の前記タスク実行結果を比較し、複数の前記タスク実行結果が一致する場合、正しい結果であると判定し、
前記出力手順は、正しい結果であると判定された前記タスク実行結果を出力する、付記22から26のいずれかに記載の記録媒体。
(付記28)
前記処理結果取得手順は、複数の前記タスク実行結果のハッシュ値を比較し、前記ハッシュ値が一致する場合、正しい結果であると判定する、付記27記載の記録媒体。
【産業上の利用可能性】
【0040】
本発明の遊休リソース利用支援装置は、例えば、管理対象装置の稼働状態を判定し、遊休状態又は離席状態と判定した管理対象装置にタスク依頼情報のタスクを実行させることができる。このため、本発明の遊休リソース利用支援装置によれば、例えば、遊休リソースの利用を促進できる。このため、本発明は、IT分野において広く好適に利用できる。
【符号の説明】
【0041】
10 遊休リソース利用支援装置
11 タスク依頼情報取得部
12 稼働状態判定部
13 装置選択部
14 タスク配信部
15 タスク実行管理部
16 処理結果取得部
17 出力部
101 中央処理装置
102 メモリ
103 バス
104 記憶装置
105 入力装置
106 出力装置
107 通信デバイス