JP4519098B2 - 計算機の管理方法、計算機システム、及び管理プログラム - Google Patents

計算機の管理方法、計算機システム、及び管理プログラム Download PDF

Info

Publication number
JP4519098B2
JP4519098B2 JP2006093401A JP2006093401A JP4519098B2 JP 4519098 B2 JP4519098 B2 JP 4519098B2 JP 2006093401 A JP2006093401 A JP 2006093401A JP 2006093401 A JP2006093401 A JP 2006093401A JP 4519098 B2 JP4519098 B2 JP 4519098B2
Authority
JP
Japan
Prior art keywords
processing performance
virtual
physical
computer
server
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.)
Expired - Fee Related
Application number
JP2006093401A
Other languages
English (en)
Other versions
JP2007272263A (ja
Inventor
良史 高本
隆夫 中島
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2006093401A priority Critical patent/JP4519098B2/ja
Priority to US11/495,037 priority patent/US20070233838A1/en
Publication of JP2007272263A publication Critical patent/JP2007272263A/ja
Application granted granted Critical
Publication of JP4519098B2 publication Critical patent/JP4519098B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1031Controlling of the operation of servers by a load balancer, e.g. adding or removing servers that serve requests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、計算機の管理方法に関し、特に複数の計算機のワークロードの管理方法に関する。
企業の計算機システム及び企業のデータセンタにおいて、サーバの保有台数が増大している。これに伴って、サーバの運用管理コストが増大している。
この問題を解決するため、サーバを仮想化する技術が知られている。サーバを仮想化する技術は、複数の仮想サーバが単一の物理サーバで稼働できる技術である。具体的には、物理サーバに備わるプロセッサ(CPU)及びメモリ等のリソースが分割され、分割された物理サーバのリソースが、それぞれ複数の仮想サーバに割り当てられる。そして、単一の物理サーバで複数の仮想サーバが同時に稼動する。
今日、CPUの処理性能が向上したこと及びメモリ等のリソースのコストが低下したことによって、サーバを仮想化する技術に関する需要が増大している。
また、サーバを仮想化する技術は、複数の仮想サーバが単一の物理サーバで稼働できるというメリットの他に、複数の仮想サーバでワークロード管理することによって、物理サーバのリソースをより有効に利用できる。
ここで、ワークロード管理とは、物理サーバの負荷等の状況に応じて、仮想サーバに割り当てられる物理サーバのリソースの量を変更する。例えば、ある仮想サーバの負荷が高くなった場合に、同じ物理サーバで稼働する負荷の低い仮想サーバに割り当てられている物理サーバのリソースを負荷の高い仮想サーバに割り当てる。これによって、物理サーバのリソースを有効に利用できる。
従来、このワークロード管理は、単一の物理サーバで稼動する仮想サーバ間で実行されていた(特許文献1、特許文献2及び特許文献3参照)。
特開2004−334853号公報 特開2004−252988号公報 特開2003−157177号公報
今日、複数の物理サーバにおいて複数の仮想サーバが稼働する環境では、各仮想サーバが、独立して全く異なる業務を処理する場合は少ない。例えば、単一の業務を処理する業務システムは、ウェブサーバ群、アプリケーションサーバ群、及びデータベースサーバ群等の複数の仮想サーバから構成される。この場合に、単一の業務システムを構成する複数の仮想サーバは、複数の物理サーバに分散して配置される。また、複数の業務システムが、複数の物理サーバに、混在する場合も考えられる。
従来のワークロード管理では、複数の物理サーバが設置されたシステムの環境において、複数の仮想サーバのワークロードを管理することは困難である。
すなわち、業務システムを構成する複数の仮想サーバが、複数の物理サーバに分散して配置される場合には、従来のワークロード管理では、管理者は、業務システムを構成する仮想サーバと物理サーバとの対応及び各物理サーバのCPUの処理性能を考慮して、各物理サーバのワークロードを管理しなければならない。従って、仮想サーバへの物理サーバのリソースの割当量を頻繁に変更することは、困難であった。
本発明の課題は、単一又は複数の業務システムを構成する複数の仮想サーバが複数の物理サーバに分散して配置された環境において、管理者の仮想サーバのワークロード管理を容易にすることである。
本発明の代表的な一形態によると、演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースと、を備える複数の物理計算機と、前記物理計算機で稼動する複数の仮想計算機と、前記インタフェースを備える前記物理計算機にネットワークを介して接続され、演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースと、を備える管理計算機と、を備える計算機システムにおける計算機の管理方法であって、前記管理計算機は、前記物理計算機と当該物理計算機で稼動する仮想計算機との対応と、前記物理計算機に備わるプロセッサの処理性能値を含むリソース情報とを管理する第1の情報と、前記複数の物理計算機をグループ化したサーバグループと、前記サーバグループに属する物理計算機で稼動する仮想計算機のうち同じ業務を処理する前記仮想計算機をグループ化した複数の業務システムと、前記業務システムに属する複数の仮想計算機のうち同じ機能を提供する仮想計算機をグループ化した機能グループと、前記サーバグループに属するすべての物理計算機に備わるプロセッサの処理性能を当該サーバグループに属する各業務システムに割り当てる割合を示す業務システム割当率と、前記業務システムに割り当てられた前記処理性能を当該業務システムに属する各機能グループに割り当てる割合を示す機能グループ割当率とを管理する第2の情報と、を保持し、前記複数の物理計算機に備わるプロセッサの処理性能を前記仮想計算機に割り当てる場合の前記管理方法は、前記サーバグループに含まれる前記業務システムに属する前記仮想計算機を、前記第2の情報を参照して検索する第1のステップと、前記第1のステップで検索された前記仮想計算機が稼動する物理計算機を、前記第1の情報を参照して検索する第2のステップと、前記第2のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を、前記第1の情報のリソース情報を参照して検索する第3のステップと、前記第3のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を合計して、前記サーバグループに属するすべての前記物理計算機に備わるプロセッサの処理性能値を示す全体処理性能値を算出する第4のステップと、前記サーバグループに含まれる各業務システムに割り当てられる処理性能値を示す業務システム処理性能値を、前記第4のステップで算出された前記全体処理性能値と前記第2の情報に含まれる前記業務システム割当率とに基づいて算出する第5のステップと、前記各業務システムに含まれる各機能グループに割り当てられる処理性能値を示す機能グループ処理性能値を、前記第5のステップで算出された前記業務システム処理性能値と前記第2の情報に含まれる前記機能グループ割当率とに基づいて算出する第6のステップと、前記業務システムに属する前記仮想計算機に、前記第6のステップで算出された前記機能グループ処理性能値に基づいて、前記サーバグループに属する前記物理計算機の前記処理性能を割り当てる第7のステップと、を含むことを特徴とする。
本発明の一形態によると、複数の仮想サーバをグループ化した単位で物理サーバの処理性能を仮想サーバに割り当てられるので、管理者にとってワークロード管理が容易となる。
(第1の実施の形態)
図1は、本発明の第1の実施の形態の計算機システムの構成を示す図である。
本実施の形態の計算機システムは、管理サーバ101と、物理サーバ111と、ロードバランサ112と、クライアント端末113と、を備える。
管理サーバ101、物理サーバ111、及びロードバランサ112は、ネットワークスイッチ108によってネットワーク206を介して、接続される。さらに、クライアント端末113は、ロードバランサ112を介して、ネットワークスイッチ108に接続される。
本実施の形態の制御の中心は、管理サーバ101である。管理サーバ101は、各種プログラムを実行するCPUと、メモリとを備える。また、管理サーバ101は、図示しない表示装置とキーボードとから構成されるコンソールを備える。なお、管理サーバ101が、コンソールを備えなくとも、管理サーバ101にネットワークを介して接続された計算機が、コンソールを備えてもよい。管理サーバ101は、ワークロード管理プログラム102と、ワークロード設定プログラム104と、履歴管理プログラム105と、サーバ構成テーブル103と、グループ定義テーブル107とを格納する。
管理サーバ101は、物理サーバ111と、サーバ仮想化プログラム110と、仮想サーバ109と、ロードバランサ112と、を制御する。
サーバ仮想化プログラムラム110によって、一つの物理サーバ111に複数の仮想サーバ109が構築される。なお、サーバ仮想化プログラム110は、例えば、ハイパバイザ又はオペレーティングシステムで動作する仮想サーバ109を構築するアプリケーションソフトウェアであってもよい。
ロードバランサ112は、クライアント端末113によって送信されたリクエストを受信すると、複数の仮想サーバ109にリクエストを分散させる。
ワークロード管理プログラム102は、複数の仮想サーバ109に対して、物理サーバ111のCPU202等のリソースを割り当てる割当量(ワークロード)を決定する。ワークロード設定プログラム104は、ワークロード管理プログラム102によって決定された割当量に従って、サーバ仮想化プログラム110に、実際に複数の仮想サーバ109に物理サーバ111のリソースを割り当てるよう指示することによって、ワークロード管理する。サーバ構成テーブル103は、図7で後述するように、物理サーバ111と仮想サーバ109との対応を管理する。また、グループ定義テーブル107は、図8で後述するように、複数の仮想サーバ109に対する割当量をグループ単位で管理する。
図2は、本発明の第1の実施の形態の物理サーバ111のブロック図である。
物理サーバ111は、メモリ201と、CPU(Central Processing Unit)202と、FCA(Fibre Channel Adapter)203と、ネットワークI/F(Interface)204と、BMC(Baseboard Management Controller)205とを備える。
メモリ201、FCA203及びネットワークI/F204は、CPU202に接続される。
メモリ201には、サーバ仮想化プログラム110が格納される。
物理サーバ111は、ネットワークI/F204によって、ネットワーク206に接続される。また、BMC205もネットワーク206に接続される。FCA203は、物理サーバ111で実行されるプログラムを格納するストレージ装置に接続される。ネットワークI/F204は、物理サーバ111上で実行されるプログラムと外部の装置との通信のためのインタフェースである。
また、BMC205は、主にCPU202及びメモリ201等の物理サーバ111のハードウェアの状態を管理する。例えば、BMC205は、CPU202の障害を検出すると、CPU202に障害が発生したことを、ネットワーク206を介して他の装置に通知する。
物理サーバ111が起動すると、サーバ仮想化プログラム110が起動する。そして、サーバ仮想化プログラム110は、複数の仮想サーバ109を構築する。
具体的には、サーバ仮想化プログラム110は、物理サーバ111のCPU202等のリソースを仮想サーバ109に分割して割り当てることによって、物理サーバ111に複数の仮想サーバ109を構築する。構築された各仮想サーバ109は、OS(Operating System)207を稼働できる。
また、サーバ仮想化プログラム110は、制御I/Fプログラム208と図3で後述するCPU割当変更プログラム302を含む。制御I/Fプログラム208とCPU割当変更プログラム302は、サーバ仮想化プログラム110のサブプログラムである。
制御I/Fプログラム208は、仮想サーバ109を構築したり、物理サーバ111のリソースの仮想サーバ109への割当量を設定するユーザインタフェースとして機能するプログラムである。CPU割当変更プログラム302は、実際に、仮想サーバ109に対して、物理サーバ111のリソースを割り当てる。
図3は、本発明の第1の実施の形態のワークロード管理を示す図である。
CPU割当率コマンド301は、制御I/Fプログラム208を介してサーバ仮想化プログラム110に入力される。
CPU割当率設定コマンド301は、各仮想サーバ109の割当率を含み、仮想サーバ109の割当率をCPU割当率設定コマンド301の割当率に変更させるコマンドである。
サーバ仮想化プログラム110は、CPU割当変更プログラム302に、CPU割当率コマンド301に従って、各仮想サーバ109へのCPU202の割当量を変更するように指示する。指示を受けたCPU割当変更プログラム302は、CPU割当率設定コマンド301に従って、仮想サーバ109のCPU202の割当量を変化させる。
サーバ仮想化プログラム110は、管理者によって指定されたCPU割当率設定コマンド301に従って、各仮想サーバ109への物理サーバ111のCPU202の割当量を割合によって変更する指示することができる。ここで、割合とは、物理サーバ111のCPU202の処理性能を100%とした場合に、各仮想サーバ109に割り当てられるCPU202の割当量を百分率で示したものである。
これによって、例えば、特定の仮想サーバ109の負荷が高い場合には、負荷が低い仮想サーバ109のCPU202の割当量を負荷が高い仮想サーバ109に割り当てる。従って、物理サーバ111のCPU202を有効に使用することができる。
図4は、本発明の第1の実施の形態の仮想サーバ109のグループ管理を示す図である。
複数の物理サーバ111で稼働する仮想サーバ109によって、グループは構成される。これによって、管理者は、グループ毎に割当率を指示できる。ワークロード設定プログラム104が、管理者によって指示された割当率に基づいて、各仮想サーバ109に割り当てられるCPU202の割当量を自動的に決定する。
また、サーバ仮想化プログラム110が稼働する物理サーバ111をグループ化し、サーバグループを構成する。
仮想サーバ109のグループの例として、仮想サーバ109が提供する業務毎に、仮想サーバ109をグループ化する方法がある。例えば、システムグループ1は業務Aを提供し、システムグループ2は業務Bを提供し、及びシステムグループ3は業務Cを提供する。
このように、業務毎にグループ化するのは、管理者が単一の業務を提供する複数の仮想サーバ109が複数の物理サーバ111に分散して配置される場合のグループ管理を容易にするためである。
単一の業務を提供する複数の仮想サーバ109が複数の物理サーバ111に分散して配置される場合には、仮想サーバ109へのCPU202の割当量を単一の物理サーバ111毎に設定する方法では、管理者は、業務システムを構成する仮想サーバ109と物理サーバ111との対応、及び各物理サーバ111のCPU202の処理性能を考慮して、物理サーバ111毎に、仮想サーバ109への割当量を設定しなければならない。
本実施の形態によると、例えば仮想サーバ109が提供する業務毎に仮想サーバ109をグループ化するので、管理者は、物理サーバ111のCPU202の仮想サーバ109への割当量をグループ毎に指示できる。これによって、管理者にとって、単一の業務を提供する複数の仮想サーバ109が複数の物理サーバ111に分散して配置される場合においても、仮想サーバ109の割当量を設定することが容易になる。
図5は、本発明の第1の実施の形態の機能グループの定義を示す図である。
図4に示す業務毎のグループに属する仮想サーバ109を、さらに仮想サーバ109の機能毎にグループ化する。すなわち、業務毎のグループである各システムグループ1〜3内で、仮想サーバ109をさらに機能グループ502〜508に分割してグループ化する。なお、機能グループ502〜508は、システムグループ501のサブグループである。
例えばシステムグループ1(501)に属する仮想サーバ109が、Webサーバ群、AP(アプリケーション)サーバ群、及びDB(データベース)サーバ群から構成されている場合には、Webサーバ群を機能グループ1(502)、APサーバ群を機能グループ2(503)、及びDBサーバ群を機能グループ3(504)として、機能毎にグループ化する。
この機能毎のグループ化によって、管理者は、機能グループ毎の仮想サーバ109に割り当てられたCPU202の実行時の負荷の特性を考慮して、機能グループ毎に機能グループの割当率を指定することができる。例えば、APサーバ群503のCPU202の負荷が同一システムグループの他の機能グループ(502及び504)より高い場合には、管理者は、APサーバ群503に物理サーバ111のCPU202をより多く割り当てることができる。
これによって、機能グループ毎に仮想サーバ109に割り当てられたCPU202の実行時の負荷の特性が異なる場合に、より的確にワークロードを管理できる。
図6は、本発明の第1の実施の形態のサーバグループ割当率コマンドを示す図である。
サーバグループ割当率コマンドは、サーバグループ名602と、動作603と、システムグループ名604と、機能グループ名605と、CPU割当率606と、割当方法607と、切替方法608と、ロードバランサアドレス609と、を含む。システムグループ毎に、サーバグループ名602と、動作603と、システムグループ名604と、機能グループ名605と、CPU割当率606と、割当方法607と、切替方法608と、ロードバランサアドレス609と、が定義される。
サーバグループ名602には、複数の物理サーバ111をグループ化したサーバグループの名前が指定される。動作603は、サーバグループ割当率コマンドの動作を示す。具体的には、動作603には、CPU202の仮想サーバ109への割当率を変更するコマンドである「割当」、及びまだ仮想サーバ109へ割り当てられていないCPU202の情報を取得するコマンドである「未割当CPU取得」が用意されている。管理者は、「割当」及び「未割当CPU取得」からいずれかを選択して、サーバグループ割当率コマンドに含めることができる。
動作603において、「割当」が選択された場合には、管理者は、システムグループ名604、機能グループ名605、CPU割当率606、割当方法607、切替方法608、及びロードバランサアドレス609を設定する。また、動作603において、「未割当CPU取得」が選択された場合には、管理者は、システムグループ名604、機能グループ名605、CPU割当率606、割当方法607、切替方法608、及びロードバランサアドレス609を設定する必要はない。
システムグループ名604では、CPU202を仮想サーバ109へ割り当てるシステムグループが指定される。機能グループ名605では、CPU202を仮想サーバ109へ割り当てる機能グループが指定される。CPU割当率606には、サーバグループ名602で指定されたサーバグループの全ての物理サーバ111のCPU202の処理性能を100%として、システムグループ名602で指定されたシステムグループに割り当てられるCPU202の処理性能の割当率が指定される。
割当方法607では、複数の仮想サーバ109への割当方法が指定される。具体的には、割当方法607には、「均等」、「機能グループ均等化」、及び「機能グループ履歴割当」が用意されている。「均等」は、システムグループに属する複数の仮想サーバ109に、できるだけCPU202の処理性能を均等に割り当てる。「機能グループ均等化」は、機能グループに属する複数の仮想サーバ109に、できるだけCPU202の処理性能が均等に割り当てられる。「機能グループ履歴割当」は、過去の機能グループの仮想サーバ109の動作の履歴に基づいて、機能グループ毎に割当比率を変化させて、機能グループに属する複数の仮想サーバ109にCPU202を割り当てる。管理者は、割当方法607において、「均等」、「機能グループ均等化」、及び「機能グループ履歴割当」からいずれかを選択して、サーバグループ割当率コマンドに含めることができる。
切替方法608には、「切替時間指定」と「CPU利用率指定」が用意されている。「切替時間指定」は、仮想サーバ109に新たにCPU202が割り当てられる場合に、指定された時間をかけて、徐々に仮想サーバ109のCPU202の割当量を変化させる。「CPU利用率指定」は、仮想サーバ109に新たにCPU202が割り当てられる場合に、物理サーバ111のCPU202の利用率を参照して、指定されたCPU202の利用率を超えないように、徐々に仮想サーバ109のCPU202の割当量を変化させる。ロードバランサアドレス609では、システムグループに属する仮想サーバ109に対して、クライアント端末113からのリクエストを分散させるロードバランサが指定される。
図7は、本発明の第1の実施の形態のサーバ構成テーブル103の構成図である。
サーバ構成テーブル103は、物理サーバID701と、サーバ構成702と、仮想化プログラムID703と、仮想サーバID704と、割当率705と、を含む。
物理サーバID701には、物理サーバ111の一意な識別子が登録される。サーバ構成702には、物理サーバ111の構成が登録される。例えば、サーバ構成702には、CPU202の動作クロック周波数及びメモリ201の容量等のワークロード管理に関係する物理サーバ111のリソースの情報が登録される。本実施の形態では、CPU202の動作クロック周波数がCPU202の処理性能を示す指標であるが、CPU202の処理性能を示す指標であれば、動作クロック周波数に限られない。例えば、特定のベンチマークの結果又は入出力性能を含む処理性能の指標等も考えられる。
仮想化プログラムID703には、物理サーバ111で稼働するサーバ仮想化プログラム110の一意な識別子が登録される。仮想サーバID704には、サーバ仮想化プログラム110によって構築された仮想サーバ109の一意な識別子が登録される。
割当率705には、CPU202の仮想サーバ109への割当率が登録される。この割当率は、単一の物理サーバ111の処理性能を100%とした場合の各仮想サーバ109に対して割り当てられる物理サーバ111の処理性能の割当比率である。
管理サーバ101は、サーバ構成テーブル103によって、物理サーバ111と仮想サーバ109との対応と、各仮想サーバ109に対する物理サーバ111の処理性能の割当率とを管理できる。
図8は、本発明の第1の実施の形態のグループ定義テーブル107の構成図である。
グループ定義テーブル107は、サーバグループ807と、システムグループ801と、割当率802と、優先度803と、機能グループ804と、重み付け805と、仮想サーバID806と、を含む。
サーバグループ807には、サーバグループが登録される。サーバグループは、物理サーバ111から構成されるグループである(図4参照)。
システムグループ801には、システムグループが登録される。このシステムグループとは、例えば、同じ業務を処理する複数の仮想サーバ109から構成されるグループである。割当率802には、サーバグループ全体の処理性能を100パーセントとした場合に、システムグループに割り当てられる割当率が登録される。例えば、割当率802は、サーバグループが、3台の物理サーバ111によって構成される場合には、3台の物理サーバ111の処理性能の総量に対する割当率を示す。優先度803には、サーバグループ内のどのシステムグループから優先して物理メモリ111のリソースを割り当てるかを示す優先度が登録される。優先度が高いシステムグループに対して優先的にワークロードを割り当てる。なお、優先度「1」が最高優先度である。なお、優先度803は、管理者によって指定される。
機能グループ804には、システムグループ内の仮想サーバ109を、更に各仮想サーバ109の機能によってグループ化した機能グループが登録される。システムグループ内の仮想サーバ109をその機能によって分けて管理する場合に、機能グループが作成される。重み付け805には、システムグループの処理性能を100%とした場合の各機能グループに割り当てられる処理性能の比率が登録される。機能グループ毎に処理性能の割当の比率を変化させる場合、重み付け805が指定される。仮想サーバID806は、機能グループに含まれる仮想サーバ109の一意な識別子が登録される。
グループ定義テーブル107は、管理サーバ101は、複数の物理サーバ111及び各物理サーバ111で稼働する複数の仮想サーバ109が、それぞれどのサーバグループ、システムグループ、及び機能グループに属するかを定義する。また、グループ定義テーブル107は、システムグループ毎の割当率と機能グループ毎の重み付けとを定義できる。
図9は、本発明の第1の実施の形態の履歴管理プログラム105の構成を示す図である。
履歴管理プログラム105は、各物理サーバ111の動作の履歴及び各仮想サーバ109の動作の履歴を取得する。具体的には、履歴管理プログラム105は、各物理サーバ111のCPU202の利用率である物理CPU利用率履歴901を取得する。また、履歴管理プログラム105は、各仮想サーバ109が割り当てられたCPU202の利用率である仮想CPU利用率履歴902を取得する。
物理CPU利用率履歴901は、物理サーバ101で稼動するサーバ仮想化プログラム110上のサーバ仮想化プログラムエージェント904によって、周期的に取得される。一方、仮想CPU利用率履歴902は、仮想サーバ109で稼働するOS207上のゲストOSエージェント903によって、周期的に取得される。
異なるレイヤにゲストOSエージェント903及びサーバ仮想化プログラムエージェント904が設けられるので、各エージェントが動作する異なるレイヤの動作履歴を取得することができる。すなわち、二つの異なるレイヤで動作するエージェントを設けることによって、全てのレイヤの動作履歴を取得することができる。
なお、仮想CPU利用率履歴902には、制御I/Fプログラム208を介して取得されたCPU202の各仮想サーバ109への割当率を含む。CPU202の割当率とCPU202の利用率は密接な関連があるため、CPU利用率とCPUの割当率とを取得することで正確なワークロードの割当を可能にする。
サーバ仮想化プログラムエージェント904とゲストOSエージェント903とが取得した情報は、ネットワークI/F204を介して管理サーバ101に転送される。
また、ゲストOSエージェント903は、ゲストOS207を介して、仮想サーバの構成も取得することができる。例えば、仮想サーバ109の構成とは、仮想サーバに割り当てられたCPU202の処理性能及び仮想サーバに割り当てられたメモリの容量等のことである。
同じく、サーバ仮想化プログラムエージェント904も、サーバ仮想化プログラム110を介して、物理サーバ111のCPU202の処理性能及びメモリ容量を取得することができる。このように、異なるレイヤにエージェントを配置することで、取得できる情報が増加する。
図10は、本発明の第1の実施の形態の物理CPU利用率履歴901の構成を示す図である。
物理CPU利用率履歴901は、時間1001と、物理サーバ識別子1002と、物理CPU利用率1003と、を含む。
時間1001には、履歴管理プログラム105が物理CPU利用率履歴901を取得した時間が登録される。物理サーバ識別子1002には、取得した物理サーバ111の一意な識別子が登録される。物理CPU利用率1003には、当該物理サーバ111のCPU202の利用率が登録される。
図11は、本発明の第1の実施の形態の仮想CPU利用率履歴902の構成を示す図である。
時間1101には、履歴管理プログラム105が仮想CPU利用率履歴902を取得した時間が登録される。仮想サーバ識別子1102には、取得した仮想サーバ109の一意な識別子が登録される。物理CPU割当率1103には、CPU202の各仮想サーバ109への割当率が登録される。物理CPU割当率1103は、履歴管理プログラム105が、サーバ仮想化プログラム110の制御I/Fプログラム208を介して取得した情報である。仮想CPU利用率1104には、仮想サーバ109のCPU202の利用率が登録される。
物理CPU利用率履歴901及び仮想CPU利用率履歴902は、ワークロード管理プログラム102が仮想サーバ109にCPU202を割り当てる処理を効率よく実行するために用いられる。
図12は、本発明の第1の実施の形態のワークロード管理プログラム102の構成を示す図である。
ワークロード管理プログラム102は、コマンド処理部1201と、ワークロード切替部1202と、ワークロード算出部1203と、ロードバランサ制御部1204と、を含む。
コマンド管理部1201は、図6で示すサーバグループ割当率設定コマンドを受け付ける。ワークロード算出部1203は、仮想サーバ109の割当率を算出する。ワークロード切替部1202は、ワークロード算出部1203によって算出された割当率に基づいて、仮想サーバ109に物理サーバ111のCPU202を割り当て、ワークロードを切り替える。ロードバランサ制御部1204は、ワークロードの切り替えと連動してロードバランサを制御する。
図13は、本発明の第1の実施の形態のコマンド処理部1201による処理のフローチャートである。
まず、コマンド処理部1201は、サーバグループ割当率設定コマンドを受け付ける(ステップ1301)。
次に、コマンド処理部1201は、グループ定義テーブル107とサーバ構成テーブル103と、を参照して、サーバグループに属する物理サーバ111の全体のCPU202の処理性能を算出する(ステップ1302)。
具体的には、コマンド処理部1201は、グループ定義テーブル107を参照して、サーバグループ割当率設定コマンドのサーバグループ名602で指定されたサーバグループに該当するサーバグループを選択する。そして、コマンド処理部1201は、グループ定義テーブル107を参照して、選択されたサーバグループに属する全ての仮想サーバ109を検索する。コマンド処理部1201は、サーバ構成テーブル103を検索して、検索された仮想サーバ109の物理サーバ111のCPU202の処理性能(例えば動作クロック周波数)を取得する。そして、コマンド処理部1201は、そのCPU202の処理性能の合計を算出して、サーバグループ全体のCPU202の処理性能を求める。
次に、コマンド処理部1202は、管理者によって指定されたシステムグループの割当率から、システムグループ毎に割り当てられているCPU202の割当量を算出する(ステップ1303)。具体的には、コマンド処理部1201は、サーバグループ割当率設定コマンドで指定されたCPU割当率606とステップ1302の処理でコマンド処理部1201が算出したサーバグループ全体のCPU202の量との積を計算することによって、システムグループに割り当てられるCPU202の量を求める。
例えば、サーバグループ全体のCPU202の処理性能が8GHzであって、CPU割当率606が40%と指定された場合には、システムグループに割り当てられるCPU202の割当量は、8GHz×40%=3.2GHzである。
次に、コマンド処理部1201は、ワークロード算出部1203を呼び出す(ステップ1304)。ワークロード算出部1203は、ステップ1303の処理でコマンド処理部1201によって算出されたシステムグループの割当量に基づいて、そのシステムグループに属する仮想サーバ109の割当量を決定する。この処理については、図14〜図18にて詳細に説明する。
次に、コマンド処理部1201は、ワークロード切替部1202を呼び出す(ステップ1305)。
ワークロード切替部1202は、ステップ1304の処理でワークロード算出部1304によって算出された仮想サーバ109毎のCPU202の割当量に基づいて、仮想サーバ109にCPU202を割り当てる。この処理については、図19にて詳細に説明する。
次に、コマンド処理部1201は、ロードバランサ112による制御が必要か否かを判定する(ステップ1306)。具体的には、コマンド処理部1201は、サーバグループ割当率設定コマンドのロードバランサアドレス609が指定されている場合には、ロードバランサ112による制御が必要と判定する。コマンド処理部1201が、ロードバランサ112による制御が必要と判定した場合には、ステップ1307の処理に進み、コマンド処理部1201が、ロードバランサ112による制御が不要と判定した場合には、ステップ1308の処理に進む。
コマンド処理部1201が、ロードバランサ112による制御が必要と判定した場合には、コマンド処理部1201は、ロードバランサ制御部1204を呼び出す(ステップ1307)。
次に、コマンド処理部1201は、全てのシステムグループについてワークロードが設定されたか否かを判定する(ステップ1308)。コマンド処理部1201が全てのシステムグループについてワークロードが設定されたと判定した場合には、コマンド処理部1201による処理を終了する。一方、コマンド処理部1201が全てのシステムグループについてワークロードが設定されていないと判定した場合には、ステップ1301の処理に戻る。
図14は、本発明の第1の実施の形態のワークロード算出部1203による処理のフローチャートである。
ワークロード算出部1203は、コマンド処理部1201によって、呼び出される。
まず、ワークロード算出部1203は、サーバグループ割当率設定コマンドで指定された割当方法607が「均等割当」か否かを判定する(ステップ1401)。割当方法607が「均等割当」である場合には、ワークロード算出部1203は、ステップ1404の処理に進む。一方、割当方法607が「均等割当」でない場合には、ワークロード算出部1203は、ステップ1402の処理に進む。なお、ステップ1404の処理については、図15にて説明する。
次に、ワークロード算出部1203は、サーバグループ割当率設定コマンドで指定された割当方法607が「機能グループ均等化」か否かを判定する(ステップ1402)。割当方法607が「機能グループ均等化」である場合には、ワークロード算出部1203は、ステップ1405の処理に進む。一方、割当方法607が「機能グループ均等化」でない場合には、ワークロード算出部1203は、ステップ1403の処理に進む。なお、ステップ1405の処理については、図17にて説明する。
次に、ワークロード算出部1203は、サーバグループ割当率設定コマンドで指定された割当方法607が機能グループ履歴割当か否かを判定する(ステップ1403)。割当方法607が機能グループ履歴割当である場合には、ワークロード算出部1203は、ステップ1406の処理に進む。一方、割当方法607が機能グループ履歴割当でない場合には、ワークロード算出部1203による処理を終了する。なお、ステップ1406の処理については、図18にて説明する。
図15は、本発明の第1の実施の形態の均等割当処理(ステップ1404)のフローチャートである。
均等割当処理では、システムグループの複数の仮想サーバ109に割り当てられるCPU202の割当量ができるだけ均等になるように割り当てる。例えば、システムグループの割当量が3GHzであって、システムグループに3つの仮想サーバが属する場合には、それぞれの仮想サーバ109の割当量は1GHzである。
まず、ワークロード算出部1203は、グループ定義テーブル107の優先度803を参照して、優先度の高いシステムグループを選択する(ステップ1501)。
次に、ワークロード算出部1203は、グループ定義テーブル107を参照して、ステップ1501の処理でワークロード算出部1203によって選択されたシステムグループに属する仮想サーバ109を検索する(ステップ1502)。
次に、ワークロード算出部1203は、サーバ構成テーブル103を参照して、ステップ1502の処理でワークロード算出部1203によって検索された仮想サーバ109が稼働する物理サーバ111を検索する(ステップ1503)。
次に、ワークロード算出部1203は、サーバ構成テーブル103を参照して、ステップ1503の処理でワークロード算出部1203によって検索された物理サーバ111のCPU202の処理性能を検索する(ステップ1504)。
ワークロード算出部1203は、ステップ1504の処理でワークロード算出部1203によって検索された物理サーバ111のCPU202の処理性能の合計値を算出する(ステップ1505)。すなわち、この合計値がサーバグループ全体のCPU202の処理性能の総量である。
次に、ワークロード算出部1203は、ステップ1505の処理で算出された合計値とシステムグループの割当率とを乗算して、システムグループに割り当てられるCPU202の処理性能を算出する(ステップ1506)。
ワークロード算出部1203は、各仮想サーバ109に割り当てられたCPU202の処理性能に対応して、物理サーバ111で稼働する仮想サーバ109にCPU202の処理性能を割り当てる割当量を決める(ステップ1507)。すなわち、CPU202の処理性能が少ない物理サーバ111で稼動する仮想サーバ109ほど、仮想サーバ109に割り当てられるCPU202の処理性能を少なくする。
また、ワークロード算出部1203は、各仮想サーバ109に割り当てられたCPU202の処理性能に比例するように、仮想サーバ109にCPU202の処理性能を割り当ててもよい。
なお、ワークロード算出部1203は、各仮想サーバ109に割り当てられたCPU202の処理性能に基づいて、離散的(階段的に増加するよう)に仮想サーバ109にCPU202の処理性能を割り当ててもよい。
例えば、物理サーバ1のCPUの処理性能が1GHz、物理サーバ2のCPUの処理性能が2GHz、物理サーバ3のCPUの処理性能が3GHzであって、物理サーバ1で仮想サーバ1が稼動し、物理サーバ2で仮想サーバ2が稼動し、物理サーバ3で仮想サーバ3が稼働している場合について説明する。仮想サーバ1、仮想サーバ2、及び仮想サーバ3の割当量は、物理サーバのCPU202の処理性能の比、すなわち、それぞれ1:2:3の割合でシステムグループのCPUの処理性能が割り当てられる。
次に、ワークロード算出部1203は、ステップ1507の処理で決定された各仮想サーバ109の割当量を、各仮想サーバ109が稼動する物理サーバ111に割り当てることができる否かを判定する(ステップ1508)。具体的には、ワークロード算出部1203は、仮想サーバ109の割当量が、物理サーバ111のCPU202の未だ割り当てられていない処理性能より少ないか否かを判定する。
ステップ1508の処理で割り当てることができないと判定された場合には、管理者に割り当てができない旨の警告が報知され、CPU202の割当可能な量を各仮想サーバ109に割り当てる。なお、本実施の形態では、警告を図25に示す画面に表示して管理者に報知するが、管理者にメッセージを送信して、管理者に報知してもよい。なお、報知とは、通知又は表示を含む。
次に、ワークロード算出部1302は、全てのシステムグループに割当処理が実行されたか否かを判定する(ステップ1510)。全てのシステムグループに割当処理が実行されていない場合には、ステップ1501の処理に戻る。全てのシステムグループに割当処理が実行された場合には、ステップ1511の処理に進む。
ワークロード算出部1302は、未だ割り当てられていない領域を有するCPU202を算出する。ワークロード算出部1302は、未だ割り当てられていない領域を有するCPU202がある場合には、当該CPU202の処理性能をステップ1507の処理で算出された割当量が割り当てられなかった仮想サーバ109に割り当てる(ステップ1511)。すなわち、ステップ1508の処理で割り当てができないと判定された場合に、もし他の物理サーバ111に未だ割り当てられていないCPU202があれば、その仮想サーバ109に、そのCPU202の処理性能を割り当てる。
図16は、本発明の第1の実施の形態の均等割当の例を示す図である。
システムグループ1〜3に属する仮想サーバ1〜9に、3台の物理サーバ1〜3のCPUを割り当てる例を示す。物理サーバ1で仮想サーバ1、仮想サーバ2、及び仮想サーバ3が稼働する。また、物理サーバ2で仮想サーバ4,仮想サーバ5,及び仮想サーバ6が稼働する。また、物理サーバ3で仮想サーバ7,仮想サーバ8,及び仮想サーバ9が稼働する。
サーバグループは物理サーバ1〜3から構成される。物理サーバ1のCPUの処理性能は3GHzであり、物理サーバ2のCPUの処理性能は1GHzであり、物理サーバ3のCPUの処理性能は2GHzである。従って、サーバグループ全体のCPUの処理性能は6GHzである。
システムグループ1には、サーバグループ全体のCPUの処理性能に対し、30%のCPUの処理性能が割り当てられる。システムグループ2にはサーバグループ全体のCPUの処理性能に対し、50%のCPUの処理性能が割り当てられる。システムグループ3には、サーバグループ全体のCPUの処理性能に対し、20%のCPUの処理性能が割り当てられる。
具体的には、システムグループ1の割当量は、6GHz×30%=1.8GHzである。システムグループ2の割当量は、6GHz×50%=3GHzである。システムグループ3の割当量は、6GHz×20%=1.2GHzである。
もし、システムグループの割当量が各仮想サーバ109に均等に割り当てられる単純な均等割当であれば、システムグループ1に属する仮想サーバ1、仮想サーバ4、及び仮想サーバ7には、1.8GHz/3=0.6GHzがそれぞれ割り当てられる。システムグループ2に属する仮想サーバ2、仮想サーバ3、仮想サーバ5、及び仮想サーバ8には、3.0GHz/4=0.75GHzが割り当てられる。システムグループ3に属する仮想サーバ6及び仮想サーバ9には、1.3GHz/2=0.6GHzが割り当てられる。
しかし、各物理サーバ111のCPU202の処理性能が異なる場合には、単純な均等割当の方法で、各仮想サーバ109にCPU202の処理性能が割り当てられると、各物理サーバ111間で仮想サーバ109に割り当てることができるCPU202の処理性能に不均衡が生じる。つまり、CPU202の処理性能の少ない物理サーバ111に属する仮想サーバ109に、CPU202の処理性能の多い物理サーバ111に属する仮想サーバ109と同じ割当量が割り当てられると、CPU202の処理性能の少ない物理サーバ111から割当可能なCPU202の処理性能が全て割り当てられてしまう。すなわち、CPU202の処理性能の少ない物理サーバ111に属する仮想サーバ109に、割り当てることができる物理サーバ111のCPU202の処理性能が尽きてしまう。
従って、各物理サーバ111のCPU202の処理性能の比に基づいて、サーバグループ全体のCPU202の処理性能を、各仮想サーバ109に割り当てる。具体的には、物理サーバ1、物理サーバ2、及び物理サーバ3には、それぞれ3:1:2の比率で、サーバグループ全体のCPUの処理性能が、各物理サーバ1〜3に属する仮想サーバ1〜9に割り当てられる。すなわち、物理サーバ111のCPUの処理性能が少ないサーバに属する仮想サーバ109に割り当てられるCPU202の処理性能は少なくなる。
システムグループ1に属する仮想サーバ1、4、7には、それぞれ0.9GHz、0.3GHz、0.6GHzのCPUの処理性能が割り当てられる。システムグループ2に属する仮想サーバ2、3、5、8には、それぞれ0.75GHz、0.75GHz、0.5GHz、1.0GHzのCPUの処理性能が割り当てられる。システムグループ3に属する仮想サーバ6、8には、それぞれ0.4GHz、0.8GHzのCPUの処理性能が割り当てられる。
ここで、物理サーバ1に属する仮想サーバ1〜3に割り当てられるCPUの処理性能の合計値は2.4GHzである。物理サーバ2に属する仮想サーバ4〜6に割り当てられるCPUの処理性能の合計値は1.2GHzである。物理サーバ3に属する仮想サーバ7〜9に割り当てられるCPUの処理性能の合計値は2.4GHzである。
つまり、物理サーバ2及び物理サーバ3の各仮想サーバに割り当てられる処理性能の合計値は、物理サーバ2及び物理サーバ3のCPUの処理性能より多くなる。そこで、システムグループに指定された優先度に従って、優先度が高いシステムグループ2に属する仮想サーバ2、3、5、8に各物理サーバ1〜3のCPUの処理性能が優先的に割り当てられる。
これによって、優先度が最も低いシステムグループ3に属する仮想サーバ6、8には、要求されたCPUの処理性能よりも少ない0.2GHz,0.4GHzのCPUの処理性能が割り当てられる。なお、仮想サーバに割り当てられるCPUの処理性能が要求されたCPUの処理性能よりも少なくなる場合は、その旨が管理者に警告として報知される。従って、物理サーバ1の処理性能3GHzに対して2.4GHzが割り当てられ、物理サーバ2の処理性能1GHzに対して1GHzが割り当てられ、物理サーバ3の処理性能2GHzに対して2GHzが割り当てられる。
なお、物理サーバ1のCPUの処理性能の一部は、仮想サーバ109に割り当てられていない。物理サーバ1の未だ割り当てられていないCPUの処理性能(0.6GHz)は、指定されたCPUの処理性能が割り当てられなかった仮想サーバ6及び9に、再度割り当てることができる。なお、この未だ割り当てられていないCPUの処理性能を用いて、他の処理を実行するようにしてもよい。
これによって、物理サーバ111のCPU202の処理性能が異なる場合においても、効率的に仮想サーバ109にCPU202の処理性能を割り当てることができる。
図17は、本発明の第1の実施の形態の機能グループ均等割当処理1405のフローチャートである。
機能グループ均等割当処理では、機能グループに属する仮想サーバ109にできるだけ均等にCPU202の処理性能を割り当てる。例えばシステムグループが、さらにWebサーバ群、アプリケーションサーバ群、及びデータベースサーバ群の3つ機能グループから構成される場合に、同じ機能グループに属する仮想サーバ109には、できるだけ同じCPU202の処理性能が割り当てられるほうが、管理者にとって管理しやすいためである。
ステップ1701の処理〜ステップ1707の処理は、それぞれステップ1501の処理〜ステップ1507の処理(図15)と同じなので、説明を省略する。また、ステップ1709の処理〜ステップ1712の処理は、それぞれステップ1508の処理〜ステップ1511の処理(図15)と同じなので、説明を省略する。
ワークロード算出部1203は、ステップ1707の処理で決定された各仮想サーバ109の割当量に基づいて、機能グループに属する仮想サーバ109に割り当てられる処理性能が、できるだけ同一になるように、各物理サーバのCPU202の処理性能が割り当てられる(ステップ1708)。
図18は、本発明の第1の実施の形態の機能グループ履歴割当処理1406のフローチャートである。
機能グループ履歴割当処理では、機能グループに属する仮想サーバ109に割り当てられる比率を、仮想CPU利用率履歴902に基づいて決定されるので、より効率的な割り当てが実行される。
ステップ1801の処理〜ステップ1807の処理は、それぞれステップ1501の処理〜ステップ1507の処理(図15)と同じなので、説明を省略する。また、ステップ1809の処理〜ステップ1812の処理は、それぞれステップ1508の処理〜ステップ1511の処理(図15)と同じなので、説明を省略する。
ワークロード算出部1203は、ステップ1807の処理で決定された各仮想サーバ109の割当量に基づいて、機能グループに属する仮想サーバ109に割り当てる比率を算出して、再度各仮想サーバ109に割り当てる(ステップ1808)。
具体的には、ワークロード算出部1203は、仮想CPU利用率履歴902を参照して、機能グループに割り当てられたCPU202の負荷の履歴を、機能グループ毎に求める。例えば、ワークロード算出部1203は、仮想CPU利用率履歴902を参照して、同じ機能グループに属する各仮想サーバ109の時間1101毎の物理CPU割当率1103と仮想CPU利用率1104とを乗じた値を算出する。そして、ワークロード算出部1203は、仮想サーバ109毎に、乗じた値の平均値を算出する。ワークロード算出部1203は、同じ機能グループに属する各仮想サーバ109の平均値を合計して機能グループに割り当てられたCPU202の負荷の履歴を算出する。そして、ワークロード算出部1203は、その機能グループに割り当てられたCPU202の負荷の履歴に基づいて、機能グループ毎の仮想サーバ109に割り当てられる比率を求める。
ワークロード算出部1203は、実際に仮想サーバ109から取得した物理サーバのCPU202の割当率と仮想CPUの利用率の両方の履歴を参照するので、仮想サーバに割り当てられたCPU202の負荷が動的に変化する環境でもより正確な負荷を求めることができる。以上説明したように、本実施の形態では、システムグループと機能グループとによって階層化された定義におけるワークロードの制御において、管理サーバ101は、それぞれのグループに属する仮想サーバ109と、その仮想サーバ109に対応する物理サーバ111を管理する。そして、管理サーバ109は、ワークロードを設定する際に、それぞれのグループに属する物理サーバ111に備わるCPU202の処理性能の総量に基づいて仮想サーバ109の割当量を決定する。
なお、本実施の形態では、2階層に定義されたグループにおけるワークロードの制御について記載したが、前述した考え方に基づけば、1又は2階層以上に定義されたグループのワークロードの制御にも本発明を適用できる。
図19は、本発明の第1の実施の形態のワークロード切替部1202による処理のフローチャートである。
ワークロード切替部1202は、ワークロード算出部1203によって算出された割当量に基づいて、実際に物理サーバ111のCPU202を各仮想サーバ109に割り当てる。すなわち、ワークロード切替部1202は、ワークロードを切り替える。
まず、ワークロード切替部1202は、優先度の高いシステムグループを選択する(ステップ1901)。
次に、ワークロード切替部1202は、サーバグループ割当率設定コマンドにおいて、切替方法608が「切替時間指定」か否かを判定する(ステップ1902)。ワークロード切替部1202は、切替方法608が「切替時間指定」であれば、ステップ1903の処理を実行し、切替方法608が「切替時間指定」でなければ、ステップ1904の処理を実行する。
切替方法608が「切替時間指定」である場合、ワークロード切替部1202は、指定された切替時間で、ステップ1901の処理で選択されたシステムグループに割り当てられている現在の割当量から、ワークロード算出部1203によって算出された割当量に徐々に切り替える(ステップ1903)。
例えば、システムグループに割り当てられている現在の割当量が60%であって、ワークロード算出部1203によって算出された割当量が20%であって、指定された切替時間が10分である場合には、ワークロード切替部1202は、割当量を60%から20%に、10分間で切り替える。例えば、切替時間は、10分〜1時間の範囲で設定される。なお、切替時間は、仮想サーバ109上で稼動するプログラムの特性に応じて管理者が自由に設定できる。
一方、切替方法608が「切替時間指定」でない場合には、ワークロード切替部1202は、仮想サーバ109に割り当てられているCPU202の利用率が所定の値を超えないように、ワークロード算出部1203によって算出された割当量に徐々に切り替える(ステップ1904)。例えば、ワークロード切替部1202は、指定されたCPU利用率が30%の場合、30%を超えないように、徐々にワークロードを切り替える。
次に、ワークロード切替部1202は、ステップ1901の処理で選択されたシステムグループのワークロードが切り替えられたか否かを判定する(ステップ1905)。ステップ1901の処理で選択されたシステムグループのワークロードが切り替えられた場合には、ステップ1907の処理に進み、ステップ1901の処理で選択されたシステムグループのワークロードが切り替えられていない場合には、ステップ1906の処理に進む。
ステップ1901の処理で選択されたシステムグループのワークロードが切り替えられていない場合、すなわち、所定の時間が経過した後もワークロードが切り替えられない場合には、ワークロード切替部1202は、仮想サーバ109を他の物理サーバ111に移動させ、ワークロードが切り替えられる環境を整える(ステップ1906)。
例えば、ワークロード切替部1202は、同じシステムグループに属する物理サーバ111間で、物理CPU利用率が低く、かつ優先度の低いシステムグループが稼働する物理サーバ111を選択する。そして、ワークロード切替部1202は、ワークロードが切り替えられていない仮想サーバ109の実行環境を、選択された物理サーバ111の仮想サーバ109に移動させる。
なお、仮想サーバ109のシステムを構成する要素(例えば、CPU、メモリ、ストレージ及びネットワーク等)が仮想化されているので、物理サーバ111に備わる物理的な要素から分離されている。従って、仮想サーバ109は、物理サーバ111よりも、他の物理サーバ111へ移動しやすい環境である。
例えば、仮想サーバ109が移動された結果、仮想サーバ109に備わるネットワークI/F204の識別子及びネットワークI/F204の数に変更がある場合においても、仮想サーバ109は、ネットワークI/F204の識別子及びネットワークI/F204の数を変更するだけで制御できる。従って、仮想サーバ109が移動することによって、物理サーバ111の構成が変わっても、仮想サーバ109は、物理サーバ111の構成を仮想化して利用するので、移動前と同じ環境を構築しやすい。
ワークロード切替部1202は、この仮想サーバ109の特徴を用いて、ワークロードの切り替えを実行している間、CPU202の負荷の高い仮想サーバ109を、他の物理サーバ111上に移動することによって、ワークロード切替を実行する。
具体的には、ワークロード切替部1202は、移動させる仮想サーバ109のI/Oデバイス及びメモリ容量等の仮想サーバ109の環境情報を取得する。そして、ワークロード切替部1202は、移動先の物理サーバ111で、取得した環境情報に基づいて、新しい仮想サーバ109を構築する。そして、ワークロード切替部1202は、新しく構築された仮想サーバ109にワークロードの切り替えを実行する。
これによって、複数の業務システムが複数の物理サーバ111に混在する環境においても、物理サーバ111のリソースを有効に使用することができる。
次に、ワークロード切替部1202は、全てのシステムグループでワークロードが切り替えられたか否かを判定する(ステップ1907)。全てのシステムグループでワークロードが切り替えられた場合には、ワークロード切替部1202による処理を終了する。一方、全てのシステムグループでワークロードが切り替えられていない場合には、ステップ1901の処理に戻る。
これによって、仮想サーバ109にCPU202の処理性能が徐々に割り当てられるので、仮想サーバ109に割り当てられるCPU202の処理性能が、急激に低下することはない。従って、仮想サーバ109のワークロードを切り替えている場合で、仮想サーバ109がリクエストを処理している場合であっても、仮想サーバ109が、そのリクエストを処理できなくなることはなく、そのリクエストを一定時間の間処理することができる。
図20は、本発明の第1の実施の形態のロードバランサ制御部1204による処理のフローチャートである。
ロードバランサ制御部1204は、ワークロードの切替と連動してロードバランサ112を制御するので、より的確に計算機システムの負荷のバランスを保つことができる。
通常は、ロードバランサ112は、複数のWebサーバ群に属する仮想サーバ109に、均等にリクエストを分散させる。しかし、ワークロードが切り替えられた結果、仮想サーバ109で稼働するWebサーバ群に属する各仮想サーバ109に割り当てられるCPU202の処理性能に不均等が生じる。その結果、割り当てられるCPU202の処理性能が少ない仮想サーバ109の単位時間当たりの処理性能(スループット)が低下する可能性がある。そこで、ワークロード制御部1204は、ワークロードが切り替えられた結果と連動して、ロードバランサ112を制御し、計算機システムのスループットを保つことができる。
ロードバランサ制御部1204は、システムグループを選択する(ステップ2001)。次に、ロードバランサ制御部1204は、ステップ2001の処理で選択されたシステムグループ内の機能グループを選択する(ステップ2002)。ロードバランサ制御部1204は、ステップ2002の処理で選択された機能グループに属する仮想サーバ109において、その仮想サーバ109が稼動する物理サーバ111のCPU202の処理性能の値(動作クロック周波数)に仮想サーバ109のCPU202の割当率を乗じた値を算出する(ステップ2003)。これによって、各仮想サーバ109に割り当てられたCPU202の処理性能とステップ2002で選択された機能グループに割り当てられたCPU202の処理性能との比率を求める。
次に、ロードバランサ制御部1204は、ステップ2003の処理で求めた比率に基づいて、ロードバランサ102がクライアント端末からのリクエストを仮想サーバ109に分散させる振分率を設定する(ステップ2004)。
全てのシステムグループに振分率が設定されたか否かを判定する(ステップ2005)。全てのシステムグループに振分率が設定された場合、ロードバランサ制御部1204による処理を終了する。全てのシステムグループに振分率が設定されていない場合、ステップ2001に戻る。
図21は、本発明の第1の実施の形態のサーバグループを追加する場合に表示される画面を示す図である。
グループ管理コンソール2101は、サーバグループ追加2102、システムグループ追加2103、機能グループ追加2104、グループ定義変更2105、及び変更実行2106を含む。
管理者がサーバグループ追加2102を選択すると、図21に示す画面となり、管理者はサーバグループを追加できる。管理者がシステムグループ追加2103を選択すると、図22に示す画面となり、管理者はシステムグループを追加できる。管理者が機能グループ追加2104を選択すると、図23に示す画面となり、管理者は機能グループを追加できる。管理者がグループ定義変更2105を選択すると、図24に示す画面となり、管理者はグループの定義(システムグループのCPU202の割当量等)を変更できる。管理者によってグループの定義が変更された場合に、グループの定義の変更を実行するか否かを管理者に確認するために、図25に示す画面が表示される。
管理者は、サーバグループ追加2102、システムグループ追加2103、及び機能グループ追加2104を操作することによって、階層的にグループを定義することができる。
図21は、管理者がサーバグループ追加2101を選択した場合のコンソールに表示される画面である。管理者は、入力部2107で、サーバグループ名と当該サーバグループに属する物理サーバ111とを入力する。そして、管理者は、追加2109を操作すると、入力された内容がグループ定義テーブルに反映される。
また、定義済サーバグループ表示部には、現在定義されているサーバグループ名2110と、そのサーバグループに属する物理サーバ2111が表示される。管理者は、定義済サーバグループによって、現在定義されているサーバグループ名2110とそのサーバグループに属する物理サーバ2111を参照できる。
なお、定義済サーバグループ表示部に、履歴管理プログラム105によって収集された物理CPU割当率1103に基づいて、各物理サーバ111の未だ割り当てられていないCPU202の処理性能を表示するようにしてもよい。
これによって、管理者は、現在の各物理サーバ111に備わるCPU202の割り当ての状況を考慮して、サーバグループを設定することができる。
図22は、本発明の第1の実施の形態のシステムグループを追加する場合に表示される画面を示す図である。
図22は、管理者がシステムグループ追加2103を選択した場合のコンソールに表示される画面である。管理者は、入力部2201で、新たに追加したいシステムグループが属するサーバグループを選択する。管理者は、入力部2202で、追加したいシステムグループ名を入力する。管理者が、追加2203を操作すると、入力された内容が、グループ定義テーブル107に反映される。
なお、管理者は、必要であれば、入力部2202で、ロードバランサ102のアドレスを入力することによって、ロードバランサ102のアドレスを定義することもできる。
また、定義済システムグループ表示部には、現在定義されているシステムグループ名2204が表示される。管理者は、定義済システムグループによって、現在定義されているシステムグループ名2204を参照できる。
図23は、本発明の第1の実施の形態の機能グループを追加する場合に表示される画面を示す図である。
図23は、管理者が機能グループ追加2103を選択した場合のコンソールに表示される画面である。管理者は、入力部2301で、新たに追加したい機能グループが属するシステムグループ名と、追加したい機能グループ名と、その機能グループに属する仮想サーバ名を入力する。
管理者が、追加2302を操作すると、入力された内容が、グループ定義テーブル107に反映される。
また、定義済機能グループ表示部には、現在定義されている機能グループ名2303が表示される。管理者は、定義済システムグループによって、現在定義されている機能グループ名2303を参照できる。
図24は、本発明の第1の実施の形態のグループ定義を変更する場合に表示される画面を示す図である。
図24は、管理者がグループ定義変更2105を選択した場合のコンソールに表示される画面である。管理者は、グループ定義変更入力部2401で、変更するシステムグループ名を選択する。また、管理者は、割当率変更入力部2402で、新たなシステムグループへのCPU202の割当率である新割当率を入力する。なお、割当率変更入力部2402では、現在のシステムグループへのCPU202の割当率が表示される。管理者は、重み付け変更入力部2403で、機能グループ毎に、機能グループへのCPU202の割当率である重み付けを入力する。
管理者が、追加2404を操作すると、入力された内容が、グループ定義テーブル107に反映される。
また、グループステータス表示部のサーバグループステータス2405には、現在定義されているサーバグループ名と、そのサーバグループの未だ割り当てられていないCPU202の処理性能の百分率で示した値と、が表示される。また、グループステータスのシステムグループステータス2406には、システムグループに割り当てられている割当量が表示される。管理者は、グループステータス表示部によって、現在のサーバグループの状態と、現在のシステムグループの割当量を参照できる。
また、管理者は、サーバグループの未だ割り当てられていないCPU202の処理性能を考慮して、システムグループの割当率を入力できる。
図25は、本発明の第1の実施の形態のグループ定義の変更を実行する場合に表示される画面を示す図である。
図25は、図24に示す画面で、管理者によってグループの定義が変更された場合に、グループの定義の変更を実行するか否かを管理者に確認するための画面である。
管理者によって変更されたグループの定義に従って、グループの定義を変更する場合には、管理者は、実行2501を選択する。
そして、グループの定義が変更されると、実行結果が、実行ステータス2502として表示される。実行ステータス2502は、指定された割当量が仮想サーバ109に割り当てられることができなかったこと、及び正常に割り当てが完了したこと等が表示される。
なお、ステップ1509の処理、ステップ1710の処理、及びステップ1810の処理で割り当てることができないことを管理者に報知する際にも、図25に示す画面が表示される。
この場合には、実行ステータス2502に指定された割当量が仮想サーバ109に割り当てられることができなかったことが表示される。
管理者は、この結果に基づいて、システムグループの割当率等を設定するので、さらに最適なワークロード管理できる。
(第2の実施の形態)
本発明の第1の実施の形態は、仮想サーバ109へのCPU202の割当率をCPU202の処理性能で定義するものである。本発明の第2の実施の形態は、仮想サーバ109へのCPU202の割当率をCPU202のコアの数によって定義する。
本実施の形態のCPU202は、複数のコアを備える。各コアは、プログラムを同時に実行できる。
また、本発明の第1の実施の形態のCPU202は、単一のコアを備える。そして、その単一のコアが複数の仮想サーバ109によって、共有される例を示す。しかし、複数のコアを備えるCPU202の場合には、コア単位で仮想サーバに割り当てる方が、独立性が高く効率的である。
なお、第1の実施の形態と同じ構成は同じ符号を付与し、説明を省略する。
図26は、本発明の第2の実施の形態のサーバ構成テーブル103を示す図である。
サーバ構成テーブル103は、物理サーバIDと、サーバ構成2601と、仮想化プログラムID703と、論理サーバID704と、割当コア数2602と、を含む。
サーバ構成2601には、物理サーバ111のCPU202の動作クロック周波数と、コア数と、メモリの容量と、が登録される。CPU202のコア数は、ワークロード管理プログラム102が管理する対象である。
また、割当コア数2602には、仮想サーバに割り当てられる単位となるCPU202のコア数が登録される。
図27は、サーバグループ割当率設定コマンドを示す図である。
第1の実施の形態のサーバグループ割当率設定コマンドと相違するのは、CPU割当率606が、割当CPUコア数2701割り当てコア数2701になっている点である。本実施の形態では、仮想サーバ109にCPU202のコアが単位として、割り当てられるからである。
本発明の第1の実施の形態では、ワークロード算出部1203は、CPU202の動作クロック周波数(GHz)を単位として、仮想サーバ109の割当量を算出したが、本発明の第2の実施の形態では、ワークロード算出部1203は、CPU202のコア数及びCPU202のコアの動作クロック周波数に基づいて、本発明の第1の実施の形態と同様に、仮想サーバ109の割当量を算出する。
物理サーバと仮想サーバが混在する環境での物理サーバの処理性能の割り当てに関する制御。
本発明の第1の実施の形態の計算機システムを示す図である。 本発明の第1の実施の形態の物理サーバのブロック図である。 本発明の第1の実施の形態のワークロード管理を示す図である。 本発明の第1の実施の形態の仮想サーバのグループ管理を示す図である。 本発明の第1の実施の形態のシステムグループの定義を示す図である。 本発明の第1の実施の形態のサーバグループ割当率コマンドを示す図である。 本発明の第1の実施の形態のサーバ構成テーブルの構成図である。 本発明の第1の実施の形態のグループ定義テーブルの構成図である。 本発明の第1の実施の形態の履歴管理プログラムの構成を示す図である。 本発明の第1の実施の形態の物理CPU利用率履歴の構成を示す図である。 本発明の第1の実施の形態の仮想CPU利用率履歴の構成を示す図である。 本発明の第1の実施の形態のワークロード管理プログラムの構成を示す図である。 本発明の第1の実施の形態のコマンド処理部による処理のフローチャートである。 本発明の第1の実施の形態のワークロード算出部による処理のフローチャートである。 本発明の第1の実施の形態の均等割当処理のフローチャートである。 本発明の第1の実施の形態の均等割当を示す図である。 本発明の第1の実施の形態の機能グループ均等割当処理のフローチャートである。 本発明の第1の実施の形態の機能グループ履歴割当処理のフローチャートである。 本発明の第1の実施の形態のワークロード切替部による処理のフローチャートである。 本発明の第1の実施の形態のロードバランサ制御部による処理のフローチャートである。 本発明の第1の実施の形態のサーバグループを追加する場合に表示される画面を示す図である。 本発明の第1の実施の形態のシステムグループを追加する場合に表示される画面を示す図である。 本発明の第1の実施の形態の機能グループを追加する場合に表示される画面を示す図である。 本発明の第1の実施の形態のグループ定義を変更する場合に表示される画面を示す図である。 本発明の第1の実施の形態のグループ定義の変更を実行する場合に表示される画面を示す図である。 本発明の第2の実施の形態のサーバ構成テーブルの構成図である。 本発明の第2の実施の形態のサーバグループ割当率コマンドを示す図である。
符号の説明
101 管理サーバ
102 ワークロード管理プログラム
103 サーバ構成テーブル
104 ワークロード設定プログラム
105 履歴管理プログラム
107 グループ定義テーブル
108 ネットワークスイッチ
109 仮想サーバ
110 サーバ仮想化プログラム
111 物理サーバ
112 ロードバランサ

Claims (10)

  1. 演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースと、を備える複数の物理計算機と、前記物理計算機で稼動する複数の仮想計算機と、前記インタフェースを備える前記物理計算機にネットワークを介して接続され、演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースと、を備える管理計算機と、を備える計算機システムにおける計算機の管理方法であって、
    前記管理計算機は、前記物理計算機と当該物理計算機で稼動する仮想計算機との対応と、前記物理計算機に備わるプロセッサの処理性能値を含むリソース情報とを管理する第1の情報と、
    前記複数の物理計算機をグループ化したサーバグループと、前記サーバグループに属する物理計算機で稼動する仮想計算機のうち同じ業務を処理する前記仮想計算機をグループ化した複数の業務システムと、前記業務システムに属する複数の仮想計算機のうち同じ機能を提供する仮想計算機をグループ化した機能グループと、前記サーバグループに属するすべての物理計算機に備わるプロセッサの処理性能を当該サーバグループに属する各業務システムに割り当てる割合を示す業務システム割当率と、前記業務システムに割り当てられた前記処理性能を当該業務システムに属する各機能グループに割り当てる割合を示す機能グループ割当率とを管理する第2の情報と、を保持し、
    前記複数の物理計算機に備わるプロセッサの処理性能を前記仮想計算機に割り当てる場合の前記管理方法は、
    前記サーバグループに含まれる前記業務システムに属する前記仮想計算機を、前記第2の情報を参照して検索する第1のステップと、
    前記第1のステップで検索された前記仮想計算機が稼動する物理計算機を、前記第1の情報を参照して検索する第2のステップと、
    前記第2のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を、前記第1の情報のリソース情報を参照して検索する第3のステップと、
    前記第3のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を合計して、前記サーバグループに属するすべての前記物理計算機に備わるプロセッサの処理性能値を示す全体処理性能値を算出する第4のステップと、
    前記サーバグループに含まれる各業務システムに割り当てられる処理性能値を示す業務システム処理性能値を、前記第4のステップで算出された前記全体処理性能値と前記第2の情報に含まれる前記業務システム割当率とに基づいて算出する第5のステップと、
    前記各業務システムに含まれる各機能グループに割り当てられる処理性能値を示す機能グループ処理性能値を、前記第5のステップで算出された前記業務システム処理性能値と前記第2の情報に含まれる前記機能グループ割当率とに基づいて算出する第6のステップと、
    前記業務システムに属する前記仮想計算機に、前記第6のステップで算出された前記機能グループ処理性能値に基づいて、前記サーバグループに属する前記物理計算機の前記処理性能を割り当てる第7のステップと、を含むことを特徴とする計算機の管理方法。
  2. 前記第2の情報は前記業務システムの優先度をさらに管理し、
    前記第7のステップで、前記第2の情報を参照して、前記優先度の高い業務システムに属する前記仮想計算機から、前記第6のステップで算出された前記機能グループ処理性能値に基づいて、前記サーバグループに属する前記物理計算機の前記処理性能を割り当て、
    前記第6のステップで算出された前記機能グループ処理性能値を割り当てることができない機能グループが存在する場合には、その旨を管理者に報知し、
    前記処理性能を前記仮想計算機に未だ割り当てられていない物理計算機が存在する場合には、前記機能グループ処理性能値を割り当てることができない機能グループの前記仮想計算機に当該物理計算機の処理性能を割り当てることを特徴とする請求項1に記載の管理方法。
  3. 前記物理計算機のプロセッサの処理性能を収集し、前記収集された物理計算機の処理性能の情報が、管理者に報知されることを特徴とする請求項に記載の計算機の管理方法。
  4. 前記第7のステップでは、前記第1の情報を参照して、前記処理性能が少ない前記物理計算機で稼動する前記仮想計算機ほど、少ない前記処理性能を割り当てることを特徴とする請求項1に記載の計算機の管理方法。
  5. 前記計算機システムは、さらに、リクエストを送信するクライアント計算機と、前記リクエストを前記仮想計算機に分散させる負荷分散装置と、を備え、
    前記負荷分散装置は、前記機能グループに属する仮想計算機に割り当てられた処理性能に従って、前記クライアント計算機からのリクエストを分散させることを特徴とする請求項1に記載の計算機の管理方法。
  6. 前記仮想計算機の処理性能の切り替えが完了するまでの時間が設定され、
    前記設定された時間の間に前記仮想計算機の処理性能を徐々に切り替えることを特徴とする請求項1に記載の計算機の管理方法。
  7. 前記処理性能を切り替える仮想計算機の負荷の上限が設定され、
    前記設定された仮想計算機の負荷の上限を超えない範囲で前記仮想計算機の処理性能を徐々に切り替えることを特徴とする請求項1に記載の計算機の管理方法。
  8. 前記第2の情報は前記業務システムの優先度をさらに管理し、
    前記第7のステップで、前記第2の情報を参照して、前記優先度の高い業務システムに属する前記仮想計算機から、前記第6のステップで算出された前記機能グループ処理性能値に基づいて、前記サーバグループに属する前記物理計算機の前記処理性能を割り当て、
    前記仮想計算機の負荷が所定の値より高い場合には、
    前記負荷が所定の値より高い仮想計算機を、前記優先度の業務システムに属する他の物理計算機に移動させて、前記移動させた仮想計算機に前記他の物理計算機の処理性能を割り当てることを特徴とする請求項1に記載の計算機の管理方法。
  9. 演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースと、を備える複数の物理計算機と、前記物理計算機で稼動する複数の仮想計算機と、前記インタフェースを備える前記物理計算機にネットワークを介して接続され、演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースと、を備える管理計算機と、を備える計算機システムにおいて、
    前記管理計算機は、
    前記物理計算機と当該物理計算機で稼動する仮想計算機との対応と、前記物理計算機に備わるプロセッサの処理性能値を含むリソース情報とを管理する第1の情報と、
    前記複数の物理計算機をグループ化したサーバグループと、前記サーバグループに属する物理計算機で稼動する仮想計算機のうち同じ業務を処理する前記仮想計算機をグループ化した複数の業務システムと、前記業務システムに属する複数の仮想計算機のうち同じ機能を提供する仮想計算機をグループ化した機能グループと、前記サーバグループに属するすべての物理計算機に備わるプロセッサの処理性能を当該サーバグループに属する各業務システムに割り当てる割合を示す業務システム割当率と、前記業務システムに割り当てられた前記処理性能を当該業務システムに属する各機能グループに割り当てる割合を示す機能グループ割当率とを管理する第2の情報と、を保持し、
    前記複数の物理計算機に備わるプロセッサの処理性能を前記仮想計算機に割り当てる場合に、
    前記サーバグループに含まれる前記業務システムに属する前記仮想計算機を、前記第2の情報を参照して検索する第1のステップと、
    前記第1のステップで検索された前記仮想計算機が稼動する物理計算機を、前記第1の情報を参照して検索する第2のステップと、
    前記第2のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を、前記第1の情報のリソース情報を参照して検索する第3のステップと、
    前記第3のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を合計して、前記サーバグループに属するすべての前記物理計算機に備わるプロセッサの処理性能値を示す全体処理性能値を算出する第4のステップと、
    前記サーバグループに含まれる各業務システムに割り当てられる処理性能値を示す業務システム処理性能値を、前記第4のステップで算出された前記全体処理性能値と前記第2の情報に含まれる前記業務システム割当率とに基づいて算出する第5のステップと、
    前記各業務システムに含まれる各機能グループに割り当てられる処理性能値を示す機能グループ処理性能値を、前記第5のステップで算出された前記業務システム処理性能値と前記第2の情報に含まれる前記機能グループ割当率とに基づいて算出する第6のステップと、
    前記業務システムに属する前記仮想計算機に、前記第6のステップで算出された前記機能グループ処理性能値に基づいて、前記サーバグループに属する前記物理計算機の前記処理性能を割り当てる第7のステップと、を実行することを特徴とする計算機システム。
  10. 演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースを備える複数の物理計算機と、前記物理計算機で稼動する複数の仮想計算機と、前記インタフェースを備える前記物理計算機にネットワークを介して接続され、演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースと、を備える管理計算機と、を備える計算機システムにおける前記物理計算機の処理性能を前記仮想計算機に割り当てる管理プログラムであって、
    前記管理計算機は、
    前記物理計算機と当該物理計算機で稼動する仮想計算機との対応と、前記物理計算機に備わるプロセッサの処理性能値を含むリソース情報とを管理する第1の情報と、
    前記複数の物理計算機をグループ化したサーバグループと、前記サーバグループに属する物理計算機で稼動する仮想計算機のうち同じ業務を処理する前記仮想計算機をグループ化した複数の業務システムと、前記業務システムに属する複数の仮想計算機のうち同じ機能を提供する仮想計算機をグループ化した機能グループと、前記サーバグループに属するすべての物理計算機に備わるプロセッサの処理性能を当該サーバグループに属する各業務システムに割り当てる割合を示す業務システム割当率と、前記業務システムに割り当てられた前記処理性能を当該業務システムに属する各機能グループに割り当てる割合を示す機能グループ割当率とを管理する第2の情報と、を保持し、
    前記管理プログラムは、
    前記複数の物理計算機に備わるプロセッサの処理性能を前記仮想計算機に割り当てる場合に、
    前記サーバグループに含まれる前記業務システムに属する前記仮想計算機を、前記第2の情報を参照して検索する第1のステップと、
    前記第1のステップで検索された前記仮想計算機が稼動する物理計算機を、前記第1の情報を参照して検索する第2のステップと、
    前記第2のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を、前記第1の情報のリソース情報を参照して検索する第3のステップと、
    前記第3のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を合計して、前記サーバグループに属するすべての前記物理計算機に備わるプロセッサの処理性能値を示す全体処理性能値を算出する第4のステップと、
    前記サーバグループに含まれる各業務システムに割り当てられる処理性能値を示す業務システム処理性能値を、前記第4のステップで算出された前記全体処理性能値と前記第2の情報に含まれる前記業務システム割当率とに基づいて算出する第5のステップと、
    前記各業務システムに含まれる各機能グループに割り当てられる処理性能値を示す機能グループ処理性能値を、前記第5のステップで算出された前記業務システム処理性能値と前記第2の情報に含まれる前記機能グループ割当率とに基づいて算出する第6のステップと、
    前記業務システムに属する前記仮想計算機に、前記第6のステップで算出された前記機能グループ処理性能値に基づいて、前記サーバグループに属する前記物理計算機の前記処理性能を割り当てる第7のステップと、を前記管理計算機に実行させることを特徴とする管理プログラム。
JP2006093401A 2006-03-30 2006-03-30 計算機の管理方法、計算機システム、及び管理プログラム Expired - Fee Related JP4519098B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006093401A JP4519098B2 (ja) 2006-03-30 2006-03-30 計算機の管理方法、計算機システム、及び管理プログラム
US11/495,037 US20070233838A1 (en) 2006-03-30 2006-07-28 Method for workload management of plural servers

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006093401A JP4519098B2 (ja) 2006-03-30 2006-03-30 計算機の管理方法、計算機システム、及び管理プログラム

Publications (2)

Publication Number Publication Date
JP2007272263A JP2007272263A (ja) 2007-10-18
JP4519098B2 true JP4519098B2 (ja) 2010-08-04

Family

ID=38560735

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006093401A Expired - Fee Related JP4519098B2 (ja) 2006-03-30 2006-03-30 計算機の管理方法、計算機システム、及び管理プログラム

Country Status (2)

Country Link
US (1) US20070233838A1 (ja)
JP (1) JP4519098B2 (ja)

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090013029A1 (en) * 2007-07-03 2009-01-08 Childress Rhonda L Device, system and method of operating a plurality of virtual logical sites
JP5011006B2 (ja) * 2007-07-03 2012-08-29 株式会社日立製作所 リソース割当方法、リソース割当プログラム、および、リソース割当装置
US8374929B1 (en) * 2007-08-06 2013-02-12 Gogrid, LLC System and method for billing for hosted services
US7383327B1 (en) * 2007-10-11 2008-06-03 Swsoft Holdings, Ltd. Management of virtual and physical servers using graphic control panels
US7941510B1 (en) 2007-10-11 2011-05-10 Parallels Holdings, Ltd. Management of virtual and physical servers using central console
JP2009116380A (ja) * 2007-11-01 2009-05-28 Nec Corp 仮想サーバ移動制御装置、仮想サーバ移動制御方法およびプログラム
JP4906686B2 (ja) * 2007-11-19 2012-03-28 三菱電機株式会社 仮想マシンサーバサイジング装置及び仮想マシンサーバサイジング方法及び仮想マシンサーバサイジングプログラム
JP4877608B2 (ja) * 2008-01-28 2012-02-15 日本電気株式会社 仮想マシンサーバ、仮想マシンサーバの情報保存方法及び仮想マシンサーバの情報保存用プログラム
JP5151509B2 (ja) * 2008-01-30 2013-02-27 日本電気株式会社 仮想マシンシステム及びそれに用いる仮想マシン分散方法
JP5262145B2 (ja) * 2008-02-04 2013-08-14 日本電気株式会社 クラスタシステムおよび情報処理方法
JP4976337B2 (ja) * 2008-05-19 2012-07-18 株式会社日立製作所 プログラム配信装置及び方法
JP5119077B2 (ja) * 2008-07-28 2013-01-16 西日本電信電話株式会社 仮想サーバリソース調整システム、リソース調整装置、仮想サーバリソース調整方法、及び、コンピュータプログラム
JP5222651B2 (ja) * 2008-07-30 2013-06-26 株式会社日立製作所 仮想計算機システムおよび仮想計算機システムの制御方法
JPWO2010024027A1 (ja) 2008-08-28 2012-01-26 日本電気株式会社 仮想サーバシステム及び物理サーバ選択方法
US8656018B1 (en) 2008-09-23 2014-02-18 Gogrid, LLC System and method for automated allocation of hosting resources controlled by different hypervisors
JP4701282B2 (ja) 2008-11-27 2011-06-15 株式会社日立製作所 ストレージシステムおよびインタフェース管理方法
JP5112277B2 (ja) * 2008-12-18 2013-01-09 株式会社日立製作所 再現処理方法、計算機システムおよびプログラム
US8832235B1 (en) 2009-03-10 2014-09-09 Hewlett-Packard Development Company, L.P. Deploying and releasing logical servers
US8549123B1 (en) * 2009-03-10 2013-10-01 Hewlett-Packard Development Company, L.P. Logical server management
US9547455B1 (en) 2009-03-10 2017-01-17 Hewlett Packard Enterprise Development Lp Allocating mass storage to a logical server
US9154385B1 (en) * 2009-03-10 2015-10-06 Hewlett-Packard Development Company, L.P. Logical server management interface displaying real-server technologies
US8676946B1 (en) 2009-03-10 2014-03-18 Hewlett-Packard Development Company, L.P. Warnings for logical-server target hosts
US20100250746A1 (en) * 2009-03-30 2010-09-30 Hitachi, Ltd. Information technology source migration
JP5347648B2 (ja) * 2009-03-30 2013-11-20 富士通株式会社 プログラム、情報処理装置及び状態出力方法
CA2913167C (en) 2009-04-01 2018-06-12 Nicira, Inc. Method and apparatus for implementing and managing virtual switches
JP5400482B2 (ja) 2009-06-04 2014-01-29 株式会社日立製作所 管理計算機、リソース管理方法、リソース管理プログラム、記録媒体および情報処理システム
JP5507136B2 (ja) * 2009-07-09 2014-05-28 株式会社日立製作所 管理装置及び方法並びに計算機システム
JP5396339B2 (ja) * 2009-10-28 2014-01-22 株式会社日立製作所 リソース制御方法及びリソース制御システム
US9311163B2 (en) 2010-01-08 2016-04-12 Nec Corporation Configuration data management system, and configuration data management method
US9229783B2 (en) * 2010-03-31 2016-01-05 International Business Machines Corporation Methods and apparatus for resource capacity evaluation in a system of virtual containers
JP5557590B2 (ja) * 2010-05-06 2014-07-23 株式会社日立製作所 負荷分散装置及びシステム
US8601226B1 (en) 2010-05-20 2013-12-03 Gogrid, LLC System and method for storing server images in a hosting system
JP5178778B2 (ja) * 2010-06-02 2013-04-10 株式会社日立製作所 仮想計算機およびcpu割り当て方法
JP5582344B2 (ja) * 2010-08-09 2014-09-03 日本電気株式会社 接続管理システム、及びシンクライアントシステムにおける接続管理サーバの連携方法
US9733963B2 (en) 2010-09-17 2017-08-15 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Optimizing virtual graphics processing unit utilization
US9081613B2 (en) 2010-11-02 2015-07-14 International Business Machines Corporation Unified resource manager providing a single point of control
US9253016B2 (en) 2010-11-02 2016-02-02 International Business Machines Corporation Management of a data network of a computing environment
US8984109B2 (en) 2010-11-02 2015-03-17 International Business Machines Corporation Ensemble having one or more computing systems and a controller thereof
US8959220B2 (en) * 2010-11-02 2015-02-17 International Business Machines Corporation Managing a workload of a plurality of virtual servers of a computing environment
US8966020B2 (en) 2010-11-02 2015-02-24 International Business Machines Corporation Integration of heterogeneous computing systems into a hybrid computing system
US9288117B1 (en) 2011-02-08 2016-03-15 Gogrid, LLC System and method for managing virtual and dedicated servers
US9461933B2 (en) 2011-03-01 2016-10-04 Nec Corporation Virtual server system, management server device, and system managing method
JP5640844B2 (ja) * 2011-03-18 2014-12-17 富士通株式会社 仮想計算機制御プログラム、計算機、及び仮想計算機制御方法
WO2012147116A1 (en) * 2011-04-25 2012-11-01 Hitachi, Ltd. Computer system and virtual machine control method
US8880657B1 (en) 2011-06-28 2014-11-04 Gogrid, LLC System and method for configuring and managing virtual grids
CN103649910A (zh) * 2011-07-11 2014-03-19 惠普发展公司,有限责任合伙企业 虚拟机放置
US8924548B2 (en) 2011-08-16 2014-12-30 Panduit Corp. Integrated asset tracking, task manager, and virtual container for data center management
US9134992B2 (en) * 2011-08-31 2015-09-15 Vmware, Inc. Interactive and visual planning tool for managing installs and upgrades
US9733983B2 (en) * 2011-09-27 2017-08-15 Oracle International Corporation System and method for surge protection and rate acceleration in a traffic director environment
US9015823B2 (en) 2011-11-15 2015-04-21 Nicira, Inc. Firewalls in logical networks
CN103116524A (zh) * 2011-11-16 2013-05-22 鸿富锦精密工业(深圳)有限公司 Cpu使用率调整系统及方法
JP5537600B2 (ja) * 2012-05-15 2014-07-02 株式会社Nttドコモ 制御ノード及び通信制御方法
JP5466740B2 (ja) * 2012-08-27 2014-04-09 株式会社日立製作所 仮想サーバのシステム障害回復方法及びそのシステム
JP5377775B1 (ja) 2012-09-21 2013-12-25 株式会社東芝 システム管理装置、ネットワークシステム、システム管理方法およびプログラム
KR101995991B1 (ko) * 2012-11-23 2019-07-03 고려대학교 산학협력단 클라우드 기반 분산병렬 응용 워크플로우 실행 서비스의 제공 방법, 장치 및 시스템
US9264486B2 (en) 2012-12-07 2016-02-16 Bank Of America Corporation Work load management platform
JP2014126940A (ja) * 2012-12-25 2014-07-07 Hitachi Systems Ltd クラウド構成管理支援システム、クラウド構成管理支援方法及びクラウド構成管理支援プログラム
JP6094288B2 (ja) * 2013-03-15 2017-03-15 日本電気株式会社 リソース管理装置、リソース管理システム、リソース管理方法、及び、リソース管理プログラム
US9444704B2 (en) 2013-05-20 2016-09-13 Hitachi, Ltd. Method for controlling monitoring items, management computer, and computer system in cloud system where virtual environment and non-virtual environment are mixed
JP6382819B2 (ja) * 2013-08-21 2018-08-29 株式会社東芝 データベースシステム、ノード、管理装置、プログラムおよびデータ処理方法
EP2849064B1 (en) * 2013-09-13 2016-12-14 NTT DOCOMO, Inc. Method and apparatus for network virtualization
US20150081400A1 (en) * 2013-09-19 2015-03-19 Infosys Limited Watching ARM
CN104660433A (zh) * 2013-11-22 2015-05-27 英业达科技有限公司 将多服务器编组以进行同时管理的系统及其方法
JP6331549B2 (ja) * 2014-03-25 2018-05-30 日本電気株式会社 仮想マシン管理装置、仮想マシン管理方法、及び仮想マシン管理システム
US20210004675A1 (en) * 2019-07-02 2021-01-07 Teradata Us, Inc. Predictive apparatus and method for predicting workload group metrics of a workload management system of a database system
US11748173B2 (en) * 2019-07-19 2023-09-05 Ricoh Company, Ltd. Information processing system, information processing method, and storage medium for controlling virtual server that executes program
TWI742774B (zh) * 2020-07-22 2021-10-11 財團法人國家實驗研究院 運算系統及其主機資源分配方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003124976A (ja) * 2001-10-10 2003-04-25 Hitachi Ltd 計算機資源割当方法
JP2004062911A (ja) * 2002-07-26 2004-02-26 Hewlett-Packard Development Co Lp コンピュータ資源の割り当てを管理するシステム
JP2005115653A (ja) * 2003-10-08 2005-04-28 Ntt Data Corp 仮想マシン管理装置及びプログラム
JP2005148875A (ja) * 2003-11-12 2005-06-09 Hitachi Ltd 論理区画の資源動的割り当て変更方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6728748B1 (en) * 1998-12-01 2004-04-27 Network Appliance, Inc. Method and apparatus for policy based class of service and adaptive service level management within the context of an internet and intranet
US6587938B1 (en) * 1999-09-28 2003-07-01 International Business Machines Corporation Method, system and program products for managing central processing unit resources of a computing environment
JP2002202959A (ja) * 2000-12-28 2002-07-19 Hitachi Ltd 動的な資源分配をする仮想計算機システム
JP4018900B2 (ja) * 2001-11-22 2007-12-05 株式会社日立製作所 仮想計算機システム及びプログラム
JP4119162B2 (ja) * 2002-05-15 2008-07-16 株式会社日立製作所 多重化計算機システム、論理計算機の割当方法および論理計算機の割当プログラム
US7290260B2 (en) * 2003-02-20 2007-10-30 International Business Machines Corporation Dynamic processor redistribution between partitions in a computing system
US7478393B2 (en) * 2003-04-30 2009-01-13 International Business Machines Corporation Method for marketing to instant messaging service users

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003124976A (ja) * 2001-10-10 2003-04-25 Hitachi Ltd 計算機資源割当方法
JP2004062911A (ja) * 2002-07-26 2004-02-26 Hewlett-Packard Development Co Lp コンピュータ資源の割り当てを管理するシステム
JP2005115653A (ja) * 2003-10-08 2005-04-28 Ntt Data Corp 仮想マシン管理装置及びプログラム
JP2005148875A (ja) * 2003-11-12 2005-06-09 Hitachi Ltd 論理区画の資源動的割り当て変更方法

Also Published As

Publication number Publication date
US20070233838A1 (en) 2007-10-04
JP2007272263A (ja) 2007-10-18

Similar Documents

Publication Publication Date Title
JP4519098B2 (ja) 計算機の管理方法、計算機システム、及び管理プログラム
US9396026B2 (en) Allocating a task to a computer based on determined resources
CN108701059B (zh) 多租户资源分配方法和系统
US20200293355A1 (en) Platform independent gpu profiles for more efficient utilization of gpu resources
US9183016B2 (en) Adaptive task scheduling of Hadoop in a virtualized environment
US9977689B2 (en) Dynamic scaling of management infrastructure in virtual environments
US9304803B2 (en) Cooperative application workload scheduling for a consolidated virtual environment
US8667496B2 (en) Methods and systems of managing resources allocated to guest virtual machines
US8291430B2 (en) Optimizing system performance using spare cores in a virtualized environment
US8914546B2 (en) Control method for virtual machine and management computer
JP5577412B2 (ja) 計算機システム、マイグレーション方法及び管理サーバ
US20100211958A1 (en) Automated resource load balancing in a computing system
US20090089780A1 (en) Method and apparatus to convey physical resource relationships
JP2010282420A (ja) 管理計算機、リソース管理方法、リソース管理プログラム、記録媒体および情報処理システム
JP2006048680A (ja) 複数のインスタンスアプリケーションに対し負荷分散装置を動作させるシステムおよび方法
JP2012226427A (ja) リソース管理方法及び計算機システム
WO2022108631A1 (en) Coordinated container scheduling for improved resource allocation in virtual computing environment
US11385972B2 (en) Virtual-machine-specific failover protection
JP5151509B2 (ja) 仮想マシンシステム及びそれに用いる仮想マシン分散方法
US11656914B2 (en) Anticipating future resource consumption based on user sessions
JP2011170679A (ja) 仮想計算機システムおよびその資源配分制御方法
JP2010026828A (ja) 仮想計算機の制御方法
JP6374059B2 (ja) コンピュータ資源配分決定方法、コンピュータ資源配分決定方法プログラムおよび制御用コンピュータ
JP2016038888A (ja) 情報処理システム、情報処理方法及び情報処理プログラム
WO2020234917A1 (ja) 仮想化基盤制御装置、仮想化基盤制御方法および仮想化基盤制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080814

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100204

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100412

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: 20100511

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100518

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130528

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130528

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees