(57)【特許請求の範囲】
【請求項１】
複数のネットワーク装置と、前記複数のネットワーク装置に接続され、当該ネットワーク装置の設定を行うためのコマンドの投入処理を行うサービスオーダー装置と、で構成されるサービスオーダーシステムであって、
前記サービスオーダー装置は、
リソースが互いに独立して割り当てられた複数の物理サーバ部と、前記物理サーバ部を管理する物理サーバ管理部とを備え、前記物理サーバ部は、前記物理サーバ部上に仮想的に設けられると共に前記リソースの一部が割り当てられて稼働し、前記ネットワーク装置に対して前記コマンドの投入処理を行う仮想マシン部を有しており、
前記物理サーバ管理部は、
前記ネットワーク装置の識別情報と当該ネットワーク装置に対して前記コマンドの投入処理を行う前記仮想マシン部の識別情報とを対応付けた競合制御用情報、
前記仮想マシン部と前記仮想マシン部に割り当てられたリソースの使用率の上限を示す仮想マシンリソース上限閾値とを対応付けた仮想マシン状態管理情報、及び
前記物理サーバ部と前記物理サーバ部に割り当てられたリソースの使用率の上限を示す物理サーバリソース上限閾値とを対応付けた物理サーバ状態管理情報が格納される物理サーバ管理用記憶部と、
投入処理を行う前記コマンドを特定するＳＯ(Service Order)データを外部装置から受信し、前記競合制御用情報を参照して前記ＳＯデータを対象の前記仮想マシン部に振り分ける競合制御部と、
前記仮想マシン部に割り当てられたリソースの使用率が前記仮想マシン状態管理情報の前記仮想マシンリソース上限閾値を超えているか否かを監視する仮想マシン負荷監視部と、
前記物理サーバ部に割り当てられたリソースの使用率が前記物理サーバ状態管理情報の前記物理サーバリソース上限閾値を超えているか否かを監視する物理サーバ負荷監視部と、
前記仮想マシン負荷監視部が、前記仮想マシン部に割り当てられたリソースの使用率が前記仮想マシンリソース上限閾値を超えていると判定した場合に、当該仮想マシン部に対してリソースの増強を指示する仮想マシン負荷分散制御部と、
前記物理サーバ負荷監視部が、前記物理サーバ部に割り当てられたリソースの使用率が前記物理サーバリソース上限閾値を超えていると判定した場合に、当該物理サーバ部で稼働する仮想マシン部の一部に対して、他の物理サーバ部に移行することを指示する物理サーバ負荷分散制御部と、
を有することを特徴とするサービスオーダーシステム。
【請求項２】
前記リソースは、ＣＰＵ、メモリ、ＨＤＤ、及びネットワークカードの内、少なくとも何れか１つである、
ことを特徴とする請求項１に記載されたサービスオーダーシステム。
【請求項３】
複数のネットワーク装置と、前記複数のネットワーク装置に接続され、当該ネットワーク装置の設定を行うためのコマンドの投入処理を行うサービスオーダー装置と、で構成されるサービスオーダーシステムの前記サービスオーダー装置であって、
前記サービスオーダー装置は、
リソースが互いに独立して割り当てられた複数の物理サーバ部と、前記物理サーバ部を管理する物理サーバ管理部とを備え、前記物理サーバ部は、前記物理サーバ部上に仮想的に設けられると共に前記リソースの一部が割り当てられて稼働し、前記ネットワーク装置に対して前記コマンドの投入処理を行う仮想マシン部を有しており、
前記物理サーバ管理部は、
前記ネットワーク装置の識別情報と当該ネットワーク装置に対して前記コマンドの投入処理を行う前記仮想マシン部の識別情報とを対応付けた競合制御用情報、
前記仮想マシン部と前記仮想マシン部に割り当てられたリソースの使用率の上限を示す仮想マシンリソース上限閾値とを対応付けた仮想マシン状態管理情報、及び
前記物理サーバ部と前記物理サーバ部に割り当てられたリソースの使用率の上限を示す物理サーバリソース上限閾値とを対応付けた物理サーバ状態管理情報が格納される物理サーバ管理用記憶部と、
投入処理を行う前記コマンドを特定するＳＯ(Service Order)データを外部装置から受信し、前記競合制御用情報を参照して前記ＳＯデータを対象の前記仮想マシン部に振り分ける競合制御部と、
前記仮想マシン部に割り当てられたリソースの使用率が前記仮想マシン状態管理情報の前記仮想マシンリソース上限閾値を超えているか否かを監視する仮想マシン負荷監視部と、
前記物理サーバ部に割り当てられたリソースの使用率が前記物理サーバ状態管理情報の前記物理サーバリソース上限閾値を超えているか否かを監視する物理サーバ負荷監視部と、
前記仮想マシン負荷監視部が、前記仮想マシン部に割り当てられたリソースの使用率が前記仮想マシンリソース上限閾値を超えていると判定した場合に、当該仮想マシン部に対してリソースの増強を指示する仮想マシン負荷分散制御部と、
前記物理サーバ負荷監視部が、前記物理サーバ部に割り当てられたリソースの使用率が前記物理サーバリソース上限閾値を超えていると判定した場合に、当該物理サーバ部で稼働する仮想マシン部の一部に対して、他の物理サーバ部に移行することを指示する物理サーバ負荷分散制御部と、
を有することを特徴とするサービスオーダー装置。
【請求項４】
複数のネットワーク装置に接続され、前記ネットワーク装置の設定を行うためのコマンドの投入処理を行うサービスオーダー装置のサービスオーダー方法であって、
前記サービスオーダー装置は、
リソースが互いに独立して割り当てられた複数の物理サーバ部と、前記物理サーバ部を管理する物理サーバ管理部とを備え、前記物理サーバ部は、前記物理サーバ部上に仮想的に設けられると共に前記リソースの一部が割り当てられて稼働し、前記ネットワーク装置に対して前記コマンドの投入処理を行う仮想マシン部を有しており、
前記物理サーバ管理部は、
前記ネットワーク装置の識別情報と当該ネットワーク装置に対して前記コマンドの投入処理を行う前記仮想マシン部の識別情報とを対応付けた競合制御用情報、
前記仮想マシン部と前記仮想マシン部に割り当てられたリソースの使用率の上限を示す仮想マシンリソース上限閾値とを対応付けた仮想マシン状態管理情報、及び
前記物理サーバ部と前記物理サーバ部に割り当てられたリソースの使用率の上限を示す物理サーバリソース上限閾値とを対応付けた物理サーバ状態管理情報が格納される物理サーバ管理用記憶部を有し、
投入処理を行う前記コマンドを特定するＳＯ(Service Order)データを外部装置から受信し、前記競合制御用情報を参照して前記ＳＯデータを対象の前記仮想マシン部に振り分け、
前記仮想マシン部に割り当てられたリソースの使用率が前記仮想マシン状態管理情報の前記仮想マシンリソース上限閾値を超えているか否かを監視し、
前記物理サーバ部に割り当てられたリソースの使用率が前記物理サーバ状態管理情報の前記物理サーバリソース上限閾値を超えているか否かを監視し、
監視する前記仮想マシン部に割り当てられたリソースの使用率が前記仮想マシンリソース上限閾値を超えている場合に、当該仮想マシン部に対してリソースの増強を指示し、
監視する前記物理サーバ部に割り当てられたリソースの使用率が前記物理サーバリソース上限閾値を超えている場合に、当該物理サーバ部で稼働する仮想マシン部の一部に対して、他の物理サーバ部に移行することを指示する、
ことを特徴とするサービスオーダー方法。
【請求項５】
複数のネットワーク装置に接続されるサービスオーダー装置の物理サーバ部を管理する物理サーバ管理部としてのコンピュータに、請求項４に記載のサービスオーダー方法を実行させるためのサービスオーダープログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを構成するネットワーク装置(ＮＥ：Network Element)に対してコマンドの投入処理を行う、サービスオーダーシステム、サービスオーダー装置、サービスオーダー方法、及びサービスオーダープログラムに関する。
【背景技術】
【０００２】
インターネットが広く普及した今日では、ＶＰＮ(Virtual Private Network)サービス，広域ＬＡＮ(Local Area Network)サービスといった企業ユーザ向けサービスや、ＩＳＰ(Internet Service Provider)接続サービス，ＰＣＣ(ＰＣコミュニケータ)サービスといった個人ユーザ向けサービスなど、さまざまな通信サービスが提供されている。ここで、これらの通信サービスを実現するためには、通信サービスの申込(ＳＯ：Service Order)があった拠点に配設されるネットワーク装置（例えば、ルータ等）の設定を行う必要がある。以下では、通信サービスの申込(ＳＯ)により設定を行うネットワーク装置やそのネットワーク装置の設備情報などが示される情報を「ＳＯデータ」と呼ぶ。また、ネットワーク装置を設定する設定情報を「コマンド」と呼び、ネットワーク装置を設定する処理を「コマンドの投入処理」や「コマンド処理」と呼ぶ場合がある。
【０００３】
従来、通信サービスの申し込みに伴い、コマンドの投入処理(コマンド処理)を行うシステムとして、サービスオーダーシステム(ＳＯシステム)が知られている。ＳＯシステムは、ＳＯデータを顧客管理システム(上位システム)から受け取り、受け取ったＳＯデータを参照し、通信サービスの対象となるネットワーク装置に対してコマンドの投入処理を行う。以下では、コマンドの投入対象となるネットワーク装置を「投入対象のネットワーク装置」と呼ぶ場合がある。
【０００４】
ここで、ＳＯシステムでは、複数のコマンドの投入処理(コマンド処理)が同一の投入対象のネットワーク装置に対して要求された場合に、これらのコマンド処理を同時に実行しない仕組み(競合制御機能)が必要となる。それは、コマンド処理に失敗した場合に、ＳＯシステム内で複雑な切り戻し処理を発生させないためである。
【０００５】
競合制御機能を備えたＳＯシステムの構成例を図１１に示す。ＳＯシステム(サービスオーダーシステム)９０１は、特定のネットワーク装置９０３のコマンド処理を担当するＳＯ装置(サービスオーダー装置)９０５が複数とならないように、ネットワーク装置９０３をエリア単位(エリアＡ，エリアＢ，・・・)に分割する構成が採用される。例えば、エリアＡを担当するＳＯ装置９０５は、エリアＡに属するネットワーク装置９０３のコマンド処理を行うが、エリアＢに属するネットワーク装置９０３のコマンド処理を行わない。
【０００６】
また、ＳＯシステム９０１が処理を行うコマンドは、膨大な数に上る。その要因として、通信サービスが多様化していることや通信サービスの加入者が増大していることなどが挙げられる。それに伴い、ＳＯシステム９０１では、膨大な数のコマンドを特定のネットワーク装置９０３に対して迅速に投入し、申し込みがあった通信サービスに対応するようにネットワーク装置９０３の設定を行うことが求められる。従来、ＳＯシステム９０１のＳＯ装置９０５において、効率よく平等にコマンドを投入する技術がある（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１０−２６７１６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１に記載された技術は、ＳＯ装置９０５単体として効率よく平等にコマンドを投入する機能が具備されているが、ＳＯシステム９０１あたりのハードウェア性能は有限であるため、コマンドの投入量の増加によってＳＯシステム９０１の性能要件を超える場合には、特許文献１に記載された技術では対応することができないことが想定される。例えば、ＳＯデータの一時的な増加に伴いＳＯ装置９０５の負荷が性能要件を超える場合や、通信サービス加入者の増加に伴いエリア内のＳＯ装置９０５の負荷が性能要件を超える場合である。
【０００９】
前者の場合、顧客管理システム９０４に対してＳＯデータの投入規制をかける等の工夫によって、ＳＯ装置９０５の性能要件を超えない範囲での処理を行うことが想定される。これにより、ＳＯ装置９０５のレスポンス低下を回避することは可能であるが、大量のＳＯデータの処理完了までに時間がかかるという問題がある。
また、後者の場合、エリアをさらに複数に分割し、ＳＯ装置９０５が管理するネットワーク装置９０３を再配備することで、ＳＯ装置９０５の性能要件を超えないようにする必要がある。すなわち、新たにＳＯ装置９０５を増設し、コマンドの投入処理が増加するＳＯ装置９０５が担当しているネットワーク装置９０３の一部を新たなＳＯ装置９０５の担当とする。ここで、ＳＯ装置９０５は、運用系サーバ１台と予備系サーバ１台とを最小構成の１セットとする構成であり、１セットあたりに定める性能条件を超える場合に、運用系サーバと予備系サーバとの１セットを１単位としてＳＯ装置９０５の増設を行う。これにより、ＳＯ装置９０５のレスポンス低下を回避することは可能であるが、ＳＯ装置９０５が保持するネットワーク装置９０３の情報を、移行先である新たなＳＯ装置９０５に引き継ぐ収納替え作業による業務的負担が大きいという問題がある。
【００１０】
つまり、負荷の増大によりＳＯシステム９０１の性能要件を超えそうになった場合に、性能を動的に向上させて、一時的な負荷増大に対しては投入規制の時間をできるだけ短く、またエリア内の負荷増大に対しては収納替え作業による業務負担を軽減する仕組みが必要となる。
【００１１】
本発明は、前記問題に鑑みてなされたものであり、競合制御機能が実現されると共に、コマンド処理の増加に対する拡張性を持たせることができる、サービスオーダーシステム、サービスオーダー装置、サービスオーダー方法、及びサービスオーダープログラムを提供することを課題とする。
【課題を解決するための手段】
【００１２】
前記課題を解決するため、本発明に係るサービスオーダーシステムは、複数のネットワーク装置と、前記複数のネットワーク装置に接続され、当該ネットワーク装置の設定を行うためのコマンドの投入処理を行うサービスオーダー装置とで構成されるサービスオーダーシステムであって、前記サービスオーダー装置が、リソースが互いに独立して割り当てられた複数の物理サーバ部と、前記物理サーバ部を管理する物理サーバ管理部とを備え、前記物理サーバ部が、前記物理サーバ部上に仮想的に設けられると共に前記リソースの一部が割り当てられて稼働し、前記ネットワーク装置に対して前記コマンドの投入処理を行う仮想マシン部を有しており、前記物理サーバ管理部が、前記ネットワーク装置の識別情報と当該ネットワーク装置に対して前記コマンドの投入処理を行う前記仮想マシン部の識別情報とを対応付けた競合制御用情報、前記仮想マシン部と前記仮想マシン部に割り当てられたリソースの使用率の上限を示す仮想マシンリソース上限閾値とを対応付けた仮想マシン状態管理情報、及び前記物理サーバ部と前記物理サーバ部に割り当てられたリソースの使用率の上限を示す物理サーバリソース上限閾値とを対応付けた物理サーバ状態管理情報が格納される物理サーバ管理用記憶部と、投入処理を行う前記コマンドを特定するＳＯ(Service Order)データを外部装置から受信し、前記競合制御用情報を参照して前記ＳＯデータを対象の前記仮想マシン部に振り分ける競合制御部と、前記仮想マシン部に割り当てられたリソースの使用率が前記仮想マシン状態管理情報の前記仮想マシンリソース上限閾値を超えているか否かを監視する仮想マシン負荷監視部と、前記物理サーバ部に割り当てられたリソースの使用率が前記物理サーバ状態管理情報の前記物理サーバリソース上限閾値を超えているか否かを監視する物理サーバ負荷監視部と、前記仮想マシン負荷監視部が、前記仮想マシン部に割り当てられたリソースの使用率が前記仮想マシンリソース上限閾値を超えていると判定した場合に、当該仮想マシン部に対してリソースの増強を指示する仮想マシン負荷分散制御部と、前記物理サーバ負荷監視部が、前記物理サーバ部に割り当てられたリソースの使用率が前記物理サーバリソース上限閾値を超えていると判定した場合に、当該物理サーバ部で稼働する仮想マシン部の一部に対して、他の物理サーバ部に移行することを指示する物理サーバ負荷分散制御部とを有することを特徴とする。
ここで、前記物理サーバリソースは、ＣＰＵ、メモリ、ＨＤＤ、及びネットワークカードの内、少なくとも何れか１つであることが好ましい。
【００１３】
このようにすることで、本発明に係るサービスオーダーシステムは、競合制御部がＳＯデータを仮想マシン部単位に振り分けを行う。そして、特定の仮想マシン部の負荷が増大するとリソースの増強を行い、また、仮想マシン部が稼働する物理サーバ部の負荷が増大すると仮想マシン部の一部を他の物理サーバ部に移行する。したがって、本発明に係るサービスオーダーシステムは、競合制御機能が実現されると共に、コマンド処理の増加に対する拡張性を持たせることができる。
【発明の効果】
【００１４】
本発明に係るサービスオーダーシステム、サービスオーダー装置、サービスオーダー方法、及びサービスオーダープログラムによれば、競合制御機能が実現されると共に、コマンド処理の増加に対する拡張性を持たせることができる。
【図面の簡単な説明】
【００１５】
【図１】実施形態に係るＳＯシステムの構成図である。
【図２】実施形態に係るＳＯ装置の物理サーバ部の構成図である。
【図３】実施形態に係るＳＯ装置の物理サーバ管理部の構成図である。
【図４】実施形態に係るＳＯ装置の構成の具体例を示す図である。
【図５】実施形態に係るＳＯ装置におけるＳＯデータの振り分け処理を示すシーケンス図である。
【図６】実施形態に係るＳＯ装置における仮想マシン部及び物理サーバ部の負荷監視処理を示すシーケンス図である。
【図７】実施形態に係るＳＯ装置における仮想マシン部の負荷が増大した場合のリソース増強処理（スケールアップ処理）を示すシーケンス図である。
【図８】実施形態に係るＳＯ装置における物理サーバ部の負荷が増大した場合の仮想マシン部の移行処理(スケールアウト処理)を示すシーケンス図である。
【図９】実施形態に係るＳＯ装置が実行するスケールアウト処理における移行先の物理サーバ部を決定するためのフローチャートである。
【図１０】実施形態に係るＳＯ装置が実行する仮想マシン部のリソース増強処理（スケールアップ処理）や仮想マシン部の移行処理(スケールアウト処理)が完了した様子を説明するための図である。
【図１１】従来例としてのＳＯシステムの構成図である。
【発明を実施するための形態】
【００１６】
［発明の概要］
本発明は、競合制御機能が実現されると共に、コマンド処理の増加に対する拡張性を持たせることができるサービスオーダーシステムを実現するものである。
具体的には、ネットワーク装置とネットワーク装置に対してコマンドを投入する仮想マシン部との関係を「多数：１」又は「１：１」(「１：多数」又は「多数：多数」としない)とし、ＳＯデータを仮想マシン部単位に振り分けを行うことで競合制御機能を確保する。
また、ＳＯデータの一時的な増加により特定の仮想マシン部の負荷が増加した場合には、その仮想マシン部のリソースを増強(スケールアップ)し、一方、複数の仮想マシン部が稼働する特定の物理サーバ部の負荷が増大した場合には、一部の仮想マシン部を他の物理サーバ部に移行(スケールアウト)することで、コマンド処理の増加に対する拡張性を持たせる。
【００１７】
以下、図面を参照して、本発明の実施の形態につき詳細に説明する。
なお、各図は、本発明を十分に理解できる程度に、概略的に示してあるに過ぎない。よって、本発明は、図示例のみに限定されるものではない。また、各図において、共通する構成要素や同様な構成要素については、同一の符号を付し、それらの重複する説明を省略する。
【００１８】
［実施の形態］
以下、図１を参照して、実施形態に係るＳＯシステム(サービスオーダーシステム)１の構成について説明する。図１は、実施形態に係るＳＯシステム１の構成図である。
【００１９】
≪サービスオーダーシステムの構成≫
ＳＯシステム１は、ネットワーク２を構成する＃１〜＃Ｎ(Ｎは正の整数)のネットワーク装置３(図１では「＃１ネットワーク装置３」等のように記載)と、上位システムとしての顧客管理システム４と、ネットワーク装置３及び顧客管理システム４と通信可能に接続されるＳＯ装置(サービスオーダー装置)５とで構成される。次に、ＳＯシステム１を構成する各装置について説明する。
【００２０】
＜ネットワーク装置＞
ネットワーク装置３は、自身が受信したデータを他のネットワーク装置３に転送することで拠点間のデータ通信を実現する。ネットワーク装置３は、例えば、ルータである。ネットワーク装置３の設定は、コマンドを投入することにより行う。ネットワーク装置３に投入するコマンドは、例えば、Cisco(登録商標)ルータのコマンドで、Configurationモードで設定する「password」や「ip address」等である。
コマンドは、同じネットワーク装置３に同時(または、ほぼ同時)に複数投入した場合、相互の干渉するおそれがあるため、排他的に実行する必要がある。つまり、ネットワーク装置３において、１つのコマンドの実行が完了してから、次のコマンドを実行する必要がある。また、このコマンドは、他のコマンドと順番が前後してしまうと、想定した実行結果と異なる結果となる場合がある。そのため、コマンドを投入する際には、投入順序を守る必要がある。
【００２１】
＜顧客管理システム＞
外部装置としての顧客管理システム４は、申し込みがあった通信サービスに基づいて、設定を行うネットワーク装置３を識別するネットワーク装置識別情報(例えば、アドレス情報)やそのネットワーク装置３の設備情報などが示されるＳＯデータをＳＯ装置５に出力する。１つの通信サービスの申し込みにより、複数のネットワーク装置３の設定を行う場合には、顧客管理システム４は、設定対象数分のＳＯデータをＳＯデータ群として出力する。
顧客管理システム４は、例えば、ＳＯ装置５に対してＳＯデータを出力するコンピュータとして実現される。顧客管理システム４は、ＦＴＰ(File Transfer Protocol)やＳＳＨ(Secure Shell)などのプロトコルを用いてＳＯデータの送受信を行う。なお、顧客管理システム４は「外部装置」の一例である。
【００２２】
＜サービスオーダー装置＞
ＳＯ装置５は、顧客管理システム４から設定対象数分のＳＯデータ群を受信し、設定対象のネットワーク装置３に対してＳＯデータに基づくコマンドの投入処理を実行する。
ＳＯ装置５は、＃１〜＃Ｍ(Ｍは正の整数)の物理サーバ部１０(図１では「＃１物理サーバ部１０」等のように記載)と、物理サーバ部１０を管理する物理サーバ管理部５０とで構成される。ここで、＃１〜＃Ｍの物理サーバ部１０は、例えば、Ｍ個のブレードで構成されるブレードサーバであってもよいし、異なる場所に設置されるＭ個の独立したサーバが互いにネットワーク２を介して通信可能に接続される構成であってもよい。
【００２３】
＜物理サーバ部＞
図２を参照して、実施形態に係るＳＯ装置５の物理サーバ部１０の構成について説明する。図２は、実施形態に係るＳＯ装置５の物理サーバ部１０の構成図である。ここで、＃１〜＃Ｍの物理サーバ部１０の構成は、同様である。
【００２４】
物理サーバ部１０は、制御部２０と、記憶部３０と、通信部４０とで構成される。制御部２０は、複数のＣＰＵ(Central Processing Unit)で構成されるＣＰＵ群によるプログラム実行処理や、専用回路等により実現される。記憶部３０は、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ＨＤＤ（Hard Disk Drive）、フラッシュメモリ等の記憶媒体から構成される。通信部４０は、複数のネットワークカード等により実現される。以下では、制御部２０を実現するＣＰＵ等、記憶部３０を構成するメモリやＨＤＤ等、通信部４０を実現するネットワークカード等をリソースと呼ぶことにする。以下、各構成を説明する。
【００２５】
（制御部）
制御部２０は、＃ｎ〜＃(ｎ＋ｉ)の仮想マシン部２１(図２では「＃ｎ仮想マシン部２１」等のように記載)と、リソース増強処理部２４と、物理サーバリソース通知部２５と、仮想マシン移行処理部２６とで構成される。ここで仮想マシン部２１の＃(番号)は、ＳＯ装置５(図１参照)全体を通して一意の番号が付与される。例えば、＃１の物理サーバ部１０の制御部２０では、＃１〜＃３の仮想マシン部２１が稼働し、＃２の物理サーバ部１０の制御部２０では、＃４〜＃７の仮想マシン部２１が稼働する。
【００２６】
（仮想マシン部）
仮想マシン部２１は、ＳＯデータ処理部２２と、仮想マシンリソース通知部２３とで構成される。なお、図示を省略しているが、＃(ｎ＋ｉ)の仮想マシン部２１を含む全ての仮想マシン部２１は同様の構成である。
【００２７】
ＳＯデータ処理部２２は、特定のネットワーク装置３に対して、ＳＯデータに基づくコマンドの投入処理を実行する。
仮想マシンリソース通知部２３は、仮想マシン部２１がコマンド処理を実行するために確保されたリソースの内、仮想マシン部２１が実際に使用しているリソースの使用状況に関する情報(ＣＰＵ使用率やメモリ使用率など)を仮想マシン負荷監視部７３(後記する図３参照)に通知する。以下では、この情報を「仮想マシンリソース使用情報」と呼ぶ場合がある。通知した仮想マシンリソース使用情報は、特定の仮想マシン部２１が実行するコマンド処理の増加に伴い特定の仮想マシン部２１の負荷が増大した場合に、リソースの増強(スケールアップ)を行うか否かの判定に用いられる。
【００２８】
（リソース増強処理部）
リソース増強処理部２４は、特定の仮想マシン部２１が実行するコマンド処理の増加に伴い特定の仮想マシン部２１の負荷が増大した場合に、リソースの増強(スケールアップ)を行う。詳細は後記する。
【００２９】
（物理サーバリソース通知部）
物理サーバリソース通知部２５は、物理サーバ部１０が備えるリソースの内、実際に使用するリソース(＃ｎ〜＃(ｎ＋ｉ)の仮想マシン部２１が実際に使用しているリソースを含む)の使用状況に関する情報(ＣＰＵ使用率やメモリ使用率など)を物理サーバ負荷監視部７４(後記する図３参照)に通知する。以下では、この情報を「物理サーバリソース使用情報」と呼ぶ場合がある。通知した物理サーバリソース使用情報は、不特定多数の仮想マシン部２１が実行するコマンド処理の増加に伴い物理サーバ部１０の負荷が増大した場合に、一部の仮想マシン部２１の移行(スケールアウト)を行うか否かの判定に用いられる。
【００３０】
（仮想マシン移行処理部）
仮想マシン移行処理部２６は、不特定多数の仮想マシン部２１が実行するコマンド処理の増加に伴い物理サーバ部１０の負荷が増大した場合に、一部の仮想マシン部２１の移行(スケールアウト)を行う。詳細は後記する。
【００３１】
（記憶部）
記憶部３０には、＃ｎ〜＃(ｎ＋ｉ)の仮想マシン用領域３１が確保される。仮想マシン用領域３１は、仮想マシン部２１を稼働し、コマンド処理を実行するために使用可能な領域(Byte)である。ここで、仮想マシン用領域３１の＃(番号)は、仮想マシン部２１の＃(番号)に対応している。
【００３２】
（通信部）
通信部４０には、＃ｎ〜＃(ｎ＋ｉ)の仮想マシン用部分４１が確保される。仮想マシン用部分４１は、コマンド処理を実行するために使用可能なネットワークカード(数)や通信帯域(bit/sec)である。ここで、仮想マシン用部分４１の＃(番号)は、仮想マシン部２１の＃(番号)に対応している。
【００３３】
＜物理サーバ管理部＞
図３を参照して、実施形態に係るＳＯ装置５の物理サーバ管理部５０の構成について説明する。図３は、実施形態に係るＳＯ装置５の物理サーバ管理部５０の構成図である。物理サーバ管理部５０は、物理サーバ部１０と同一装置内に配設してもよいし、物理サーバ部１０が配設される装置と通信可能に接続される装置に配設してもよい。
物理サーバ管理部５０は、物理サーバ管理用記憶部６０と、物理サーバ管理用制御部７０とで構成される。
【００３４】
（物理サーバ管理用記憶部）
物理サーバ管理用記憶部６０は、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ＨＤＤ（Hard Disk Drive）、フラッシュメモリ等の記憶媒体から構成される。ここで、本実施形態では、物理サーバ管理用記憶部６０と物理サーバ部１０の記憶部３０(図２参照)とを別々の構成としているが、同一の装置として構成してもよい。
物理サーバ管理用記憶部６０には、競合制御用テーブル(競合制御用情報)６１と、仮想マシン状態管理テーブル(仮想マシン状態管理情報)６２と、物理サーバ状態管理テーブル(物理サーバ状態管理情報)６３とが格納される。
【００３５】
競合制御用テーブル(競合制御用情報)６１には、ネットワーク装置３を識別するネットワーク装置識別情報と、ネットワーク装置３のコマンド処理を一意に行う仮想マシン部２１を識別する仮想マシン識別情報とが対応付けて格納される。ここで、ネットワーク装置識別情報は、例えば、ネットワーク装置３のアドレス情報であり、仮想マシン識別情報は、例えば、仮想マシン部２１のアドレス情報である。
【００３６】
仮想マシン状態管理テーブル(仮想マシン状態管理情報)６２には、仮想マシン部２１を識別する仮想マシン識別情報と、仮想マシン部２１がコマンド処理を実行するために使用可能なリソース(ＣＰＵ、メモリ、ＨＤＤ、ネットワークカード)の上限閾値(％、数など)とが対応付けて格納される。以下では、仮想マシン部２１がコマンド処理を実行するために使用可能なリソースの上限閾値を「仮想マシンリソース上限閾値」と呼ぶ場合がある。仮想マシンリソース上限閾値は、仮想マシン部２１が安定して稼働できるように設定する。
【００３７】
物理サーバ状態管理テーブル(物理サーバ状態管理情報)６３には、物理サーバ部１０を識別する物理サーバ識別情報と、物理サーバ部１０が使用可能なリソース(ＣＰＵ、メモリ、ＨＤＤ、ネットワークカード)の上限閾値(％、数など)とが対応付けて格納される。以下では、物理サーバ部１０が使用可能なリソースの上限閾値を「物理サーバリソース上限閾値」と呼ぶ場合がある。物理サーバリソース上限閾値は、物理サーバ部１０が安定して稼働できるように設定する。
【００３８】
（物理サーバ管理用制御部）
物理サーバ管理用制御部７０は、ＣＰＵ（Central Processing Unit）によるプログラム実行処理や、専用回路等により実現される。ここで、本実施形態では、物理サーバ管理用制御部７０と物理サーバ部１０の制御部２０(図２参照)とを別々の構成としているが、同一の装置として構成してもよい。
物理サーバ管理用制御部７０は、競合制御部７１と、仮想マシン負荷監視部７３及び物理サーバ負荷監視部７４を管理する負荷監視部７２と、仮想マシン負荷分散制御部７６及び物理サーバ負荷分散制御部７７を管理する負荷分散制御部７５とで構成される。さらに、負荷監視部７２は、仮想マシン負荷監視部７３と、物理サーバ負荷監視部７４とで構成される。また、負荷分散制御部７５は、仮想マシン負荷分散制御部７６と、物理サーバ負荷分散制御部７７とで構成される。
【００３９】
競合制御部７１は、顧客管理システム４(図１参照)から受信したＳＯデータ群をネットワーク装置３単位に振り分ける処理を行う。具体的には、競合制御部７１は、顧客管理システム４から受信したＳＯデータに格納されるネットワーク装置３のアドレス情報を基にして、競合制御用テーブル６１を参照し、設定対象となるネットワーク装置３のコマンド処理を行う仮想マシン部２１のアドレス情報を取得する。そして、競合制御部７１は、取得したアドレス情報に示す仮想マシン部２１にＳＯデータを渡す。
【００４０】
仮想マシン負荷監視部７３は、特定のネットワーク装置３へのコマンド投入数が増大することによる特定の仮想マシン部２１の負荷の増大を監視する。具体的には、仮想マシン負荷監視部７３は、仮想マシン部２１の仮想マシンリソース通知部２３(図２参照)から仮想マシンリソース使用情報を定期的に取得し、取得した仮想マシンリソース使用情報が仮想マシン状態管理テーブル６２に格納される仮想マシンリソース上限閾値を超えているか否かを判定する。仮想マシンリソース上限閾値を超えていた場合に、仮想マシン負荷分散制御部７６が処理を行う。
【００４１】
物理サーバ負荷監視部７４は、不特定多数のネットワーク装置３へのコマンド投入数が増大することによる特定の物理サーバ部１０の負荷の増大を監視する。具体的には、物理サーバ負荷監視部７４は、物理サーバリソース通知部２５(図２参照)から物理サーバリソース使用情報を定期的に取得し、取得した物理サーバリソース使用情報が物理サーバ状態管理テーブル６３に格納される物理サーバリソース上限閾値を超えているか否かを判定する。物理サーバリソース上限閾値を超えていた場合に、物理サーバ負荷分散制御部７７が処理を行う。
【００４２】
仮想マシン負荷分散制御部７６は、仮想マシンリソース使用情報が仮想マシンリソース上限閾値を超えていると判定された仮想マシン部２１のリソース増強(スケールアップ)を行う。具体的には、仮想マシン負荷分散制御部７６は、上限閾値を超えていると判定された仮想マシン部２１に割り当てたリソースの再計算を行い、リソース増強処理部２４(図２参照)に対して再計算したリソースの増強を要求する。なお、仮想マシン負荷分散制御部７６は、リソース増強を要求する場合、競合制御部７１に対してＳＯデータの投入規制を事前に要求する。これにより、上限閾値を超えていると判定された仮想マシン部２１は、リソースの再割当が実行される。
【００４３】
物理サーバ負荷分散制御部７７は、物理サーバリソース使用情報が物理サーバリソース上限閾値を超えていると判定された物理サーバ部１０で稼働する仮想マシン部２１の一部を他の物理サーバ部１０へ動的に移行する。具体的には、物理サーバ負荷分散制御部７７は、上限閾値を超えていると判定された物理サーバ部１０に配置されている仮想マシン部２１の内の一部を他の物理サーバ部１０に再配置するためのリソースの再計算を行い、仮想マシン移行処理部２６(図２参照)に対して再計算により移行対象となった仮想マシン部２１の移行処理を要求する。なお、物理サーバ負荷分散制御部７７は、移行処理を要求する場合、競合制御部７１に対してＳＯデータの投入規制を事前に要求する。これにより、移行対象の仮想マシン部２１が他の物理サーバ部１０に移行される。移行先の物理サーバ部１０の選択については、動作で詳細を説明する。
以上で、ＳＯシステム(サービスオーダーシステム)１の構成の説明を終了する。
【００４４】
≪サービスオーダーシステムの動作≫
図４は、図１に示すＳＯ装置５の具体例として、＃１〜＃４の物理サーバ部１０で構成されるＳＯ装置５を示す図である。以下では、図４を適宜参照し、実施形態に係るＳＯシステム１の動作概要について説明する。
＃１の物理サーバ部１０では、＃１のネットワーク装置３に対してコマンド処理を行う＃１の仮想マシン部２１と、＃２のネットワーク装置３に対してコマンド処理を行う＃２の仮想マシン部２１とが稼働している。また、＃２の物理サーバ部１０では、＃３のネットワーク装置３に対してコマンド処理を行う＃３の仮想マシン部２１と、＃４のネットワーク装置３に対してコマンド処理を行う＃４の仮想マシン部２１とが稼働している。＃３の物理サーバ部１０では、仮想マシン部２１が現段階では稼働していない。また、＃４の物理サーバ部１０では、＃１〜＃４の仮想マシン部２１が機器の故障等により稼働できない場合に稼働する予備系の仮想マシン部２１が、例えば、即時稼働できる状態で待機している。
【００４５】
＜ＳＯデータの振り分け処理＞
顧客管理システム４から受信したＳＯデータの振り分け処理について説明する。図５は、図４のＳＯ装置５のＳＯデータの振り分け処理を示すシーケンス図である。
【００４６】
最初に、顧客管理システム４からＳＯデータが送信され（ステップＳ１）、ＳＯ装置５の競合制御部７１が受信する。続いて、競合制御部７１は、受信したＳＯデータに含まれるネットワーク装置３のアドレス情報(識別情報)に基づき振り分け先の＃１〜＃４の仮想マシン部２１を指定し（ステップＳ２）、指定した仮想マシン部２１に対してＳＯデータを送信する（ステップＳ３）。仮想マシン部２１にＳＯデータが振り分けられると、仮想マシン部２１は、記憶部３０の仮想マシン用領域３１にＳＯデータを格納し、ＳＯデータを受け取ったことによる受取完了通知を競合制御部７１に対して送信する（ステップＳ４）。そして、競合制御部７１は、顧客管理システム４に対して受取完了通知を送信する（ステップＳ５）。
【００４７】
続いて、顧客管理システム４からＳＯデータ実行要求が送信され（ステップＳ６）、ＳＯ装置５の競合制御部７１が受信する。続いて、競合制御部７１は、受信したＳＯデータ実行要求に含まれるネットワーク装置３のアドレス情報(識別情報)に基づき振り分け先の＃１〜＃４の仮想マシン部２１を指定し（ステップＳ７）、指定した仮想マシン部２１に対してＳＯデータ実行要求を送信する（ステップＳ８）。仮想マシン部２１にＳＯデータ実行要求が送られると、仮想マシン部２１(ＳＯデータ処理部２２)は、ステップＳ３で送信されたＳＯデータを参照し（ステップＳ９）、ネットワーク装置３を設定する設定情報(コマンド)を特定し、＃１〜＃４のネットワーク装置３の内、投入対象のネットワーク装置３に対してコマンドの投入処理を実行する（ステップＳ１０）。また、コマンドの投入処理の実行を開始したことによる処理開始通知を競合制御部７１に対して送信する（ステップＳ１１）。そして、競合制御部７１は、顧客管理システム４に対して処理開始通知を送信する（ステップＳ１２）。
【００４８】
＜負荷監視処理＞
次に、仮想マシン部２１及び物理サーバ部１０の負荷監視処理について説明する。図６は、図４のＳＯ装置５において、＃１〜＃４の仮想マシン部２１及び＃１〜＃３の物理サーバ部１０の負荷監視処理を示すシーケンス図である。
【００４９】
最初に、オペレータから仮想マシン部２１及び物理サーバ部１０の監視実行の指示が入力されると（ステップＳ２１）、負荷監視部７２は、監視対象とする仮想マシン部２１及び物理サーバ部１０を指定する（ステップＳ２２）。ここでは、監視対象として、＃１〜＃４の仮想マシン部２１及び＃１〜＃２の物理サーバ部１０が指定される。続いて、負荷監視部７２は、＃１〜＃４の仮想マシン部２１(仮想マシンリソース通知部２３)及び＃１〜＃２の物理サーバリソース通知部２５に対して、負荷情報の要求（ステップＳ２３）を開始し、応答として＃１〜＃４の仮想マシン部２１及び＃１〜＃２の物理サーバリソース通知部２５は、負荷情報を送信する（ステップＳ２４）。ステップＳ２３の負荷情報の要求、及びそれに対するステップＳ２４の負荷情報の送信は、その後定期的に行われる。また、負荷監視部７２は、負荷監視処理を開始したことをオペレータに対して通知する（ステップＳ２５）。
【００５０】
＜リソース増強処理（スケールアップ処理）＞
次に、特定の仮想マシン部２１の負荷が増大したことによるリソース増強処理（スケールアップ処理）について説明する。図７は、図４のＳＯ装置５において、＃１の仮想マシン部２１の負荷が増大した場合におけるリソース増強処理（スケールアップ処理）を示すシーケンス図である。
【００５１】
ステップＳ２４(図６参照)で負荷監視部７２が＃１の仮想マシン部２１から受信した負荷情報(仮想マシンリソース使用情報)が閾値を超えていた場合を想定する。
負荷分散制御部７５(仮想マシン負荷分散制御部７６)は、＃１の仮想マシン部２１に割り当てたリソースの再計算を行う（ステップＳ４１）と共に、競合制御部７１に対してＳＯデータの投入規制を要求し（ステップＳ４２）、応答として、競合制御部７１から投入規制要求受取を受信する（ステップＳ４３）。
【００５２】
続いて、負荷分散制御部７５(仮想マシン負荷分散制御部７６)は、リソース増強処理部２４に対して、ステップＳ４１で再計算した＃１仮想マシン部２１に割り当てたリソースの増強要求を行い（ステップＳ４４）、リソース増強処理部２４は、＃１仮想マシン部２１のリソースの再割当を実行する（ステップＳ４５）。これにより、＃１の仮想マシン部２１のリソースが増強(スケールアップ)される。リソース増強処理部２４は、リソースの再割当の実行が終了したら、負荷分散制御部７５に対して処理結果通知を送信する（ステップＳ４６）。
続いて、負荷分散制御部７５は、競合制御部７１に対してＳＯデータの投入規制解除を要求し（ステップＳ４７）、応答として、競合制御部７１から投入規制解除要求受取を受信する（ステップＳ４８）。
【００５３】
＜仮想マシン部の移行処理(スケールアウト処理)＞
次に、特定の物理サーバ部１０の負荷が増大したことによる仮想マシン部２１の移行処理(スケールアウト)について説明する。図８は、図４のＳＯ装置５において、＃２の物理サーバ部１０の負荷が増大した場合における＃４の仮想マシン部２１の移行処理(スケールアウト処理)を示すシーケンス図である。
【００５４】
ステップＳ２４(図６参照)で負荷監視部７２が＃２の物理サーバリソース通知部２５から受信した負荷情報(物理サーバリソース使用情報)が閾値を超えていた場合を想定する。
負荷分散制御部７５(物理サーバ負荷分散制御部７７)は、＃２の物理サーバ部１０に配置されている＃３〜＃４の仮想マシン部２１のうちの一部を他の物理サーバ部１０に再配置するためのリソースの再計算を行う（ステップＳ６１）。ここでは、＃４の仮想マシン部２１を＃３の物理サーバ部１０に移行する再計算が行われたとする。また、負荷分散制御部７５は、競合制御部７１に対してＳＯデータの投入規制を要求し（ステップＳ６２）、応答として、競合制御部７１から投入規制要求受取を受信する（ステップＳ６３）。
【００５５】
続いて、負荷分散制御部７５は、仮想マシン移行処理部２６に対して、ステップＳ６１で再計算した移行処理の要求を行い（ステップＳ６４）、仮想マシン移行処理部２６は、＃２の物理サーバ部１０で稼働する＃４の仮想マシン部２１を＃３の物理サーバ部１０へ移行する処理を実行する（ステップＳ６５）。これにより、＃４の仮想マシン部２１が＃３の物理サーバ部１０に移行(スケールアウト)される。仮想マシン移行処理部２６は、移行処理が終了したら、負荷分散制御部７５に対して処理結果通知を送信する（ステップＳ６６）。
続いて、負荷分散制御部７５は、競合制御部７１に対してＳＯデータの投入規制解除を要求し（ステップＳ６７）、応答として、競合制御部７１から投入規制解除要求受取を受信する（ステップＳ６８）。
【００５６】
（スケールアウト処理における移行先の物理サーバ部の決定）
次に、図８のスケールアウト処理における移行先の物理サーバ部１０の決定(ステップＳ６１)について説明する。図９は、スケールアウト処理における移行先の物理サーバ部１０を決定するためのフローチャートである。なお、図９に示すフローチャートは、スケールアウト処理の例示であり、他の方法により移行先の物理サーバ部１０を決定することもできる。
ステップＳ２４で物理サーバリソース通知部２５から受信した負荷情報(物理サーバリソース使用情報)を入力データとする（ステップＳ４１０）。また、物理サーバ負荷分散制御部７７は、変数ＭＡＸに初期値(例えば「最小値」)を設定し、変数ＭＩＮに初期値(例えば「最大値」)を設定する。
【００５７】
次に、物理サーバ負荷分散制御部７７は、＃１〜＃Ｍの物理サーバ部１０の中から任意の１つの物理サーバ部１０(以下「第１の物理サーバ部１０」と呼ぶ)を選択し、ステップＳ４３０〜ステップＳ４８０の処理を行う。第１の物理サーバ部１０の処理が終了したら、他の「第２の物理サーバ部１０」、「第３の物理サーバ部１０」、・・・を残りの物理サーバ部１０の中から選択し、ステップＳ４３０〜ステップＳ４８０の処理を行う。つまり、ステップＳ４２０のループ処理は、物理サーバ部１０単位に繰り返し行う（ステップＳ４２０）。
【００５８】
次に、物理サーバ負荷分散制御部７７は、選択した１つの物理サーバ部１０が備えるリソースの中から任意の１つのリソース(以下、「第１のリソース」と呼ぶ)を選択し、ステップＳ４４０〜ステップＳ４６０の処理を行う。第１のリソースの処理が終了したら、他の「第２のリソース」、「第３のリソース」、・・・を選択し、ステップＳ４４０〜ステップＳ４６０の処理を行う。つまり、ステップＳ４３０のループ処理は、使用リソース単位に繰り返し行う（ステップＳ４３０）。ここでは、第１のリソースとしてＣＰＵが選択され、第２のリソースとしてメモリが選択されたとする。
【００５９】
次に、物理サーバ負荷分散制御部７７は、物理サーバリソース使用情報に含まれるリソースの使用率(ここでは、ＣＰＵ使用率)を変数Ｋに設定する（ステップＳ４４０）。次に、物理サーバ負荷分散制御部７７は、ステップＳ４４０で設定した変数Ｋと変数ＭＡＸを比較し(ステップＳ４５０)、変数Ｋが変数ＭＡＸよりも大きい場合(ステップＳ４５０“Ｙｅｓ”)に、変数ＭＡＸを変数Ｋに置き換える（ステップＳ４６０）。一方、変数Ｋが変数ＭＡＸよりも大きくない場合(ステップＳ４５０“Ｎｏ”)に、変数ＭＡＸを変数Ｋに置き換える処理は行わない。
【００６０】
次に、物理サーバ負荷分散制御部７７は、第２のリソースとしてメモリを選択し、ステップＳ４４０〜ステップＳ４６０の処理を行う。つまり、ステップＳ４３０のループ処理が終了した時点で、第１の物理サーバ部１０のリソースの内、負荷が最も高いリソースのリソース使用率（以下、「サーバ毎リソース使用率」と呼ぶ）が求められる。
【００６１】
次に、物理サーバ負荷分散制御部７７は、ステップＳ４２０で設定した変数ＭＡＸと変数ＭＩＮとを比較し(ステップＳ４７０)、変数ＭＡＸが変数ＭＩＮよりも小さい場合(ステップＳ４７０“Ｙｅｓ”)に、変数ＭＩＮを変数ＭＡＸに置き換える（ステップＳ４８０）。一方、変数ＭＡＸが変数ＭＩＮよりも小さくない場合(ステップＳ４７０“Ｎｏ”)に、変数ＭＩＮを変数ＭＡＸに置き換える処理は行わない。
【００６２】
次に、物理サーバ負荷分散制御部７７は、第２の物理サーバ部１０を選択し、ステップＳ４３０〜ステップＳ４８０の処理を行う。つまり、ステップＳ４２０のループ処理が終了した時点で、各々の物理サーバ部１０の中で、負荷が最も低いサーバ毎リソース使用率及び負荷が最も低いサーバ毎リソース使用率を有する物理サーバ部１０が求められる。そして、当該物理サーバ部１０が移行先として指定される。
【００６３】
仮想マシン部２１のリソース増強処理（スケールアップ処理）や仮想マシン部２１の移行処理(スケールアウト処理)が完了した様子を図１０に示す。
＃１の物理サーバ部１０で稼働している＃１の仮想マシン部２１のリソースが増強され、＃２の物理サーバ部１０で稼働していた＃４の仮想マシン部２１が＃３の物理サーバ部１０に移行されている。
以上で、ＳＯシステム(サービスオーダーシステム)１の動作の説明を終了する。
【００６４】
以上のように、実施形態に係るＳＯシステム(サービスオーダーシステム)１は、競合制御部７１がＳＯデータを仮想マシン部２１単位に振り分けを行う。そして、特定の仮想マシン部２１の負荷が増大するとリソースの増強を行い、また、仮想マシン部２１が稼働する物理サーバ部１０の負荷が増大すると仮想マシン部２１の一部を他の物理サーバ部１０に移行する。そのため、実施形態に係るＳＯシステム(サービスオーダーシステム)１は、競合制御機能が実現されると共に、コマンド処理の増加に対する拡張性を持たせることができる。以下では、実施形態に係るＳＯシステム(サービスオーダーシステム)１の効果を、拡張性、可溶性、経済性、実装容易性の観点からより詳細に説明する。
【００６５】
（拡張性）
拡張性が高いシステムとは、処理能力が不足している場合に、迅速にシステムを拡張可能なことである。加えて、構築初期から処理能力の高いシステムを用意する必要がなく、システム負荷に応じて経済的な構成を段階的に提供可能なことである。
この点、実施形態に係るＳＯシステム(サービスオーダーシステム)１は、ＳＯデータの一時的な増加により特定の仮想マシン部２１の負荷が増加した場合には、その仮想マシン部２１のリソースを増強(スケールアップ)し、一方、複数の仮想マシン部２１を搭載する特定の物理サーバ部１０の負荷が増大した場合には、一部の仮想マシン部２１を他の物理サーバ部１０に移行(スケールアウト)する。そのため、迅速なリソースの増設を実現できる。また、ＳＯシステム１の構築処理は、仮想マシン部２１に求められる性能要件は必ずしも高くないと考えられるため、必要最小限の物理サーバ部１０に必要な数の仮想マシン部２１を配置することでスモールスタートが可能となる。その後の加入者の増加に応じて、仮想マシン部２１や物理サーバ部１０を増設することで、動的な増設と経済的な構成を段階的に提供可能となる。したがって、拡張性は担保されていると言える。
【００６６】
（可用性）
可用性が高いシステムとは、故障自身の発生が少なく、加えて、故障時には迅速にシステムを修復可能なことである。
この点、実施形態に係るＳＯシステム(サービスオーダーシステム)１は、図４に示すように、仮想マシン部２１の現用系・予備系構成を組むため、従来と同様の可用性を担保できる。また、ＳＯシステム１の性能を迅速に向上するための動的スケールアップ処理や動的スケールアウト処理実行中にＳＯデータの投入異常を起こすことが懸念されるが、処理開始前にＳＯデータの投入規制処理(図７のステップＳ４２や図８のステップＳ６２)を盛り込む工夫によって可用性の担保が可能となる。
【００６７】
（保守性）
保守性の高いシステムとは、システムに問題が発生した場合に、影響箇所の特定を迅速に行えることである。
この点、実施形態に係るＳＯシステム(サービスオーダーシステム)１は、ネットワーク装置３と仮想マシン部２１との対応関係は、図３に示す競合用テーブル(競合用情報)により明示的であり、ＳＯシステム１で問題が発生したときの仮想マシン部２１の特定は容易に行える。一方、物理サーバ部１０の負荷状況に応じて特定の仮想マシン部２１の搭載先が変動することにより、ネットワーク装置３とそれを管理する仮想マシン部２１が搭載される物理サーバ部１０とが物理的に遠い場所に配置される状況も想定される。この点については、動的スケールアウト処理における移行先の物理サーバ部１０の決定において、ネットワーク装置３との位置関係(距離)を考慮することなどにより保守性の担保が可能となる。
【００６８】
(実装容易性)
実装容易性の高いシステムとは、システムを構築する開発コストなどが低いことである。
この点、アプリケーションレベルでＳＯデータの振り分け処理を行う競合制御部７１(図３参照)を新規に開発する必要がある。振り分けロジックとしては、設定対象となるネットワーク装置３の識別情報と、そのネットワーク装置３のコマンド処理を行う仮想マシン部２１との対応関係を競合用制御テーブル６１(図３参照)として保持し、その情報に基づき振り分ける機能で実現することから、市販のアプリケーションレベルのロードバランサと同等機能で実現可能である。このように、開発コストのインパクトは低いので、実装容易性は担保されていると言える。
【符号の説明】
【００６９】
１      ＳＯシステム（サービスオーダーシステム）
２      ネットワーク
３      ネットワーク装置
４      顧客管理システム（外部装置）
５      ＳＯ装置（サービスオーダー装置）
１０    物理サーバ部
２０    制御部
２１    仮想マシン部
２２    ＳＯデータ処理部
２３    仮想マシンリソース通知部
２４    リソース増強処理部
２５    物理サーバリソース通知部
２６    仮想マシン移行処理部
３０    記憶部
３１    仮想マシン用領域
４０    通信部
４１    仮想マシン用部分
５０    物理サーバ管理部
６０    物理サーバ管理用記憶部
６１    競合制御用テーブル（競合制御用情報）
６２    仮想マシン状態管理テーブル（仮想マシン状態管理情報）
６３    物理サーバ状態管理テーブル（物理サーバ状態管理情報）
７０    物理サーバ管理用制御部
７１    競合制御部
７２    負荷監視部
７３    仮想マシン負荷監視部
７４    物理サーバ負荷監視部
７５    負荷分散制御部
７６    仮想マシン負荷分散制御部
７７    物理サーバ負荷分散制御部
【図１】
0005702747.tif 000002
【図２】
0005702747.tif 000003
【図３】
0005702747.tif 000004
【図４】
0005702747.tif 000005
【図５】
0005702747.tif 000006
【図６】
0005702747.tif 000007
【図７】
0005702747.tif 000008
【図８】
0005702747.tif 000009
【図９】
0005702747.tif 000010
【図１０】
0005702747.tif 000011
【図１１】
0005702747.tif 000012