JP2017068480A - ジョブ管理方法、ジョブ管理装置及びプログラム - Google Patents

ジョブ管理方法、ジョブ管理装置及びプログラム Download PDF

Info

Publication number
JP2017068480A
JP2017068480A JP2015191931A JP2015191931A JP2017068480A JP 2017068480 A JP2017068480 A JP 2017068480A JP 2015191931 A JP2015191931 A JP 2015191931A JP 2015191931 A JP2015191931 A JP 2015191931A JP 2017068480 A JP2017068480 A JP 2017068480A
Authority
JP
Japan
Prior art keywords
execution
job
requirement
virtual machine
execution environment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2015191931A
Other languages
English (en)
Other versions
JP6668658B2 (ja
Inventor
秀行 倉城
Hideyuki Kurashiro
秀行 倉城
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2015191931A priority Critical patent/JP6668658B2/ja
Publication of JP2017068480A publication Critical patent/JP2017068480A/ja
Application granted granted Critical
Publication of JP6668658B2 publication Critical patent/JP6668658B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】クラウドシステムにおける円滑な業務処理の実行に寄与するジョブ管理方法を提供する。【解決手段】ジョブ管理方法は、業務の実行処理を規定するインストラクションに関する情報と、実行処理を実行するための要件を含む実行要件と、を入力するステップと、クラウドシステムに実行要件に適合する実行環境が存在しなければ、前記クラウドシステムに実行要件に適合する実行環境を作成するステップと、実行処理を、実行要件に適合する実行環境にて実行するステップと、を含む。【選択図】図1

Description

本発明は、ジョブ管理方法、ジョブ管理装置及びプログラムに関する。特に、クラウドシステムにて実行されるジョブを対象としたジョブ管理方法、ジョブ管理装置及びプログラムに関する。
近年、従業員の勤務管理や売り上げの帳票管理等に係る業務が、ネットワーク上のサーバにて処理されることが多くなっている。具体的には、当該サーバが、勤務管理等の業務遂行に必要な処理手続を記載したジョブスクリプトに含まれる単一又は連続的なプログラム群を実行することで、勤務管理等に係るジョブが処理される。なお、ジョブスクリプトは、サーバ上で実行されるOS(Operating System)に応じて、シェルスクリプトやバッチスクリプトと称されることもある。
また、1つの業務を複数のジョブ(処理単位)に分解し、当該複数のジョブに前後関係を設定し、その前後関係がフロー状に定義されたジョブネットワークがサーバにて処理されることもある。
このようなジョブやジョブネットワークを管理するためのジョブ管理装置が存在する。ジョブ管理装置は、ジョブの定義情報を管理し、ジョブネットワークのフロー制御等を行う。なお、ジョブ管理装置は、ジョブやジョブネットワークの管理に特化した装置であることが多く、ジョブの目的に応じて他の装置(サーバ、エージェント)にジョブスクリプト等の必要な情報が転送され、当該他の装置にて実際のジョブが実行されることも多い。
以前から勤務管理等の業務がサーバ上にて行われていたが、業務処理(ジョブの実行)はシステムごと、プロジェクトごとに、プラットフォーム(ハードウェア、OS等)が独立しているのが通常であった。このような場合、システムの管理者が当該プラットフォーム上で動くアプリケーション、ジョブの実行に必要な環境等を管理する必要がある。しかし、ネットワーク技術、情報処理技術の発展に伴い、システムの集約化が進み、プラットフォームは仮想化され、ジョブの実行に必要なミドルウェアはカタログという形式でテンプレート化されて提供されることが多くなってきた。
このような状況の変化に合わせ、システムやプロジェクトごとの担当者が、プラットフォームやミドルウェアに関する管理を行うのではなく、上記のような集約されたインフラストラクチャ(以下、単にインフラと表記する)に関する管理を特定の管理者(以下、インフラ管理者と表記する)が統括的に行うシステムが運用されることが多くなってきた。インフラ管理者がインフラを統括的に管理する運用形態では、各システムの担当者は、当該システムに割り当てられたインフラ上で任意の業務処理(ジョブ)を実行させることになる。
特許文献1は、特定のジョブリソース要件に応答してソフトウェア環境を動的に構築するグリッドコンピューティングシステムを開示する。また、特許文献2は、実行対象となるジョブの入力データ量と、既に実行されたジョブの入力データ量とリソース使用量の関係と、を用いて実行対象となるジョブのリソース使用量を予測するジョブ管理装置を開示する。
特表2008−502967号公報 特開2014−191360号公報
なお、上記先行技術文献の各開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明者らによってなされたものである。
インフラ管理者がインフラを統括的に管理する上述のシステムでは、各利用者(各プロジェクトの担当者)からの要求に応じて、インフラ管理者が数多くの仮想マシン(VM;Virtual Machine)を作成する。利用者は、利用を望む仮想マシンの仕様(スペック)を記載した申請書(パラメータシート)を作成し、当該申請書をインフラ管理者に提出する。
インフラ管理者は、当該申請書に従い物理マシン(PM;Physical Machine)上に仮想マシンを作成し、利用者に払い出す。その際、インフラ管理者によるパラメータ値の誤入力防止とインフラ管理者の負担軽減を目的として、IaC(Infrastructure as Code)と呼ばれる技術が用いられることがある。具体的には、IaCを用いることで、パラメータシートの内容はコード化され、自動的に仮想マシン及びその環境設定が行われる。
しかし、利用者(プロジェクトの担当者)に仮想マシンが払い出されただけでは、業務処理(ジョブ、ジョブネットワーク)を仮想マシン上で実行することはできない。つまり、ジョブの実行に必要なマシンスペック(例えば、メモリ容量、ディスク容量等)を有する仮想マシンが提供されただけでは、ジョブを実行することができない。具体的には、業務処理には実行要件が存在し、適切なOS、アプリケーション等が仮想マシンにインストールされ、且つ、アプリケーション等の実行に必要なアカウント(実行ユーザ)が正しく設定されていないとジョブを実行させることができない。
そのため、実際のシステム運用では、プロジェクトの担当者は、業務処理に必要な要件をインフラ管理者に連絡し、必要なプラットフォームやアプリケーション等の準備を依頼することになる。上記の依頼によりインフラが整った後、各担当者は、ジョブ実行に必要な業務設計を行い、バッチ処理をプログラムやスクリプトとして対象サーバ(払い出された仮想マシン)に配置し、ジョブのスケジューリングを行っている。
インフラ管理者と各担当者のやり取りを纏めると以下のようになる。
・担当者が、業務処理を設計し、業務処理の実行に必要な要件を決定する。
・担当者は、業務処理の要件をインフラ管理者に連絡する。
・インフラ管理者は、連絡を受けた業務処理の要件に適合するインフラを構築する。
・担当者は、ジョブスクリプトをサーバ上に配置し、テスト(試験的な運用)の後、ジョブを実行させる。
このように、インフラ担当者と各プロジェクトの担当者の間の連携が、ジョブの実行には必要となる(ジョブ実行に必要な作業が分担して行われている)。しかし、担当者間の連携に不都合があると、ジョブが正常に実行されない事態が生じうる。つまり、立場の異なる担当者同士が上手く連携し、同期をとって業務処理に関する設計、環境構築を行わないと、円滑にシステムの運用を開始することができない。
例えば、IaC技術を利用することで、仮想マシンの払い出しが自動的に行われたとしても、それ以外の作業では担当者間の連携、手動によるパラメータの設定が必要であり、人為的なミスが生じうる。例えば、ジョブの実行に必要なユーザ(実行ユーザ)が仮想マシンに登録されていない、又は、登録されたユーザID(Identification)と依頼したユーザIDが異なるというミスが生じうる。あるいは、ジョブスクリプトが仮想マシンに正しく配置されていないというミスが生じうる。
本発明は、クラウドシステムにおける円滑な業務処理の実行に寄与するジョブ管理方法、ジョブ管理装置及びプログラムを提供することを目的とする。
本発明の第1の視点によれば、業務の実行処理を規定するインストラクションに関する情報と、前記実行処理を実行するための要件を含む実行要件と、を入力するステップと、クラウドシステムに前記実行要件に適合する実行環境が存在しなければ、前記クラウドシステムに前記実行要件に適合する実行環境を作成するステップと、前記実行処理を、前記実行要件に適合する実行環境にて実行するステップと、を含む、ジョブ管理方法が提供される。
本発明の第2の視点によれば、業務の実行処理を規定するインストラクションに関する情報と、前記実行処理を実行するための要件を含む実行要件と、を入力する入力部と、クラウドシステムに前記実行要件に適合する実行環境が存在しなければ、前記クラウドシステムに前記実行要件に適合する実行環境を作成する実行環境管理部と、前記実行処理を、前記実行要件に適合する実行環境にて実行する実行部と、を備える、ジョブ管理装置が提供される。
本発明の第3の視点によれば、業務の実行処理を規定するインストラクションに関する情報と、前記実行処理を実行するための要件を含む実行要件と、を入力する処理と、クラウドシステムに前記実行要件に適合する実行環境が存在しなければ、前記クラウドシステムに前記実行要件に適合する実行環境を作成する処理と、前記実行処理を、前記実行要件に適合する実行環境にて実行する処理と、をジョブ管理装置に搭載されたコンピュータに実行させる、プログラムが提供される。
なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。記憶媒体は、半導体メモリ、ハードディスク、磁気記録媒体、光記録媒体等の非トランジェント(non-transient)なものとすることができる。本発明は、コンピュータプログラム製品として具現することも可能である。
本発明の各視点によれば、クラウドシステムにおける円滑な業務処理の実行に寄与するジョブ管理方法、ジョブ管理装置及びプログラムが提供される。
一実施形態の概要を説明するための図である。 第1の実施形態に係るジョブ実行システムの構成の一例を示す図である。 ジョブ要件の一例を示す図である。 第1の実施形態に係るジョブ管理装置の内部構成の一例を示す図である。 物理マシン管理情報の一例を示す図である。 仮想マシン管理情報の一例を示す図である。 第1の実施形態に係る物理マシンの内部構成の一例を示す図である。 第1の実施形態に係る実行環境検査部の動作の一例を示すフローチャートである。 ジョブ要件の一例を示す図である。 ジョブ要件の一例を示す図である。 第1の実施形態に係るジョブ実行システムの動作の一例を示すシーケンス図である。 ジョブ実行システムの別の構成の一例を示す図である。 ジョブ実行システムの別の構成の一例を示す図である。
初めに、一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。
図1に示すように、一実施形態に係るジョブ管理方法は、第1〜第3のステップを含む。第1のステップは、業務の実行処理を規定するインストラクションに関する情報と、実行処理を実行するための要件を含む実行要件と、を入力するステップである。第2のステップは、クラウドシステムに実行要件に適合する実行環境が存在しなければ、当該クラウドシステムに実行要件に適合する実行環境を作成するステップである。第3のステップは、実行処理を、実行要件に適合する実行環境にて実行するステップである。なお、本願開示において、インストラクションとは、実行環境のプロセッサへのインストラクションと定義する。例えば、上記インストラクションとして、スクリプト又は実行ファイルが該当する。
一実施形態に係るジョブ管理方法は、ジョブのインストラクションに関する情報とその実行要件を含めて入力する。また、インストラクションに関する情報と共に入力された実行要件を満たす実行環境が存在するか否かが判定され、存在しない場合には、実行要件に適合する実行環境がクラウドシステムに作成される。その結果、インフラの事前準備や担当者間の連携が不要となり、必要なジョブが実行される。即ち、クラウドシステムにおける円滑な業務処理の実行が実現される。
以下に具体的な実施の形態について、図面を参照してさらに詳しく説明する。なお、各実施形態において同一構成要素には同一の符号を付し、その説明を省略する。
[第1の実施形態]
第1の実施形態について、図面を用いてより詳細に説明する。
図2は、第1の実施形態に係るジョブ実行システムの構成の一例を示す図である。図2を参照すると、ジョブ実行システムには、端末10と、データセンタ20と、が含まれる。端末10とデータセンタ20は、ネットワークを介して相互に接続されている。
データセンタ20には、ジョブ管理装置21と、複数の物理マシン22−1〜22−n(nは正の整数、以下同じ)と、が含まれる。なお、物理マシン22−1〜22−nを区別する特段の理由がない場合には、単に「物理マシン22」と表記する。
データセンタ20に設置された複数の物理マシン22は、クラウドシステムにおけるサービス提供インフラを構成する情報処理装置(コンピュータ)である。クラウドシステムには、データセンタ20の利用者(テナント)ごとに区分して仮想マシンが作成される。
ジョブ管理装置21は、物理マシン22の制御、管理を行う装置である。具体的には、ジョブ管理装置21は、物理マシン22の仕様(例えば、ハードウェアスペック、利用可能なソフトウェア等)や動作状態に関する管理する。また、ジョブ管理装置21は、クラウドシステムをなす物理マシン22に仮想マシンを作成し、データセンタ20の利用者にジョブの実行環境(仮想マシン)を提供する。
端末10は、データセンタ20の利用者が使用する端末である。例えば、データセンタ20の利用者は、端末10を操作して、勤務管理等の業務処理を物理マシン22に作成された仮想マシンに実行させるための要件(以下、ジョブ要件と表記する)をジョブ管理装置21に入力する。
図3は、ジョブ要件の一例を示す図である。例えば、ジョブ要件は、ジョブ定義情報と、ジョブ実行要件と、から構成される。
ジョブ定義情報は、各テナントに提供される仮想マシンに実行させようとするジョブの概略を規定する情報を含む。例えば、ジョブ定義情報は、データセンタ20の運営事業者から割り当てられたテナントID(Identification)と、業務の実行処理を規定するインストラクション(業務処理を実現するジョブの実体;例えば、スクリプトファイル又は実行ファイル)に関する情報と、ジョブ実行に関するスケジュール情報と、を含んで構成される。図3に示す例では、「テナントA」に割り当てられた仮想マシンにて、「JOB_A.sh」というファイル名のスクリプトファイルに記載された処理(プログラム及びその実行順序)が、「毎週火曜日の午前8:00」に実行されることが理解される。
ジョブ実行要件は、ジョブ定義情報により規定されたジョブを実行するための要件に関する情報を含む。例えば、ジョブ実行要件は、ジョブを実行する仮想マシンに要求するスペック(メモリ容量、ディスク容量等)、ジョブを実行する際に必要なソフトウェア(OS、アプリケーション、ミドルウェア等)、ソフトウェアを実行するアカウント(実行アカウント)等に関する情報を含む。図3に示す例では、2Gbyteのメモリ容量、10Gbyteのディスク容量を有する仮想マシンに、OSとして「OS_A」が、アプリケーション(AP;Application)として「AP_A」が、それぞれインストールされ、「USER_A」が実行アカウントとして登録されていることが、ジョブの実行に必要であることが理解される。
図2に示すジョブ管理装置21は、端末10からジョブ要件を入力すると、当該ジョブ要件に含まれるジョブ実行要件に適合する実行環境(仮想マシン)を用意する。より具体的には、ジョブ管理装置21は、ジョブ実行要件に適合する仮想マシンを用意し、当該仮想マシンをジョブの実行環境とする。さらに、ジョブ管理装置21は、ジョブ定義情報に含まれるスケジュール情報に従い、ジョブの実行制御を行う。
データセンタ20の利用者(テナント)は、端末10を操作して、仮想マシンにより実行されたジョブの実行結果を参照する(又は、取得する)。
図4は、ジョブ管理装置21の内部構成の一例を示す図である。図4を参照すると、ジョブ管理装置21は、通信制御部201と、ジョブ要件処理部202と、実行環境検査部203と、物理マシン管理部204と、ジョブ実行制御部205と、ジョブ要件記憶部211と、物理マシン管理情報記憶部212と、仮想マシン管理情報記憶部213と、を含んで構成される。ジョブ管理装置21を構成する各部は内部バスを介して相互に接続され、ジョブ要件処理部202を初めとする制御モジュールはジョブ要件記憶部211等の記憶部にアクセス可能に構成されている。
通信制御部201は、他の装置(端末10、物理マシン22等)との間の通信を制御する手段である。通信制御部201は、他の装置からメッセージを受信すると、当該メッセージをジョブ管理装置21内の各部に振り分ける。あるいは、ジョブ管理装置21内の各部からメッセージ送信の指示を受けると、他の装置に向けて当該メッセージを転送する。通信制御部201は、端末10からジョブ要件を入力すると、当該入力されたジョブ要件をジョブ要件記憶部211に格納すると共に、ジョブ要件処理部202にジョブ要件を取得した旨を通知する。
ジョブ要件処理部202は、端末10から取得したジョブ要件を処理する手段である。具体的には、ジョブ要件処理部202は、ジョブ要件を取得すると、実行環境検査部203に対し、ジョブ要件に記載されたジョブ実行要件と実行環境(仮想マシン)に関する検査を依頼する。ジョブ要件処理部202は、実行環境検査部203による検査が終了すると、実行環境検査部203から通知される検査結果に応じた処理を行う。
より詳細には、ジョブ要件処理部202は、実行環境検査部203から「ジョブは既存の仮想マシンにて実行可能」という第1の検査結果を取得した場合には、ジョブ実行制御部205に対し、ジョブ要件を特定する情報と、当該ジョブ要件に対応するジョブを実行する仮想マシンを特定する情報と、を通知する。
また、ジョブ要件処理部202は、実行環境検査部203から「ジョブは既存の仮想マシンのスペック変更により実行可能」という第2の検査結果を取得した場合には、物理マシン管理部204に対し、仮想マシンのスペック変更(構成変更、再構成)を依頼する。その際、ジョブ要件処理部202は、仮想マシンのスペック変更に関する情報を物理マシン管理部204に提供する。
さらに、ジョブ要件処理部202は、実行環境検査部203から「ジョブの実行には仮想マシンの新規作成が必要」という第3の検査結果を取得した場合には、物理マシン管理部204に対し、仮想マシンの新規作成を依頼する。その際、ジョブ要件処理部202は、新たに作成する仮想マシンに関する情報を物理マシン管理部204に提供する。
ジョブ要件処理部202は、物理マシン管理部204による仮想マシンの変更や新たな仮想マシンの作成が終了すると、ジョブ実行制御部205に対し、ジョブ要件を特定する情報と、当該ジョブ要件に対応するジョブを実行する仮想マシンを特定する情報と、を通知する。
また、ジョブ要件処理部202は、実行環境検査部203から上記第1〜第3の検査結果を取得した場合には、通信制御部201を介して、ジョブの実行環境が提供可能である旨を端末10に通知する。
さらに、ジョブ要件処理部202は、実行環境検査部203から、「ジョブの実行は不可能」という第4の検査結果を取得した場合には、その旨を、通信制御部201を介して端末10に通知する。
上述のように、実行環境検査部203は、ジョブ要件処理部202からの依頼(指示)に基づき、ジョブ要件に含まれるジョブ実行要件とその実行環境(仮想マシン)に関する検査を行う。より具体的には、ジョブ要件と、物理マシン管理情報記憶部212に格納された物理マシン管理情報と、仮想マシン管理情報記憶部213に格納された仮想マシン管理情報と、に基づき、上記第1〜第4の検査結果に対応する検査を行い、その結果をジョブ要件処理部202に通知する。なお、実行環境検査部203の動作に関するより詳細な説明は後述する。
物理マシン管理部204は、データセンタ20内の物理マシン22を制御し、管理する手段である(ジョブの実行環境である仮想マシンを管理する手段である)。具体的には、物理マシン管理部204は、クラウドシステムにジョブ実行要件に適合する仮想マシンが存在しなければ、物理マシン22に当該ジョブ実行要件に適合する仮想マシンを、クラウドシステムのテナントごとに区分して作成する。より詳細には、物理マシン管理部204は、ジョブ要件処理部202からの依頼に基づき、既存の仮想マシンのスペックを変更する、又は、物理マシン22に新たな仮想マシンを作成する。なお、物理マシン管理部204による仮想マシンの変更や新規作成は、実行環境検査部203による検査の後に行われる(実行要件と実行環境に関する検査が先に行われる)。さらに、物理マシン管理部204は、物理マシン管理情報や仮想マシン管理情報に変更が生じた場合には、これらの情報を記憶する記憶部(物理マシン管理情報記憶部212、仮想マシン管理情報記憶部213)の内容を更新する。
ジョブ実行制御部205は、ジョブ要件に含まれるジョブを、ジョブ要件に含まれるジョブ実行要件に適合する実行環境(仮想マシン)にて実行する手段である。具体的には、ジョブ実行制御部205は、ジョブ要件に記載されたジョブ(ジョブプロセス)の起動や停止に関する制御(ジョブ実行制御)を行う。さらに、ジョブ実行制御部205は、ジョブ要件のジョブを実行する仮想マシンに、ジョブ定義情報に含まれるインストラクションを設定する。例えば、ジョブ実行制御部205は、ジョブの実行に必要なスクリプトファイルを仮想マシンに配布し、ジョブ実行可能状態とする。仮想マシンへのインストラクションの設定が終了すると、ジョブ実行制御部205は、ジョブ定義情報に記載されたスケジュール情報に従い、ジョブの実行をインストラクションが設定された仮想マシンに指示する。
ジョブ要件記憶部211、物理マシン管理情報記憶部212及び仮想マシン管理情報記憶部213の各記憶部は、HDD(Hard Disk Drive)等の記憶媒体を含んで構成される。
ジョブ要件記憶部211は、端末10から取得したジョブ要件を記憶する。
物理マシン管理情報記憶部212は、物理マシン管理情報を一元管理し、当該情報を記憶する。図5は、物理マシン管理情報の一例を示す図である。図5を参照すると、物理マシン管理情報として、各物理マシン22が有するハードウェアスペック(例えば、利用可能なメモリ容量、ディスク容量)やソフトウェア(利用可能なOS、利用可能なアプリケーション、利用可能なミドルウェア(MW;MiddleWare))等に関する情報が、登録されている。
仮想マシン管理情報記憶部213は、仮想マシン管理情報を一元管理し、当該情報を記憶する。図6は、仮想マシン管理情報の一例を示す図である。図6を参照すると、仮想マシン管理情報として、テナントごとに、各テナントに割り当てられた仮想マシンと、当該仮想マシンが作成されている物理マシンと、仮想マシンのスペックと、仮想マシンにインストールされたソフトウェア(例えば、ゲストOS、実行可能なアプリケーション)と、当該ソフトウェアの実行アカウントに関する情報と、が登録されている。つまり、仮想マシン管理情報により、物理マシン22に作成された仮想マシンのスペック(ハードウェアに関するスペック、ソフトウェアに関するスペック)が管理される。なお、本願開示において、ソフトウェアを実行する実行アカウントは、ソフトウェアに関するスペックに含まれるものとする。
図7は、物理マシン22の内部構成の一例を示す図である。図7を参照すると、物理マシン22は、ハードウェアリソース301と、ハイパーバイザー302と、を含んで構成される。
物理マシン22が有するハードウェアリソース301には、CPU(Central Processing Unit)、DRAM(Dynamic Random Access Memory)等のメモリ、HDD(Hard Disk Drive)等の記憶媒体、NIC(Network Interface Card)等の通信インターフェイス等が含まれる。
ハイパーバイザー302は、物理マシン22における仮想化環境を構築し、管理する手段である。即ち、ハイパーバイザー302により仮想マシンの作成、変更が制御される。ハイパーバイザー302が作成する仮想マシンには、ハードウェアリソース301を仮想化した仮想ハードウェア311が割り当てられる。この仮想ハードウェア311には、仮想NICが含まれ、仮想マシンと他の装置との通信は、仮想NICを介して行われる。仮想マシン上では、ゲストOS312が動作し、当該ゲストOS312上でアプリケーション313やミドルウェア314が動作する。
次に、実行環境検査部203を中心に第1の実施形態に係るジョブ管理装置21の動作について説明する。
図8は、第1の実施形態に係る実行環境検査部203の動作の一例を示すフローチャートである。
ステップS101において、実行環境検査部203は、端末10から取得したジョブ実行要件に適合する仮想マシンが既に存在するか否かを判定する。具体的には、実行環境検査部203は、物理マシン22に既に構築された既存の仮想マシンのスペック(ハードウェアスペック、ソフトウェアスペック)が、ジョブ実行要件を包含しているか否かにより、上記判定を行う。ジョブ実行要件に適合する仮想マシンが既に存在する場合(ステップS101、Yes分岐)には、実行環境検査部203は、ステップS102以降の処理を実行する。ジョブ実行要件の要素と、対応する仮想マシン管理情報の要素と、が少なくとも1つ以上相違する場合(既存の仮想マシンのスペックがジョブ要件に含まれるジョブ実行要件を包含しない場合)には、実行環境検査部203は、ジョブ実行要件に適合する仮想マシンは存在しないと判定(ステップS101、No分岐)し、ステップS104以降の処理を実行する。
例えば、実行環境検査部203は、図9に示すようなジョブ要件を取得したものとする。この場合、実行環境検査部203は、仮想マシン管理情報記憶部213を参照し、テナントAに割り当てられた仮想マシンであって、図9に示すジョブ実行要件に適合する仮想マシンが存在するか否かを判定する。
図6を参照すると、物理マシン22−1に作成された仮想マシンVM1−1のスペックが、上記ジョブ実行要件を包含するので、実行環境検査部203はステップS102に遷移し処理を続ける。
一方、実行環境検査部203が、図10(a)や図10(b)に示すようなジョブ要件を取得した場合には、テナントAに割り当てられた仮想マシンであって、そのスペックがジョブ実行要件を包含する仮想マシンは存在しないので、ステップS104に遷移し処理を続ける。図10(a)に例示するジョブ実行要件は、図6の1行目に記載された仮想マシンVM1−1と比較し、実行アカウントが一致しないためである。また、図10(b)に例示するジョブ実行要件は、図6の1行目に記載された仮想マシンVM1−1と比較し、OS(ゲストOS)が一致しないためである。
ステップS102において、実行環境検査部203は、ジョブ要件に記載されたジョブ(スクリプトファイル)が、ステップS101にて選択された仮想マシン(既存の仮想マシン)にて実行可能か否かを判定する。具体的には、実行環境検査部203は、ジョブ(スクリプトファイルにより規定される実行処理)が既存の仮想マシンにて実行される他の処理と共存可能か否かにより、上記判定を行う。
なお、実行環境検査部203が実行するステップS102の判定には、種々の技術を用いることができる。例えば、実行環境検査部203は、ジョブ要件に記載されたスケジュール情報と、既存の仮想マシンにて実行されるジョブのスケジュール情報と、を比較し、ジョブの実行可否を判定してもよい。ジョブ要件に記載されたジョブの実行タイミングと、既存の仮想マシンにて実行されるジョブの実行タイミングと、が異なる場合(例えば、各ジョブを実行する曜日が異なる場合)には、実行環境検査部203は、2つのジョブは同一の仮想マシンにて実行可能と判定する。
あるいは、特許文献2に開示されるように、これから実行しようとするジョブ(ジョブ要件に記載されたジョブ;実行対象のジョブ)の入力データ量と、既に実行されたジョブ(ステップS101にて選択された仮想マシンにて実行されたジョブ)の入力データ量とリソース使用量との関係を用いて、実行対象のジョブが既存の仮想マシンにて実行可能か否かを判定してもよい。
ジョブが既存の仮想マシンにて実行可能な場合(ステップS102、Yes分岐)には、実行環境検査部203は、要求されたジョブの実行は既存の仮想マシンにより対応可能であると判定する(ステップS103)。即ち、既存の仮想マシンは、ジョブ実行要件に適合する実行環境であると判定される。この場合、実行環境検査部203は、ジョブ実行要件に関する検査の結果に上記第1の検査結果を設定する。
ステップS104において、実行環境検査部203は、既存の仮想マシンにスペック変更を加えることで、要求されたジョブ実行要件に対応可能か否かを判定する。具体的には、実行環境検査部203は、既存の仮想マシンのスペックとジョブ実行要件の間の相違点が、予め定めた相違点であるか否かにより、上記判定を行う。
例えば、図10(a)に示すように、ジョブ実行要件と既存の仮想マシンVM1−1の間で、実行アカウントに限り異なる場合には、要求されたジョブ実行要件は既存の仮想マシンに変更を加えることで対応可能と判定される。この場合、既に存在する仮想マシンに実行アカウントを追加することは容易であるためである。あるいは、要求されたジョブ実行要件と既存の仮想マシンの相違点が、既に作成された仮想マシンのメモリ容量がジョブ実行要件のメモリ容量よりも小さいような場合も、既存の仮想マシンのスペックを変更することによりジョブ実行要件に適合する実行環境(仮想マシン)の提供が可能と判定される。既に存在する仮想マシンにメモリ容量を追加することは容易であるためである。
一方、図10(b)に示すように、ジョブ実行要件のOSと、既存の仮想マシンVM1−1にインストールされているOS(ゲストOS)と、が異なる場合には、実行環境検査部203は、既存の仮想マシンに対する変更では要求されたジョブ実行要件に対応不可と判定する。OSが異なる場合の対応は困難だからである。
なお、いずれかの要素が一致するときに既存の仮想マシンに対する変更により、要求されたジョブ実行要件が対応可能か否かの基準は、各要素の性質や特等に応じて予め定めておくものとする。
既存の仮想マシンを変更することでジョブ実行要件に対応可能と判定された場合(ステップS104、Yes分岐)は、実行環境検査部203は、既存の仮想マシンのスペック変更が必要と判定する(ステップS105)。この場合、実行環境検査部203は、ジョブ実行要件に関する検査の結果として上記第2の検査結果を設定する。
要求されたジョブ実行要件が既存の仮想マシンにて対応不可な場合(ステップS102、No分岐)や既存の仮想マシンを変更しても要求されたジョブ実行要件への対応が不可な場合(ステップS104、No分岐)には、実行環境検査部203は、要求されたジョブ実行要件に適合する仮想マシンの作成が可能か否かを判定する(ステップS106)。換言するならば、実行環境検査部203は、ジョブ実行要件に適合する仮想マシンは存在せず、且つ、既存の仮想マシンの変更によってもジョブ実行要件に適合する実行要件の提供が不可能な場合に、仮想マシンの新規作成に関する要否を判定する。具体的には、実行環境検査部203は、物理マシン管理情報記憶部212を参照し、要求されたジョブ実行要件に適合する仮想マシンの作成が可能な物理マシン22が存在するか否かを判定する。
例えば、図10(b)に例示するジョブ要件は、テナントAに割り当てられた仮想マシンに「OS_C」がインストールされていないことを理由に、仮想マシンを新たなに作成する必要があると判定される。この場合、図5に示す物理マシン管理情報と、図10(b)に示すジョブ要件と、を参照すると、物理マシン22−2には「OS_C」がインストール可能であるので、当該ジョブ実行要件に適合する実行環境(仮想マシン)は物理マシン22−2に作成可能と判定される。
ジョブ実行要件を満たす仮想マシンの作成が可能な物理マシン22が存在する場合(ステップS106、Yes分岐)には、実行環境検査部203は、要求されたジョブ実行要件に適合する仮想マシンの作成は可能であると判定する(ステップS107)。この場合、実行環境検査部203は、ジョブ実行要件に関する検査の結果として上記第3の検査結果を設定する。
ジョブ実行要件に適合する仮想マシンの作成が可能な物理マシン22が存在しない場合(ステップS106、No分岐)には、実行環境検査部203は、要求されたジョブ実行要件に適合する仮想マシンの作成は不可能であると判定する(ステップS108)。この場合、実行環境検査部203は、ジョブ実行要件に関する検査の結果として上記第4の検査結果を設定する。
ステップS109において、実行環境検査部203は、上記第1〜第4の検査結果のいずれかと、その詳細をジョブ要件処理部202に通知する。
具体的には、実行環境検査部203は、第1の検査結果を得た場合には、ジョブを実行する仮想マシンを特定する識別情報(仮想マシンのID)を検査結果に添えて、ジョブ要件処理部202に通知する。
実行環境検査部203は、第2の検査結果を得た場合には、検査結果と共に、変更を要する仮想マシンを特定する識別情報と、変更内容(例えば、追加する実行アカウント名や追加が必要なメモリ容量に関する情報)と、をジョブ要件処理部202に通知する。
実行環境検査部203は、第3の検査結果を得た場合には、検査結果と共に、ジョブ実行要件に適合する仮想マシンの作成が可能な物理マシン22を特定する識別情報をジョブ要件処理部202に通知する。
実行環境検査部203は、第4の検査結果を得た場合には、要求されたジョブ実行要件に適合する仮想マシンが用意できない旨をジョブ要件処理部202に通知する。
次に、図11を参照して、第1の実施形態に係るジョブ実行システムの動作を説明する。
ステップS01において、端末10は、データセンタ20の利用者によるジョブ要件を入力し、取得したジョブ要件をジョブ管理装置21に出力する。ジョブ管理装置21のジョブ要件処理部202は、取得したジョブ要件をジョブ要件記憶部211に格納すると共に、当該ジョブ要件に含まれるジョブ実行要件と実行環境に関する検査を実行環境検査部203に依頼する。
ステップS02において、実行環境検査部203は、ジョブ要件、物理マシン管理情報及び仮想マシン管理情報を参照し、ジョブ実行要件及び実行環境に関する検査を行う。その後、実行環境検査部203は、検査結果(上述の第1〜第4の検査結果のいずれか)をジョブ要件処理部202に通知する。
実行環境検査部203による検査結果を取得したジョブ要件処理部202は、各検査結果に応じた処理を行う。
具体的には、第1の検査結果(既存の仮想マシンにて対応可能)を取得した場合には、ジョブ要件処理部202は、端末10から入力されたジョブ要件に含まれるジョブを実行する仮想マシンを特定する識別情報をジョブ実行制御部205に通知する(ステップS03)。
第2の検査結果(既存の仮想マシンを変更することで対応可能)を取得した場合には、ジョブ要件処理部202は、仮想マシンの変更内容を物理マシン管理部204に通知し、仮想マシンの変更を依頼する。この場合、物理マシン管理部204は、通知された仮想マシンの変更内容に基づき、物理マシン22(より正確には、ハイパーバイザー302)に対して、既存の仮想マシンのスペック変更を指示する(ステップS04)。仮想マシンのスペック変更が終了すると、物理マシン管理部204は、その旨をジョブ要件処理部202に通知する。その後、ジョブ要件処理部202は、ジョブを実行する仮想マシンを特定する識別情報をジョブ実行制御部205に通知する。
第3の検査結果(新たな仮想マシンの作成が必要)を取得した場合には、ジョブ要件処理部202は、新たに作成する仮想マシンのスペックを物理マシン管理部204に通知し、仮想マシンの作成を依頼する。この場合、物理マシン管理部204は、通知された仮想マシンのスペックに基づき、物理マシン22に対して、新たな仮想マシンの作成を指示する(ステップS05)。即ち、物理マシン管理部204は、新たに作成する仮想マシンのスペックとしてジョブ要件に含まれるジョブ実行要件を取得し、当該ジョブ実行要件を満たすインフラの作成を行う。具体的には、物理マシン管理部204は、仮想マシンを作成し、当該作成された仮想マシンにOS、アプリケーション及びミドルウェアをインストールすると共に、実行アカウントの設定を行う。
仮想マシンの作成が終了すると、物理マシン管理部204は、その旨をジョブ要件処理部202に通知する。その後、ジョブ要件処理部202は、ジョブを実行する仮想マシンを特定する識別情報をジョブ実行制御部205に通知する。
ステップS06において、ジョブ要件処理部202は、端末10からのジョブ要件入力に対する応答を行う。具体的には、ジョブ要件処理部202は、上記第1〜第3の検査結果を得た場合には、ジョブ要件に含まれるジョブ実行要件を満たす環境の提供が可能である旨(ジョブは実行可能である旨)を端末10に通知する。
一方、第4の検査結果(ジョブの実行要件を満たす仮想マシンの作成は不可能)を取得した場合には、ジョブ要件処理部202は、ジョブ要件に含まれるジョブ実行要件を満たす環境の提供は不可である旨(エラー)を端末10に通知する。その際、ジョブ要件処理部202は、エラーと共に、不足するリソース(メモリ容量、ディスク容量等)やソフトウェアに関する情報を端末10に通知してもよい。
ジョブを実行する仮想マシンの通知を受けたジョブ実行制御部205は、ジョブ要件記憶部211を参照し、ジョブ定義情報に含まれるインストラクションを、通知された仮想マシンに設定する(ステップS11)。例えば、ジョブ実行制御部205は、仮想マシンの所定位置(所定のフォルダ)にスクリプトファイルを設定するように、仮想マシンに指示する。より詳細には、ジョブ実行制御部205は、ジョブ定義情報に記載のスクリプトファイルの実体を仮想マシンに送信し、当該スクリプトファイルを所定の場所に格納するように指示する。
あるいは、ジョブ定義情報に記載のインストラクションに関する情報が、例えば、スクリプトファイルの格納場所を示すパス情報である場合には、ジョブ実行制御部205は、当該パス情報を仮想マシンに送信し、当該パス情報に記載された場所からスクリプトファイルの実体を取得することを指示し、所定の場所に格納することを指示する。
その後、ジョブ実行制御部205は、予め定めたタイミングや予め定めた時刻に、ジョブ要件記憶部211を参照し、スケジュール情報を確認する(ステップS12)。
確認の結果、ジョブの実行が必要と判断した場合には、ジョブ実行制御部205は、ジョブの実行を仮想マシンに指示する(ステップS13)。
ジョブの実行に係る指示を受けた仮想マシンは、当該ジョブを実行する(ステップS14)。
その後、データセンタ20の利用者は、端末10を操作して、ジョブの実行結果を参照、取得する(ステップS15)。
なお、図11に示すステップS01〜S06に係る処理は、クラウドシステムに実行させるジョブの設計を行うフェーズとインフラ作成を行う構築フェーズに相当する。また、ステップS11〜S15に係る処理は、ジョブ実行フェーズに相当する。
以上のように、第1の実施形態に係るジョブ実行システムは、ジョブ(業務処理)の実行要件を含めてジョブ管理装置21に入力し、ジョブ管理装置21によりジョブの実行環境が自動的に構築される構成(仕組み)を有するものである。即ち、ジョブ管理装置21は、端末10からのジョブ要件を入力する際(ジョブの定義を行う際)、インストラクションに関する情報だけでなく、実行要件を記述する手段を有し、インストラクションに関する情報と実行要件を関連付けて保存する。また、ジョブ管理装置21は、インストラクションに関する情報と共に入力された実行要件を満たす環境(仮想マシン)が存在するか否か、存在しない場合にはその実行要件に適合するインフラが作成可能か否かを確認、判定する手段を有する。つまり、定義されたジョブが実行可能か否かに関する判定が事前に行われる。また、ジョブ管理装置21は、ジョブの実行が可能な環境(仮想マシン、インフラ)を作成する手段を有し、当該ジョブを実行する前に当該環境を作成することができる。
ジョブ管理装置21が有する上記の各手段の働きにより、インフラの事前準備や担当者間の連携が不要となり、プロジェクトの担当者(業務担当者;端末10の使用者)はジョブの設計、構築を行うことで、必要なジョブが実行される。即ち、インフラ担当者、業務担当者のように役割分担せずとも、一人の管理者が任意のタイミングで必要なインフラ(実行環境)の構築が可能となり、互いの連携や手動作業が不要となり人為的ミスが減少する。また、インフラ情報及びジョブ管理に必要な定義情報を含む情報がコード化されているため、容易に複製(マイグレーション)が可能であり、業務担当者は、検査環境にて試験を行ったシステムをそのまま実際の環境として運用することができる。
なお、第1の実施形態にて説明したジョブ実行システムの構成(図2)は例示であって、システムの構成を限定する趣旨ではない。例えば、ジョブ管理装置21の各機能が複数の装置により実現されていてもよい。例えば、図12に示すように、端末10からのジョブ要件入力を処理する装置(ジョブ管理装置21a)と、データセンタ20内の物理マシン22を管理する装置(クラウド管理装置31)と、を有するシステム構成であってもよい。この場合、ジョブ管理装置21aは、端末10からジョブ要件を入力すると、当該ジョブ要件に含まれるジョブ実行要件に適合する実行環境の提供をクラウド管理装置31に依頼する。依頼を受けたクラウド管理装置31は、ジョブ実行要件とデータセンタ20内の物理マシン22に作成された仮想マシンに関する検査を行う。クラウド管理装置31は、既存の仮想マシンにてジョブ実行要件に適合可能、又は、新たな仮想マシンの作成が必要等の検査結果に応じて、ジョブ実行環境(仮想マシン)を用意し、ジョブ管理装置21aからの依頼に応答する。ジョブ管理装置21aは、データセンタ20からジョブ実行環境の提供を受けることが可能な場合には、当該実行環境上にてジョブを実行する。このように、ジョブ管理装置21aには、第1の実施形態にて説明したジョブ要件処理部202やジョブ実行制御部205の機能を含ませ、クラウド管理装置31には、実行環境検査部203や物理マシン管理部204の機能を含ませることができる。
あるいは、図13に示すように、1つのジョブ管理装置21bと、複数のデータセンタ20−1〜20−m(mは正の整数、以下同じ)と、がジョブ実行システムに含まれていてもよい。即ち、ジョブ実行システムは、複数のデータセンタ20−1〜20−mによりジョブ実行環境が冗長化された構成であってもよい。この場合、ジョブ管理装置21bは、各データセンタの稼働状況等を考慮して、ジョブ実行環境提供の依頼を行うクラウド管理装置31を選択することもできる。
第1の実施形態では、ジョブ実行制御部205がスケジュール情報に従いジョブを起動することを説明したが、ジョブの実行が完了した後に当該ジョブの実行環境(仮想マシン)を削除してもよい。具体的には、ジョブ実行制御部205は、仮想マシンにてジョブの実行が完了した後、物理マシン管理部204に当該ジョブの実行環境(仮想マシン)の削除を依頼してもよい。即ち、クラウド環境下でのオートスケーリングを実現することができる。ジョブは週末や月末等の期間の区切りにて実行されることが多く、これらのタイミングでは物理マシンの負荷が増加する。そこで、対象となる業務処理(ジョブ)を行うためのインスタンス(ジョブ実行要件)を事前に定義しておき、当該ジョブの実行が必要となったタイミングにて新たな仮想マシンを作成し起動する(ジョブの実行完了後には仮想マシンを削除する)。その結果、ジョブの実行環境を提供する物理マシンのリソースを効率的に利用することができる。なお、通常行われるオートスケーリングの場合、必要となるインスタンスの作成は行えるが、ジョブの管理とは連動しておらず、インスタンスとジョブ(アプリケーション)の依存関係を定義することはできない。
第1の実施形態では、ジョブ実行要件にはアプリケーションやミドルウェアが含まれる場合を説明したが、これらのソフトウェアが不要なジョブも存在する。また、第1の実施形態では、ソフトウェアの種別(名称)がジョブ実行要件に含まれる場合を説明したが、ソフトウェアのバージョンやライセンス等に関する情報がジョブ実行要件に含まれ、物理マシン管理情報や仮想マシン管理情報にてこれらの情報(バージョン、ライセンス等の情報)が管理されていてもよい。つまり、実行環境に要求されるバージョンと、実行環境により提供可能なバージョンと、を考慮して、実行環境の提供可否が判断されてもよい。あるいは、仮想マシンに割り当て可能なライセンスが不足する場合には、当該仮想マシンにてジョブは実行不可能等の判断が行われてもよい。
第1の実施形態に係るジョブ管理装置21に含まれるジョブ要件処理部202、実行環境検査部203、物理マシン管理部204及びジョブ実行制御部205等の各部は、ジョブ管理装置21に搭載されたコンピュータに、そのハードウェアを用いて、各処理を実行させるコンピュータプログラムにより実現することもできる。つまり、実行環境検査部203等が行う機能を何らかのハードウェア、及び/又は、ソフトウェアで実行する手段があればよい。
第1の実施形態では、1つのジョブがジョブ要件により定義される場合を説明したが、ジョブネットワークに関する詳細がジョブ要件により定義されてもよい。この場合、1つのジョブ要件に複数のジョブに対応したジョブ実行要件と、複数のジョブの実行順序に関する情報と、が含まれることになる。そのような場合には、ジョブ管理装置21は、ジョブ要件に含まれる個別のジョブ実行要件について、第1の実施形態にて説明した検査及び環境の構築を行えばよい。さらに、ジョブ管理装置21は、それぞれのジョブに対応する実行環境(仮想マシン)が用意された後に、ジョブ要件に含まれるジョブの実行順序に関する情報に従い、各ジョブを実行(ジョブネットワークの実行制御を行う)すればよい。
さらに、コンピュータの記憶部に、上述したコンピュータプログラムをインストールすることにより、コンピュータをジョブ管理装置として機能させることができる。さらにまた、上述したコンピュータプログラムをコンピュータに実行させることにより、コンピュータによりジョブ管理方法を実行することができる。また、そのプログラムは、ネットワークを介してダウンロードするか、或いは、プログラムを記憶した記憶媒体を用いて、更新することができる。
また、上述の説明で用いた複数のフローチャートでは、複数の工程(処理)が順番に記載されているが、実施形態で実行される工程の実行順序は、その記載の順番に制限されない。実施形態では、例えば各処理を並行して実行する等、図示される工程の順番を内容的に支障のない範囲で変更することができる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
[付記1]
上述の第1の視点に係るジョブ管理方法のとおりである。
[付記2]
前記実行環境を作成するステップは、仮想マシンを前記実行環境として前記クラウドシステムに作成する、付記1のジョブ管理方法。
[付記3]
前記実行要件と前記実行環境に関する検査を、前記実行環境の作成に先立ち行う検査ステップをさらに含む、付記2のジョブ管理方法。
[付記4]
前記検査ステップは、
前記クラウドシステムに既に作成された既存の仮想マシンのスペックが、前記実行要件を包含し、且つ、前記実行処理が前記既存の仮想マシンにて実行される他の処理と共存可能な場合に、前記既存の仮想マシンは前記実行要件に適合する実行環境であると判定する、付記3のジョブ管理方法。
[付記5]
前記検査ステップは、
前記既存の仮想マシンのスペックと前記実行要件の間の相違点が、予め定めた相違点である場合に、前記既存の仮想マシンのスペックを変更することにより前記実行要件に適合する実行環境の提供が可能と判定し、
前記既存の仮想マシンのスペックを、前記実行要件に適合するように変更するステップをさらに含む、付記3又は4のジョブ管理方法。
[付記6]
前記検査ステップは、
前記実行要件に適合する仮想マシンが存在せず、且つ、前記既存の仮想マシンの変更によっても前記実行要件に適合する実行要件の提供が不可能な場合には、新たな仮想マシンの作成が必要と判定し、
前記実行環境を作成するステップは、
前記実行要件に適合する新たな仮想マシンを前記クラウドシステムに作成する、付記5のジョブ管理方法。
[付記7]
前記実行処理の実行に先立ち、前記インストラクションを前記実行環境となる仮想マシンに設定するステップをさらに含む、付記2乃至6のいずれか一に記載のジョブ管理方法。
[付記8]
前記実行処理の実行が完了した後に、前記実行処理が実行された実行環境を削除するステップをさらに含む、付記1乃至7のいずれか一に記載のジョブ管理方法。
[付記9]
上述の第2の視点に係るジョブ管理装置のとおりである。
[付記10]
上述の第3の視点に係るプログラムのとおりである。
なお、付記9の形態及び付記10の形態は、付記1の形態と同様に、付記2の形態〜付記8の形態に展開することが可能である。
なお、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
10 端末
20、20−1〜20−m データセンタ
21、21a、21b ジョブ管理装置
22、22−1〜22−n 物理マシン
31 クラウド管理装置
201 通信制御部
202 ジョブ要件処理部
203 実行環境検査部
204 物理マシン管理部
205 ジョブ実行制御部
211 ジョブ要件記憶部
212 物理マシン管理情報記憶部
213 仮想マシン管理情報記憶部
301 ハードウェアリソース
302 ハイパーバイザー
311 仮想ハードウェア
312 ゲストOS
313 アプリケーション
314 ミドルウェア

Claims (10)

  1. 業務の実行処理を規定するインストラクションに関する情報と、前記実行処理を実行するための要件を含む実行要件と、を入力するステップと、
    クラウドシステムに前記実行要件に適合する実行環境が存在しなければ、前記クラウドシステムに前記実行要件に適合する実行環境を作成するステップと、
    前記実行処理を、前記実行要件に適合する実行環境にて実行するステップと、
    を含む、ジョブ管理方法。
  2. 前記実行環境を作成するステップは、仮想マシンを前記実行環境として前記クラウドシステムに作成する、請求項1のジョブ管理方法。
  3. 前記実行要件と前記実行環境に関する検査を、前記実行環境の作成に先立ち行う検査ステップをさらに含む、請求項2のジョブ管理方法。
  4. 前記検査ステップは、
    前記クラウドシステムに既に作成された既存の仮想マシンのスペックが、前記実行要件を包含し、且つ、前記実行処理が前記既存の仮想マシンにて実行される他の処理と共存可能な場合に、前記既存の仮想マシンは前記実行要件に適合する実行環境であると判定する、請求項3のジョブ管理方法。
  5. 前記検査ステップは、
    前記既存の仮想マシンのスペックと前記実行要件の間の相違点が、予め定めた相違点である場合に、前記既存の仮想マシンのスペックを変更することにより前記実行要件に適合する実行環境の提供が可能と判定し、
    前記既存の仮想マシンのスペックを、前記実行要件に適合するように変更するステップをさらに含む、請求項3又は4のジョブ管理方法。
  6. 前記検査ステップは、
    前記実行要件に適合する仮想マシンが存在せず、且つ、前記既存の仮想マシンの変更によっても前記実行要件に適合する実行要件の提供が不可能な場合には、新たな仮想マシンの作成が必要と判定し、
    前記実行環境を作成するステップは、
    前記実行要件に適合する新たな仮想マシンを前記クラウドシステムに作成する、請求項5のジョブ管理方法。
  7. 前記実行処理の実行に先立ち、前記インストラクションを前記実行環境となる仮想マシンに設定するステップをさらに含む、請求項2乃至6のいずれか一項に記載のジョブ管理方法。
  8. 前記実行処理の実行が完了した後に、前記実行処理が実行された実行環境を削除するステップをさらに含む、請求項1乃至7のいずれか一項に記載のジョブ管理方法。
  9. 業務の実行処理を規定するインストラクションに関する情報と、前記実行処理を実行するための要件を含む実行要件と、を入力する入力部と、
    クラウドシステムに前記実行要件に適合する実行環境が存在しなければ、前記クラウドシステムに前記実行要件に適合する実行環境を作成する実行環境管理部と、
    前記実行処理を、前記実行要件に適合する実行環境にて実行する実行部と、
    を備える、ジョブ管理装置。
  10. 業務の実行処理を規定するインストラクションに関する情報と、前記実行処理を実行するための要件を含む実行要件と、を入力する処理と、
    クラウドシステムに前記実行要件に適合する実行環境が存在しなければ、前記クラウドシステムに前記実行要件に適合する実行環境を作成する処理と、
    前記実行処理を、前記実行要件に適合する実行環境にて実行する処理と、
    をジョブ管理装置に搭載されたコンピュータに実行させる、プログラム。
JP2015191931A 2015-09-29 2015-09-29 ジョブ管理方法、ジョブ管理装置及びプログラム Active JP6668658B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015191931A JP6668658B2 (ja) 2015-09-29 2015-09-29 ジョブ管理方法、ジョブ管理装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015191931A JP6668658B2 (ja) 2015-09-29 2015-09-29 ジョブ管理方法、ジョブ管理装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2017068480A true JP2017068480A (ja) 2017-04-06
JP6668658B2 JP6668658B2 (ja) 2020-03-18

Family

ID=58494966

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015191931A Active JP6668658B2 (ja) 2015-09-29 2015-09-29 ジョブ管理方法、ジョブ管理装置及びプログラム

Country Status (1)

Country Link
JP (1) JP6668658B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019120966A (ja) * 2017-12-28 2019-07-22 株式会社日立ソリューションズ ジョブ管理システムおよびジョブ管理装置
JP2021527265A (ja) * 2018-06-14 2021-10-11 リスケール,インコーポレイテッド 統合されたマルチプロバイダ計算プラットフォーム
JP2022508119A (ja) * 2019-03-11 2022-01-19 エヌイーシー ラボラトリーズ アメリカ インク ユースケース仕様およびランタイム実行
WO2023106264A1 (ja) * 2021-12-06 2023-06-15 444株式会社 システムおよび方法
US11809907B2 (en) 2016-08-11 2023-11-07 Rescale, Inc. Integrated multi-provider compute platform

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014038364A (ja) * 2010-10-27 2014-02-27 Hitachi Ltd リソース管理サーバ、リソース管理方法及びリソース管理プログラム
JP2014115905A (ja) * 2012-12-11 2014-06-26 Canon Marketing Japan Inc 情報処理装置、情報処理方法、およびプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014038364A (ja) * 2010-10-27 2014-02-27 Hitachi Ltd リソース管理サーバ、リソース管理方法及びリソース管理プログラム
JP2014115905A (ja) * 2012-12-11 2014-06-26 Canon Marketing Japan Inc 情報処理装置、情報処理方法、およびプログラム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11809907B2 (en) 2016-08-11 2023-11-07 Rescale, Inc. Integrated multi-provider compute platform
JP2019120966A (ja) * 2017-12-28 2019-07-22 株式会社日立ソリューションズ ジョブ管理システムおよびジョブ管理装置
JP2021527265A (ja) * 2018-06-14 2021-10-11 リスケール,インコーポレイテッド 統合されたマルチプロバイダ計算プラットフォーム
JP2022508119A (ja) * 2019-03-11 2022-01-19 エヌイーシー ラボラトリーズ アメリカ インク ユースケース仕様およびランタイム実行
JP7157877B2 (ja) 2019-03-11 2022-10-20 エヌイーシー ラボラトリーズ アメリカ インク ユースケース仕様およびランタイム実行
WO2023106264A1 (ja) * 2021-12-06 2023-06-15 444株式会社 システムおよび方法
JP2023083728A (ja) * 2021-12-06 2023-06-16 444株式会社 システムおよび方法

Also Published As

Publication number Publication date
JP6668658B2 (ja) 2020-03-18

Similar Documents

Publication Publication Date Title
US11593149B2 (en) Unified resource management for containers and virtual machines
CN106537338B (zh) 自扩展云
US10768923B2 (en) Release orchestration for performing pre release, version specific testing to validate application versions
US11321130B2 (en) Container orchestration in decentralized network computing environments
US9513938B2 (en) Virtual appliance integration with cloud management software
JP6819296B2 (ja) 仮想化管理・オーケストレーション装置、仮想化管理・オーケストレーション方法、および、プログラム
WO2017188387A1 (ja) ネットワーク機能仮想化管理オーケストレーション装置と方法とプログラム
KR101700313B1 (ko) 인스턴스 호스트 구성
JP7143417B2 (ja) コンピューティング・デバイス
US9846586B2 (en) Creating a virtual machine and cloud server
JP6668658B2 (ja) ジョブ管理方法、ジョブ管理装置及びプログラム
US9959157B1 (en) Computing instance migration
JP2005056391A (ja) コンピューティング環境の作業負荷を均衡させる方法およびシステム
US11281442B1 (en) Discovery and distribution of software applications between multiple operational environments
KR102524540B1 (ko) 멀티 클라우드 서비스 플랫폼 장치 및 방법
US10114677B2 (en) Method and system for workload recommendations on information handling systems
US11113186B1 (en) Testing and publishing of resource handlers in a cloud environment
US20160179570A1 (en) Parallel Computing Without Requiring Antecedent Code Deployment
JP6393612B2 (ja) システムのバックアップ装置及びバックアップ方法
US10705895B2 (en) Device based automated tool integration for lifecycle management platform
US10452371B2 (en) Automating enablement state inputs to workflows in z/OSMF
Harichane et al. KubeSC‐RTP: Smart scheduler for Kubernetes platform on CPU‐GPU heterogeneous systems
US9311124B2 (en) Integrated deployment of centrally modified software systems
US9628335B2 (en) Building and transporting centrally modified software systems
US20180150336A1 (en) Management system and control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180803

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190515

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190528

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190725

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191220

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200128

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200210

R150 Certificate of patent or registration of utility model

Ref document number: 6668658

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150