JP6568232B2 - 計算機システム、及び、装置の管理方法 - Google Patents

計算機システム、及び、装置の管理方法 Download PDF

Info

Publication number
JP6568232B2
JP6568232B2 JP2017553595A JP2017553595A JP6568232B2 JP 6568232 B2 JP6568232 B2 JP 6568232B2 JP 2017553595 A JP2017553595 A JP 2017553595A JP 2017553595 A JP2017553595 A JP 2017553595A JP 6568232 B2 JP6568232 B2 JP 6568232B2
Authority
JP
Japan
Prior art keywords
information
management computer
service
management
policy
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.)
Active
Application number
JP2017553595A
Other languages
English (en)
Other versions
JPWO2017094194A1 (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
Publication of JPWO2017094194A1 publication Critical patent/JPWO2017094194A1/ja
Application granted granted Critical
Publication of JP6568232B2 publication Critical patent/JP6568232B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1694Configuration of memory controller to different memory types
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、計算機システムの技術に関し、特に、装置を管理する技術に関する。
計算機システムの規模が拡大するにつれて、計算機システムの運用管理も複雑になっている。そこで、計算機システムの管理をサービスとして提供する管理SaaS(Software as a Service)が提案されている。
特許文献1には、管理対象の複数の計算機について、それらの計算機がそれぞれ有するオブジェクト(例えば、ストレージ装置のボリュームなど)に係る情報を全て収集して、それらの計算機を管理する技術が開示されている。
米国特許第7707199号明細書
しかし、特許文献1の場合、管理計算機は、複数の計算機のそれぞれが有するオブジェクトに係る全ての情報を収集する必要がある。したがって、計算機システムの規模が拡大するにつれて、管理計算機の負荷が増大し、さらに、オブジェクト情報を提供する計算機の負荷も増大してしまう。
そこで、本発明の目的は、計算機システムの有する複数の装置を管理する場合における、管理計算機及び複数の装置の負荷を軽減することにある。
一実施形態に係る計算機システムは、複数の装置及び複数の管理計算機を有する。デバイスは、管理計算機から管理対象とされる1つ以上のオブジェクトを有する。複数の管理計算機は、1つ以上のオブジェクトを管理対象とするサービスを提供する。各サービスの各オブジェクトには、情報提供の周期が設定されている。複数の管理計算機のうちの1つである代表管理計算機は、オブジェクト情報の収集に関するポリシが定義されている情報収集ポリシと、実行中の各サービスの各オブジェクトに設定されている情報提供の周期と、に基づいて、各オブジェクト情報の収集を担当する管理計算機を決定し、その決定した各管理計算機に対して、その管理計算機が管理を担当するオブジェクトを通知する。
本発明によれば、計算機システムの有する複数の装置を管理する場合における、管理計算機及び複数の装置の負荷を軽減することができる。
本実施形態の概要を示す説明図である。 計算機システムの構成例を示す。 サービスの提供者と利用者との間でのやり取りの例を示すシーケンスチャートである。 サービス種別管理テーブルの構成例を示す。 構成情報テーブルの構成例を示す。 実行サービス管理テーブルの構成例を示す。 図6に示す実行サービス管理テーブル、情報提供間隔に基づいて時系列で表現した説明図である。 担当管理テーブルの構成例を示す。 サービスが変更される場合における代表管理計算機の処理例を示すフローチャートである。 情報取得方法決定処理の例を示すフローチャートである。 サービスが削除される場合における代表管理計算機の処理例を示すフローチャートである。 オブジェクトが変更される場合における代表管理計算機の処理例を示すフローチャートである。 代表管理計算機における担当決定処理の例を示すフローチャートである。 オブジェクトのリアルタイムの情報の取得要求を受信した場合の処理の例を示すフローチャートである。
以下、実施形態を説明する。以下の説明では、「xxxテーブル」の表現にて情報を説明することがあるが、情報は、どのようなデータ構造で表現されていてもよい。すなわち、情報がデータ構造に依存しないことを示すために、「xxxテーブル」を「xxx情報」と呼ぶことができる。
また、以下の説明では、「プログラム」を主語として処理を説明する場合があるが、プログラムは、プロセッサ(例えばCPU(Central Processing Unit))によって実行されることで、定められた処理を、適宜に記憶資源(例えばメモリ)及び通信インターフェイスデバイスのうちの少なくとも1つを用いながら行うため、処理の主語が、プロセッサ、そのプロセッサを有する装置とされてもよい。プロセッサが行う処理の一部又は全部が、ハードウェア回路で行われてもよい。コンピュータプログラムは、プログラムソースからインストールされてよい。プログラムソースは、プログラム配布サーバ又は記憶メディア(例えば可搬型の記憶メディア)であってもよい。
また、以下の説明では、計算機システムに含まれる少なくとも1つの装置を管理する1以上の計算機の集合を「管理システム」と呼ぶことがある。管理計算機が表示用情報を表示する場合は管理計算機が管理システムでよい。また、管理計算機と表示用計算機の組み合わせも管理システムでよい。また、管理処理の高速化や高信頼化のために複数の計算機で管理計算機と同等の処理を実現してもよく、この場合はそれら複数の計算機(表示を表示用計算機が行う場合は表示用計算機も含んでよい)が管理システムでよい。本実施形態では、管理計算機が管理システムである。また、管理計算機が情報を表示するとは、管理計算機が有する表示デバイスに情報を表示することであってもよいし、管理計算機(例えばサーバ)に接続された表示用計算機(例えばクライアント)に表示用情報を送信することであってもよい。後者の場合、表示用計算機が有する表示デバイスに表示用情報が表す情報が表示用計算機によって表示される。
(第1の実施形態)
図1は、本実施形態の概要を示す説明図である。
計算機システム1は、計算機の一例である複数のストレージ装置2000及び複数の管理計算機1000を有する。ストレージ装置2000は、1つ以上のオブジェクトを有してよい。複数の管理計算機1000は連携して、1つ以上のオブジェクトを管理対象とするサービスを提供可能である。各サービスの各オブジェクトに対して、情報提供の周期が設定されている。
複数の管理計算機1000のうちの1つである代表管理計算機(例えば管理計算機A)は、オブジェクト情報の収集に関するポリシが定義されている情報収集ポリシと、実行中の各サービスの各オブジェクトに設定されている情報提供の周期と、に基づいて、各オブジェクト情報の収集を担当する管理計算機1000(例えば管理計算機B)を決定し、その決定した各管理計算機1000に対して、その管理計算機1000が担当するオブジェクトを通知する。
代表管理計算機は、サービスの稼働状況の変更を検知した場合に、上述の各オブジェクト情報の収集を担当する管理計算機1000の決定、及び、その決定した各管理計算機1000に対する通知の処理を実行してもよい。サービスの稼働状況の変更の例は、新規のサービスが稼働される場合、稼働中のサービスが削除される場合、稼働中のサービスが管理対象とするオブジェクトが変更される場合などである。
図2は、計算機システムの構成例を示す。
本実施形態に係る計算機システム1は、1台以上の管理計算機1000、装置の一例である1台以上のストレージ装置2000、及び、装置の一例である1台以上のサーバ3000を有する。
サーバ3000及びストレージ装置2000は、データ用ネットワークの例であるSAN(Storage Area Network)4000を介して互いに接続される。SANの例は、ファイバチャネル等である。
<管理計算機>
管理計算機1000、ストレージ装置2000、及び、サーバ3000は、管理用ネットワーク5000を介して互いに接続される。
管理計算機1000は、メモリ1100、通信デバイス1200、プロセッサ1300、出力デバイス1400、入力デバイス1500、及び、記憶デバイス1600を有してよい。これらの要素は、内部バス1700を介して双方向通信可能に接続されてよい。
メモリ1100には、サービス種別管理テーブル1120、構成情報テーブル1130、実行サービス管理テーブル1140、担当管理テーブル1150、サービス検知プログラム1160、サービス特定プログラム1170、管理計算機決定プログラム1180、管理計算機連携プログラム1190、情報取得プログラム11100、及び、オブジェクト検知プログラム11110が格納されてよい。
サービス種別管理テーブル1120は、管理計算機1000が提供可能なサービスを管理する。サービス種別管理テーブル1120の詳細については後述する(図4参照)。
構成情報テーブル1130は、計算機システム1の構成に関する情報を管理する。構成情報管理テーブル1130の詳細については後述する(図5参照)。
通信デバイス1200は、管理計算機1000を、管理用ネットワーク5000に接続するためのデバイスである。
プロセッサ1300は、メモリ1100上に展開されているプログラムを実行可能なデバイスである。プロセッサがプログラムを実行することにより、管理計算機1000の有する各種機能が実現されてよい。
出力デバイス1400は、管理計算機1000が実行した処理結果を出力するためのデバイスである。出力デバイスの例は、ディスプレイ、スピーカ等である。
入力デバイス1500は、管理者が管理計算機1000に指示を入力するためのデバイスである。入力デバイスの例は、キーボード、マウス等である。
記憶デバイス1600は、情報(データ)を保持可能なデバイスである。記憶デバイス1600の例は、HDD(Hard Disk Drive)、SSD(Solid State Drive)等である。
1つ以上の物理的な管理計算機上で、複数の仮想的な管理計算機が動作しても良い。この場合、複数の仮想的な管理計算機の各々が、プログラム1160、1170、1180、1190、11100、11110を有し、これらのプログラムを実行してもよい。
本実施形態では、構成情報テーブル1130など、メモリ1100に含まれる各テーブルについて、RDB(Relational Database)の形態を用いて説明する。この場合、典型的には、管理計算機の間でDBの情報の整合性を取った上で送受信することで、管理計算機の間の情報が同期される。しかし、DBの形態及びその同期方法は、それ以外であってもよい。例えば、分散KVS(Key Value Store)によって、管理計算機の間で情報を共有してもよい。
各種プログラム及びテーブルは、メモリ1100以外、例えば、記憶デバイス1600又は他の記憶装置(図示しない)に格納されても良い。この場合、プロセッサ1300は、各種プログラム及びテーブルを取得してメモリ1100に展開し、それらを実行してもよい。又は、ストレージ装置2000のメモリ2100にプログラム及びテーブルが格納されており、ストレージ装置2000又はサーバ3000が、そのメモリ2100に格納されているプログラムを実行しても良い。又は、他のサーバ3000又はスイッチ(図示しない)等の他の装置が、所定のメモリにプログラム及びテーブルを格納し、そのメモリに格納されているプログラムを実行しても良い。
管理計算機1000は、管理用ネットワーク5000を通して、サーバ3000上で動作するプログラムと通信できてよい。
<ストレージ装置>
ストレージ装置2000は、メモリ2100、記憶デバイス2200、ディスクI/Fコントローラ2300、管理I/F2400、プロセッサ2500、及び、データI/F2600を有してよい。これらの要素は、内部バス等の通信路2700を介して双方向通信可能に接続されてよい。
メモリ2100は、ディスクキャッシュ2110を有してよい。ディスクキャッシュ2110は、情報を一時的に格納するための記憶領域である。
メモリ2100には、構成情報収集プログラム2120が格納されてよい。構成情報収集プログラム2120は、ストレージ装置2000の管理情報及び性能情報等を、管理計算機1000との間で送受信するためのプログラムである。
ストレージ装置は、1つ以上の記憶デバイス2200の記憶領域によって構成されるプール2220を有してよい。そして、ストレージ装置2000は、プール2220の領域を論理的に分割し、その論理的に分割した領域を、論理ボリューム2210として提供してよい。外部装置は、通信ネットワークを介して、ストレージ装置2000の提供する論理ボリューム2210にアクセスできてよい。
各プール2220及び論理ボリューム2210には、それぞれ、IDが付与されてよい。これにより、ストレージ装置2000が、プール2220及び論理ボリューム2210を、それぞれ一意に識別可能となる。
図2の場合、1つのプール2220(POOL1)が論理的に分割されて、その分割された1つを用いて、1つの論理ボリューム2210(LV1)が生成されている。そして、その論理ボリューム2210(LV1)が、外部装置(例えば、サーバ3000)に提供されている。なお、1つのプール2220の全記憶領域を用いて、1つの論理ボリューム2210が作成されても良い。
ディスクI/Fコントローラ2300は、記憶デバイス2200を接続及び制御するためのデバイスである。記憶デバイス2200の例は、HDD、フラッシュメモリなどである。
管理I/F2400は、ストレージ装置2000を、管理用ネットワーク5000に接続するためのデバイスである。
プロセッサ2500は、メモリ2100上に展開されたプログラムを実行するデバイスである。
データI/F2600は、ストレージ装置2000を、SAN4000に接続するためのデバイスである。
構成情報収集プログラム2120は、メモリ2100以外、例えば、他の記憶装置又は他の記憶媒体に格納されても良い。この場合、プロセッサ2500は、処理実行時に、構成情報収集プログラム2120を取得してメモリ2100に展開し、それを実行してよい。
又は、構成情報収集プログラム2120は、管理計算機1000のメモリ1100に格納されてもよい。そして、管理計算機1000のプロセッサ1300が、この構成情報収集プログラム2120を実行しても良い。
又は、構成情報収集プログラム2120は、他のストレージ装置に格納されてもよい。そして、他のストレージ装置のプロセッサが、この構成情報収集プログラム2120を実行しても良い。
<サーバ>
サーバ3000は、メモリ3100、データI/F3200、プロセッサ3300、及び、管理I/F3400を有してよい。これの要素は、内部バス等の通信路3500を介して双方向通信可能に接続されてよい。
メモリ3100には、構成情報収集プログラム3110、業務プログラム3120、ボリューム管理プログラム3130が格納されてよい。
構成情報収集プログラム3110は、サーバ3000の管理情報及び性能情報等を、管理計算機1000との間で送受信するためのプログラムである。
業務プログラム3120は、サーバ3000が実行する業務を実現するためのプログラムである。業務プログラム3120の例は、DBMS(Data Base Management System)、ファイルシステム等である。
ボリューム管理プログラム3130は、ストレージ装置2000によって提供される論理ボリューム2210をサーバ3000に割り当てるためのプログラムである。
サーバ3000は、ストレージ装置2000から提供された論理ボリューム2210を用いて、各種業務を行う。
各種プログラムは、メモリ3100以外、例えば、他の記憶デバイスに格納されていても良い。この場合、プロセッサ3300は、処理実行時に、処理対象のプログラムを取得してメモリ3100に展開し、そのプログラムを実行してよい。
図2の場合、サーバAとストレージ装置Aとは、SAN4000を介して互いに接続されている。ストレージ装置2000とサーバ3000との間の接続は、ファイバチャネルを介する直接接続に限定されない。例えば、1台以上のファイバチャネルスイッチ等のネットワーク機器を介して接続されても良い。ストレージ装置2000とサーバ3000との間の接続は、データ通信用のネットワークであれば良く、例えば、IP(Internet Protocol)ネットワークでも良い。
図3は、サービスの提供者と利用者との間でのやり取りの例を示すシーケンスチャートである。
(S1)サービス利用者は、サービス提供者に対して、サービスの利用要求を発行する。サービスの利用要求には、サービスを適用する業務、情報提供間隔などの要求が含まれてよい。この操作が、図9のフローチャートにおけるステップ101や、図11のフローチャートにおけるステップ301などの処理に相当してもよい。
(S2)サービス提供者は、サービスの利用要求を受領すると、そのサービスの利用要求に基づいて、サービスで利用されるオブジェクト(サーバ、ストレージ等の構成要素。リソースと呼んでもよい)、及び、そのサービスを管理するためのサービスを特定する。本実施形態における「サービス」は、サービス利用者に提供されるサービスを管理するためのサービス(すなわち「管理サービス」)であってよい。
(S3)サービス提供者は、サービス利用者に対して、利用要求されたリソースを提供すると共に、その提供したオブジェクトを管理するためのサービスを提供する。
サービスに係る情報には、サービス利用者がサービスを適用する業務に係る情報(アプリケーションやシステムなど)も含まれてよい。
図4は、サービス種別管理テーブル1120の構成例を示す。
サービス種別管理テーブル1120は、サービス種別に関する情報を管理するためのテーブルである。サービス種別管理テーブル1120は、項目値(又はカラム値。以下同じ)として、サービス種別1121、情報提供間隔1122、オブジェクト種別1123を有してよい。
サービス種別1121は、利用者に提供可能な管理サービスの種別(又は識別子)である。管理サービス種別の例は、性能監視サービス、性能分析サービス、データ最適配置サービス、データ容量監視サービスである。例えば、性能監視サービスは、オブジェクトの性能に関する情報を周期的に取得し、そのオブジェクトの性能に問題が発生しているか否かを提示する管理サービスである。
情報提供間隔1122は、サービス種別1121の管理サービスにおいて設定可能な情報提供の間隔(周期)を示す値である。例えば、サービス種別1121「性能監視サービス」に対する情報提供間隔1122が「5分以上」の場合、性能監視サービスは、5分以上の間隔(周期)で情報を提供可能であることを示す。情報提供間隔1122は、「5分以上」のように下限値のみを設定できても良いし、「5分から60分の間」のように下限値と上限値を設定できても良い。又は、情報提供間隔1122には、周期的な情報提供ではなく、利用者が要求したときの最新情報を提供する、「リアルタイム」を設定できても良い。情報提供間隔1122は、オブジェクト種別1123毎に設定できてもよい。
オブジェクト種別1123は、サービス種別1121のサービスを提供するために必要なオブジェクトの種別を示す情報である。オブジェクト種別1123は、例えば、管理サービスがストレージ装置を管理対象とする場合、「論理ボリューム」、「プール」、「ポート」、「プロセッサ」、「キャッシュ」などである。サービスが対象とする装置は、サーバ、スイッチ、仮想的なリソース(仮想サーバ)などであってもよい。すなわち、オブジェクト種別1123は、サービスが対象とする装置の物理的及び論理的な構成要素に相当してよい。
例えば、性能分析サービスから、ストレージ装置に係るオブジェクト種別の「ボリューム」、「ポート」、「プール」に係る情報の提供を受けた後に、分析結果に基づいて対策を行う際に、仮想計算機のディスク情報が必要になるような場合もある。この場合、そのような仮想計算機のディスク情報を予め取得しておけるように、性能分析サービス1121におけるオブジェクト種別1123に、「仮想計算機のディスク情報」を追加しておいてもよい。すなわち、サービス種別1121には、そのサービス種別の実現に直接的に必要なオブジェクト種別1123に限らず、そのサービス種別に関連するオブジェクト種別1123も対応付けられてよい。
サービス種別管理テーブル1120の内容は、予め設定されてよい。又は、サービス種別管理テーブル1120の内容は、計算機システム1の各装置から収集した情報に基づいて、自動的に設定されてもよい。例えば、性能監視ソフトウェアが、計算機システム1の各装置から情報を収集し、その収集した情報に基づいて、性能監視サービスに関する設定を行ってもよい。
情報提供間隔1120は、オブジェクト数によって設定可能な間隔が異なってもよい。例えば、オブジェクト数が10000個未満の場合、情報提供間隔1120「5分以上」で情報を提供可能であり、オブジェクト数が10000個以上の場合、情報提供間隔「10分以上」で情報を提供可能であるとしてもよい。
図5は、構成情報テーブル1130の構成例を示す。
構成情報テーブル1130は、計算機システム1の構成に関する情報を管理するためのテーブルである。構成情報テーブル1130は、項目値として、業務ID1131、サーバID1132、仮想計算機ID1133、ストレージID1134、ポートID1135、ボリュームID1136、及び、プールID1137を有してよい。
業務ID1131は、サーバ3000で運用されている業務プログラムの識別子である。
サーバID1132は、サーバ3000の識別子である。
仮想計算機ID1133は、サーバ3000で動作する仮想計算機の識別子である。
ストレージID1134は、サーバ3000のアクセス先となるストレージ装置2000の識別子である。
ポートID1135は、物理サーバ3000がボリュームID1136の論理ボリューム2210にアクセスする際に利用する、ストレージ装置2000のデータI/F2600の識別子である。
ボリュームID1136は、論理ボリューム2210の識別子である。
プールID1137は、ボリュームID1136の論理ボリューム2210の生成に使用されているプール2220の識別子である。
構成情報テーブル1130のレコードは、サーバ3000上で動作している業務プログラムから、そのサーバ3000が使用している論理ボリュームを構成するプールまでのI/O(入出力)経路上に存在する装置を示してもよい。例えば、図5の業務ID1131「業務X」のレコードは、業務Xのアプリケーションが、サーバID1132「Sv1」上で稼働している仮想計算機ID1133「VM1」で稼働しており、その業務Xのアプリケーションは、ストレージID1134「Stg1」のポートID1135「PortA」を介して、ボリュームID1136「Vol1」にアクセス可能であり、この「Vol1」はプールID1137「Pool10」から生成されていることを示す。
管理計算機1000は、計算機システム1の各装置等から収集した情報を用いて、構成情報テーブル1130を生成してよい。
管理計算機1000は、各オブジェクト情報(性能情報を含んでよい)とは別に、構成情報テーブル1130に係る情報を予め取得してよい。そして、後述する性能情報の取得方法を決定する際に、構成情報テーブル1130は生成済みであってよい。
また、管理計算機1000同士は、構成情報テーブル1130の情報を共有できてよい。共有の方法は、分散DBなど、どのような方法であってもよい。
構成情報テーブル1130の業務ID1131に対応付けられている各ID1132乃至1137は、その業務ID1131の業務プログラムの実行において利用されるオブジェクトと言うこともできる。オブジェクトは、物理又は仮想の何れであってもよい。
構成情報テーブル1130の項目値は、図5に限られない。例えば、構成情報テーブル1130は、項目値として、業務プログラムがアクセスの際に利用するオブジェクトである、サーバ3000のマウントポイントに係るドライブのIDを有してもよい。例えば、構成情報テーブル1130は、項目値として、サーバ3000がボリュームID1136によって示される論理ボリューム2210にアクセスする際に利用されるサーバ3000のデータI/F3200のIDを有してもよい。例えば、構成情報テーブル1130は、項目値として、論理ボリューム2210に対するI/O処理に利用されるプロセッサ1300のIDを有してもよい。例えば、構成情報テーブル1130は、項目値として、スイッチ又はスイッチのデータI/F等のIDを有してもよい。例えば、構成情報テーブル1130は、項目値として、業務サーバ3000上の業務プログラム(DBMS等)のIDを有してもよい。
図6は、実行サービス管理テーブル1140の構成例を示す。
実行サービス管理テーブル1140は、実行中のサービスを管理するためのテーブルである。実行サービス管理テーブル1140は、項目値として、実行サービスID1141、サービス種別1142、情報提供間隔1143、業務ID1144、装置種別1145、装置ID1146、オブジェクト種別1147、オブジェクトID1148を有してよい。
実行サービスID1141は、実行中のサービスの識別子である。
サービス種別1142は、実行サービスID1141のサービス種別を示す情報である。サービス種別1142の情報は、サービス種別管理テーブル1120のサービス種別1121の何れかであってよい。
情報提供間隔1143は、実行サービスID1141のサービスにおける情報提供の間隔を示す値(時間)である。情報提供間隔1143は、利用者又は管理計算機によって設定されてよい。情報提供間隔1143は、サービス種別管理テーブル1120の情報提供間隔1122で設定されている範囲内の値を取り得る。
業務ID1144は、実行サービスID1141のサービスが適用されている業務プログラムを示す識別子である。業務ID1144は、利用者又は管理計算機1000によって設定されてよい。業務ID1144は、構成情報テーブル1130の業務ID1131の何れかであってよい。
サービスの中には、業務毎に分かれず、計算機システムとして一体的に管理するようなサービスも存在してよい。その場合、業務ID1144には、例えば「N/A」が設定されてよい。図6の場合、実行サービスID1140「2」且つサービス種別1142「容量監視サービス」のレコードにおいて、業務ID1144が「N/A」となっている。この場合、全てのプール(1147)がサービスの対象となる。
装置種別1145は、実行サービスID1140のサービスの提供に必要なデバイスの種別を示す情報である。装置種別1145の例は、サーバ、スイッチ、ストレージである。
装置ID1146は、実行サービスID1140のサービスの提供に必要な装置の識別子である。つまり、装置ID1146の装置の種別が、装置種別1145である。
オブジェクト種別1147は、実行サービスID1140のサービスの提供に必要なオブジェクトの種別を示す情報である。オブジェクト種別1147の例は、ポート、ボリューム、プールである。
オブジェクトID1148は、実行サービスID1140のサービスの提供に必要なオブジェクトの識別子である。つまり、オブジェクトID1148のオブジェクトの種別が、オブジェクト種別1147である。
サービス特定プログラム1170は、サービス利用要求、サービス種別管理テーブル1120、及び/又は、構成情報テーブル1130の情報を用いて、上述の項目値を設定してよい。サービス利用要求は、図3で説明したように、利用者から、入力デバイス1500又は通信デバイス1200を介して入力されてよい。
サービス特定プログラム1170は、サービス種別管理テーブル1120のサービス種別1121とオブジェクト種別1123の対応関係に基づいて、実行サービス管理テーブル1140のサービス種別1142とオブジェクト種別1147の対応関係を決定してよい。
サービス特定プログラム1170は、構成情報テーブル1130の業務ID1131と各オブジェクト1132乃至1137の対応関係に基づいて、実行サービス管理テーブル1140の業務ID1144と、装置種別1145、装置ID1146及びオブジェクトID1148との対応関係を決定してよい。
図7は、図6に示す実行サービス管理テーブル1140を、情報提供間隔1143に基づいて時系列で表現した説明図である。
図7は、情報提供間隔のタイミング(例えば、5分、10分、15分、20分、25分、30分)において、サービスID1140、装置ID1146、オブジェクト種別1147、及び、オブジェクトID1148によって特定されるそれぞれのオブジェクト情報を取得する必要があるか否かを示している。図7において、各情報提供間隔のタイミングの「○」は、その「○」に対応するオブジェクト情報を、そのタイミングで取得する必要があることを示している。
同一の情報提供間隔のタイミングにおいて、異なるサービスID1141のサービスに含まれる同一のオブジェクトID1148のオブジェクト情報を取得する場合、管理計算機1000は、何れか一方のサービスのオブジェクトID1148に係る情報を取得すればよい。なぜなら、同一の情報提供間隔のタイミングにおいて、異なるサービスID1141のそれぞれにおける同一のオブジェクト情報は、同一の情報であるからである。例えば、図7の場合、情報提供間隔のタイミング「10分」において、サービスID1141「1」に含まれるオブジェクトID1148「PortA」に係る情報と、サービスID1141「3」に含まれるオブジェクトID1148「PortA」に係る情報とは、同一の情報である。よって、管理計算機1000は、サービスID1141「1」又は「3」の何れか一方のオブジェクトID1148「PortA」に係る情報を取得すればよい。すなわち、管理計算機1000は、情報提供間隔のタイミング「10分」において、装置ID1146「Stg1」のストレージ装置に対して、オブジェクトID1148「PortA」に係る情報の取得要求を1つだけ発行すればよい。
同一の情報提供間隔のタイミングにおいて、異なるサービスID1141のサービスに含まれる、同一の装置ID1146且つ同一のオブジェクト種別1147に対応するオブジェクト情報を取得する場合、管理計算機1000は、それらの情報をまとめて取得すればよい。例えば、図7の場合、情報提供間隔のタイミング「10分」において、サービスID1141「1」に含まれるオブジェクトID1148「Vol1」、「Vol2」と、サービスID1141「3」に含まれるオブジェクトID1148「Vol3」とは、同一の装置ID1146「Stg1」且つ同一のオブジェクト種別1147「ボリューム」である。よって、管理計算機1000は、情報提供間隔のタイミング「10分」において、装置ID1146「Stg1」のストレージ装置に対して、オブジェクトID1148「Vol1」、「Vol2」及び「Vol3」に係る情報の取得要求を1つだけ発行すればよい。このように、複数のオブジェクト情報の取得要求がまとめられた取得要求は、「バルク取得要求」と呼ばれてよい。
これにより、取得要求の発行数を軽減することができる。また、同一のオブジェクト情報が重複して格納されることを回避することができる。よって、計算機システム1及び管理計算機1000におけるネットワーク負荷、及び/又は、処理負荷を軽減することができる。また、管理計算機1000における記憶デバイスの容量の利用効率化を図ることができる。なお、図6及び図7に関する処理の詳細については後述する(図9及び図10参照)。
図8は、担当管理テーブル1150の構成例を示す。
担当管理テーブル1150は、オブジェクト情報の収集を担当する管理計算機1000を管理するためのテーブルである。担当管理テーブル1150は、項目値として、タイミング1151、管理計算機ID1152、装置種別1153、装置ID1154、オブジェクト種別1155、オブジェクトID1156、関連サービスID1157を有してよい。
タイミング1151は、管理計算機1000が、オブジェクトID1156に係る情報の取得要求を発行するタイミングを示す値である。タイミング1151の値は、実行中の全ての(又は所定のグループの)サービスの情報提供間隔1143の最小公倍数を1つの周期とし、その周期内における実行中の各サービスの情報提供間隔1143の周期毎のタイミングであってよい。例えば、図6の場合、タイミング1151は、情報提供間隔1143「10分」、「15分」、「5分」の最小公倍数である「30分」を1つの周期とし、その周期内における実行中の各サービスの情報提供間隔の周期毎のタイミングである「5分」、「10分」、「15分」、「20分」、「25分」、「30分」の何れかであってよい(図7も参照)。
管理計算機ID1152は、タイミング1151において、取得要求を発行する管理計算機1000の識別子である。
装置種別1153、装置ID1154、オブジェクト種別1155、オブジェクトID1156は、図6で説明した通りである。
関連サービスID1157は、タイミング1151において、オブジェクトID1156のオブジェクトに係る取得を必要とするサービスの識別子である。
図8のタイミング1151「30分」において、管理計算機ID1152「1」は、装置ID1154「Stg1」に対して、オブジェクトID1156「PortA」に係るオブジェクト情報の取得要求を1つ発行する。オブジェクトID1156「PortA」に係る情報は、関連サービスID1157「1」及び「3」で必要とされているが、同一の情報であるので、管理計算機ID1152「1」は、タイミング「30分」において取得要求を1つだけ発行すればよい。
また、図8のタイミング1151「30分」において、管理計算機ID1152「3」は、装置ID1154「Stg1」に対して、オブジェクトID1156「Pool10」及び「Pool11」に係るオブジェクト情報のバルク取得要求を1つ発行する。これらは、同一の装置ID「Stg1」且つ同一のオブジェクト種別1155「プール」であるからである。
計算機システム1における複数の管理計算機1000のうちの1つの管理計算機(「代表管理計算機」という)は、上述のように、或るタイミングにおいて、1つの管理計算機が取得要求を1つだけ発行すれば良いように、及び/又は、1つの管理計算機がバルク取得要求を1つだけ発行すれば良いように、各オブジェクト情報の取得を担当する管理計算機を決定(振り分け)してよい。
図9は、サービスが変更される場合における、代表管理計算機の処理例を示すフローチャートである。
本処理は、代表管理計算機のプロセッサ1300が、メモリ1100上に展開されたサービス検出プログラム1160、サービス特定プログラム1170、管理計算機決定プログラム1180、及び、管理計算機連携プログラム1190を実行することによって実現されてよい。本処理は、新規サービスが実行追加される場合の例であるが、実行中のサービスと対応付けられているオブジェクトが更新される場合などであっても同様である。
(ステップ101)サービス検出プログラム1160は、サービスの実行状況の変更(サービスの新規追加・変更など)を検出すると、ステップ102へ進む。このとき、サービス検出プログラム1160は、サービスの更新内容の情報を受信してよい。例えば、この変更内容の情報は、入力デバイス1500及びGUIを介して利用者によって入力された情報であってもよい。又は、この変更内容の情報は、他の管理計算機から送信された情報であってもよい。変更内容の情報には、利用者が新たに選択したサービス種別、追加又は変更されるサービス種別、情報提供間隔、サービスの対象とされている業務などの情報が含まれてよい。そして、サービス検出プログラム1160は、この変更内容の情報を、サービス種別1142、情報提供間隔1143、業務ID1144に設定し、新規のサービスID1141のレコードとして、実行サービス管理テーブル1140に登録してよい。
(ステップ102)サービス特定プログラム1170は、サービスの提供に必要なオブジェクトと、そのオブジェクト情報の取得タイミングとを特定する。そして、ステップ103へ進む。例えば、サービス特定プログラム1170は、構成情報テーブル1130を参照し、ステップ101においてサービスの対象として選択された業務に関連する構成情報を取得してもよい。典型的には、サービス特定プログラム1170は、構成情報テーブル1130から、ステップ101においてサービスの対象として選択された業務ID1131に対応する、サーバID1132、仮想計算機ID1133、ストレージID1134、ポートID1135、ボリュームID1136、プールID1137を取得してよい。さらに、サービス特定プログラム1170は、サービス種別管理テーブル1120を参照し、その取得した構成情報の中から管理対象となるオブジェクトを抽出し、その抽出したオブジェクトに関する情報を、実行サービス管理テーブル1140の1つのレコードの装置種別1145、装置ID1146、オブジェクト種別1147、オブジェクトID1148に格納してもよい。また、サービス特定プログラム1170は、アクセスを管理する機能と連携して、サービスの利用者がアクセス可能なオブジェクト情報を特定し、その特定した情報のみを実行サービス管理テーブル1140に格納しても良い。
(ステップ103)管理計算機決定プログラム1180は、担当管理テーブル1150の情報を参照し、各管理計算機1000が担当しているサービス及びオブジェクト情報、及び、情報取得のタイミング1151を特定する。そして、ステップ104へ進む。
(ステップ104)管理計算機決定プログラム1180は、各サービスのタイミング1157の最小公倍数を算出し、それを取得周期として設定する。そして、ステップ105へ進む。例えば、管理計算機決定プログラム1180は、実行追加される新規サービスの情報提供間隔、及び、実行サービス管理テーブル1140の全ての(又は所定のグループ内の)情報提供間隔1143における最小公倍数を算出する。例えば、図6の場合、実行中サービスID1141「1」の情報提供間隔1143が「10分」、実行中サービスID1141「2」の情報提供間隔1143が「15分」であり、新規追加サービスのサービスID1141「3」の情報提供間隔1143が「5分」であるため、「10分」と「15分」と「5分」との最小公倍数である「30分」を取得周期としてよい。この場合、取得周期内で各サービスが情報を取得するそれぞれのタイミングは、「5分」、「10分」、「15分」、「20分」、「25分」、「30分」となる。
(ステップ105)管理計算機決定プログラム1180は、装置(A)及びオブジェクト種別(B)の組み合わせによるループ処理毎に、取得周期内の各タイミングに対応する情報取得ポリシを特定する。そして、ステップ106へ進む。ループ処理(A)及び(B)の対象として選択された装置及びオブジェクト種別を、それぞれ、「選択装置」及び「選択オブジェクト種別」という。ここで、情報取得ポリシには、オブジェクト情報の収集に関するポリシが定義されている。例えば、情報取得ポリシには、実行中の複数の異なるサービスの中に、情報提供の周期の繰り返しの中で一致するタイミングを有し、且つ、同一のオブジェクトが含まれている場合、これら同一のオブジェクト情報の収集を1つの管理計算機1000に担当させるという第1のポリシが定義されていてもよい。例えば、情報取得ポリシには、複数の異なるサービスの中に、情報提供の周期の繰り返しの中で一致するタイミングを有し、且つ、同一の種類のオブジェクトが含まれており、さらに、これらの同一の種類のオブジェクトが1つの装置に含まれている場合、これら同一の種類のオブジェクト情報の収集を1つの管理計算機1000に担当させるという第2のポリシが定義されていてもよい。
(ステップ106)管理計算機決定プログラム1180は、ステップ105において特定した情報取得ポリシに従い、当該ループ処理の対象として選択されたタイミング(例えば、n番目のタイミング(nは正の整数)。以下「選択タイミング」という)における、情報取得方法決定処理を実行する。そして、ステップ107へ進む。なお、情報取得ポリシは、テーブルに文字列形式で格納されるなど、どのような形式であっても良い。情報取得ポリシの内容は、利用者によって設定されてもよいし、又は、予め管理計算機に組み込まれていてもよい。この情報取得方法決定処理の詳細については後述する(図10参照)。
(ステップ107)管理計算機連携プログラム1190は、管理計算機の担当決定処理を実行する。本処理の詳細については後述する(図13参照)。そして、ステップ108へ進む。
(ステップ108)管理計算機連携プログラム1190は、ステップ107で決定した各管理計算機1000に、担当すべきオブジェクトなどの情報を通知し、本処理を終了する。通知を受けた各管理計算機1000は、自分が担当のタイミングにおいて、自分が担当する装置に対して、情報取得ポリシに従い、オブジェクト情報の取得要求を発行する。例えば、通知を受領した管理計算機1000は、上述の第1のポリシに従う場合、情報提供の周期の繰り返しの中で一致するタイミングにおいて、同一のオブジェクトを有する装置に対して、同一のオブジェクト情報の要求を1つ発行してよい。例えば、通知を受領した管理計算機1000は、上述の第2のポリシに従う場合、情報提供の周期の繰り返しの中で一致するタイミングにおいて、1つの装置に対して、同一の種類の複数のオブジェクト情報の要求(バルク取得要求)を1つ発行してよい。
管理計算機間における通知のため、各管理計算機1000は、自他の管理計算機の一覧情報を、テーブルとして保持してもよい。この管理計算機の一覧情報を保持するテーブルは、各管理計算機にアクセスするために必要な情報を保持してよい。例えば、このテーブルは、管理計算機の識別子(識別情報)と、管理計算機のIPアドレスと、管理計算機の設置場所の情報(例えばサイト情報)とを対応付けるレコードを有してよい。このテーブルは、全ての管理計算機で共有されてよい。例えば、このテーブルは、管理計算機連携プログラム同士が連携、DBの機能を利用、又は、DNSのようにネームサーバを利用するなどによって共有されてよい。
図10は、情報取得方法決定処理の例を示すフローチャートである。当該フローチャートは、図9のステップ106の詳細に相当する。
(ステップ201)管理計算機決定プログラム1180は、図9の選択タイミングにおいて、選択装置の選択オブジェクト種別が既に取得対象となっているか否かを判定する。管理計算機決定プログラム1180は、ステップ201の判定結果が肯定的な場合(YES)、ステップ202へ進み、否定的な場合(NO)、ステップ204へ進む。
(ステップ202)管理計算機決定プログラム1180は、選択タイミングにおいて、選択装置の選択オブジェクト種別に含まれる1つ以上のオブジェクトの中から1つ選択し(「選択オブジェクト」という)、選択オブジェクト情報が既に取得対象となっているか否かを判定する。すなわち、管理計算機決定プログラム1180は、同一のタイミングにおいて、同一のオブジェクトが存在するか否かを判定する。ステップ202の判定結果が肯定的な場合(YES)、管理計算機決定プログラム1180は、別のオブジェクトを選択し、同様の判定を行う。なぜなら、この選択オブジェクト情報は、取得する必要が無いからである。ステップ202の判定結果が否定的な場合(NO)、管理計算機決定プログラム1180は、ステップ203へ進む。
(ステップ203)管理計算機決定プログラム1180は、選択タイミングにおいて、選択装置の選択オブジェクト種別を既に担当している管理計算機を、選択オブジェクトの担当に決定する。そして、管理計算機決定プログラム1180は、未選択のオブジェクトが残っている場合、別のオブジェクトを選択してステップ202及び203を行い(ループ処理(A)を実行し)、そうでない場合、本処理の呼び出し元へ戻る。
これにより、同じ種別のオブジェクト情報をまとめて取得要求(バルク取得要求)することができる。バルク取得要求には、複数の命令セットに対するパラメータを記述できてよい。装置は、バルク取得要求を受領すると、このバルク取得要求に含まれる命令セットを実行し、その実行結果をまとめて1つの応答として返信してもよい。これにより、オブジェクト情報の取得処理が高速化され得る。
バルク取得要求によれば、前処理、後処理に含まれる処理を一度に実施したり、装置に対する物理的な処理に伴うロック取得などの処理を効率化したりすることができる。これにより、装置に対する物理的な処理に起因するボトルネックが改善され、処理が高速化され得る。
(ステップ204)管理計算機決定プログラム1180は、図9の選択タイミングにおいて、選択装置の選択オブジェクト種別が取得対象となっていない場合(ステップ204:NO)、選択オブジェクト種別に係る情報を別のタイミングで取得している管理計算機が存在するか否かを判定する。管理計算機決定プログラム1180は、ステップ204の判定結果が肯定的な場合(YES)、ステップ205へ進み、否定的な場合(NO)、ステップ206へ進む。
(ステップ205)管理計算機決定プログラム1180は、選択オブジェクト種別に係る情報を別のタイミングで取得している管理計算機を、選択タイミングにおける選択オブジェクト種別の担当に決定する。そして、本処理の呼び出し元へ戻る。
(ステップ206)管理計算機決定プログラム1180は、選択タイミングにおいて担当しているオブジェクト数が最少の管理計算機を、選択タイミングにおける選択オブジェクト種別の担当に決定する。そして、本処理の呼び出し元へ戻る。
上述では、ステップ204において、各管理計算機が担当するオブジェクトを、別のタイミングと同じにしている。しかし、このステップ204を実行せずに、ステップ205を実行しても良い。例えば、選択タイミングにおいて、選択装置の選択オブジェクト種別が、取得対象として1つも設定されていない場合、選択タイミングにおいて担当しているオブジェクト数が最少の管理計算機を、選択オブジェクト種別の管理計算機に決定してもよい。又は、CPUやメモリの負荷情報や、情報取得に要する時間などの情報に基づいて、選択オブジェクト種別を担当する管理計算機を決定してもよい。
情報収集ポリシの例は、上述の例の他に、「取得の失敗等に備えて、全てのオブジェクト情報を二重に取得するポリシ」、「利用者毎のSLA等により、特定のデバイスや特定のオブジェクトについてのみ、オブジェクト情報を多重に取得するポリシ」、「特定の期間(何らかの障害事象が発生している場合など)のみ、オブジェクト情報を多重に取得するポリシ」などであってもよい。このように、様々なポリシを定義し、各ポリシに応じた処理プログラムを用意しておくことで、柔軟に情報取得方法を切り替えることが可能となる。これにより、管理計算機の数を好適にし得る。よって、サービスを比較的低コストで提供し得る。
図11は、サービスが削除される場合における、代表管理計算機の処理例を示すフローチャートである。
本処理は、代表管理計算機1000のプロセッサ1300が、メモリ1100上に展開されたサービス検出プログラム1160、サービス特定プログラム1170、管理計算機決定プログラム1180、及び、管理計算機連携プログラム1190を実行することによって実現されてよい。
(ステップ301)サービス検出プログラム1160は、サービスの実行状況の変更(サービスの削除)を検出すると、ステップ302へ進む。このとき、サービス検出プログラム1160は、ステップ101と同様、サービスの削除内容の情報を受信してよい。例えば、この削除内容の情報は、入力デバイス1500及びGUIを介して利用者によって入力された情報であってもよい。又は、この削除内容の情報は、他の管理計算機から送信された情報であってもよい。この削除内容の情報には、利用者が実行中のサービスから選択した削除対象のサービス(「削除対象サービス」という)を示す情報が含まれてよい。
(ステップ302)サービス特定プログラム1170は、実行サービス管理テーブル1140から、削除対象サービスの提供に必要であったオブジェクト情報を削除する。そして、ステップ303へ進む。
(ステップ303)管理計算機決定プログラム1180は、担当管理テーブル1150から、削除対象サービスの関連サービスID1157を有するレコードを削除する。そして、ステップ304へ進む。
(ステップ304)管理計算機連携プログラム1190は、管理計算機の担当決定処理を実行する。本処理の詳細については後述する(図13参照)。そして、本処理を終了する。
図12は、オブジェクトが変更される場合における代表管理計算機の処理例を示すフローチャートである。
本処理は、代表管理計算機1000のプロセッサ1300が、メモリ1100上に展開されたオブジェクト検知プログラム11110、サービス特定プログラム1170、管理計算機決定プログラム1180、及び、管理計算機連携プログラム1190を実行することによって実現されてよい。
(ステップ401)オブジェクト検知プログラム11110は、オブジェクトの変更を検出すると、ステップ402へ進む。オブジェクトの変更の例は、プール2220から論理ボリューム2210が新規に作成された場合などである。例えば、オブジェクト検知プログラム11110は、装置におけるオブジェクトの追加や変更等を検出する。例えば、この変更内容の情報は、管理計算機1000から入力されてもよい。又は、この変更内容の情報は、別の管理計算機から送信された情報であってもよい。又は、この変更内容の情報は、装置から通知されてもよい。又は、この変更内容の情報は、オブジェクト検知プログラム11110が、装置から定期的に取得してもよい。
(ステップ402)オブジェクト検知プログラム11110は、このオブジェクトの変更内容の情報に基づいて、構成情報テーブル1130を変更する。そして、ステップ403へ進む。
(ステップ403)オブジェクト検知プログラム11110は、実行サービス管理テーブル1140を参照し、構成情報テーブル1130において変更されたオブジェクトが、実行中のサービスで利用されているか否かを判定する。オブジェクト検知プログラム11110は、ステップ403の判定結果が肯定的な場合(YES)、ステップ404へ進み、否定的な場合(NO)、本処理を終了する。
(ステップ404)オブジェクト検知プログラム11110は、その変更内容を、実行サービス管理テーブル1140に反映する。そして、ステップ405へ進む。
(ステップ405)オブジェクト検知プログラム11110は、その変更内容を、担当管理テーブル1150に反映する。そして、ステップ406へ進む。
(ステップ406)管理計算機連携プログラム1190は、管理計算機の担当決定処理を実行し、本処理を終了する。本処理の詳細については後述する(図13参照)。
図13は、代表管理計算機における担当決定処理の例を示すフローチャートである。本処理は、図9のステップ107、図11のステップ304、図12のステップ406の詳細に相当する。
(ステップ501)管理計算機連携プログラム1190は、担当管理テーブル1150を参照する。そして、ステップ502へ進む。
(ステップ502)管理計算機連携プログラム1190は、担当管理テーブル1150の参照の結果、担当しているオブジェクト数が所定の上限を超過している管理計算機か存在する否かを判定する。管理計算機連携プログラム1190は、ステップ502の判定結果が肯定的な場合(YES)、ステップ503へ進み、否定的な場合(NO)、ステップ506へ進む。
(ステップ503)管理計算機連携プログラム1190は、超過分のオブジェクトを、既存の管理計算機に、上限を超過しないように担当させることが可能であるか否かを判定する。管理計算機連携プログラム1190は、ステップ503の判定結果が肯定的な場合(YES)、ステップ510へ進み、否定的な場合(NO)、ステップ505へ進む。
(ステップ505)管理計算機連携プログラム1190は、超過分のオブジェクトを担当するための1つ以上の管理計算機を新たに用意する。そして、ステップ504へ進む。
(ステップ506)ステップ502において、担当しているオブジェクト数が所定の上限を超過している管理計算機が存在しない(NO)と判定した場合、管理計算機連携プログラム1190は、既存の管理計算機を削減しても、全てのオブジェクトを、残りの管理計算機に、上限を超過しないように担当させることが可能であるか否か判定する。管理計算機連携プログラム1190は、ステップ506の判定結果が肯定的な場合(YES)、ステップ507へ進み、否定的な場合(NO)、ステップ510へ進む。
(ステップ507)管理計算機連携プログラム1190は、全てのオブジェクトを、残りの管理計算機に、上限を超過しないように担当させることが可能な範囲内で、既存の管理計算機を削減する。そして、ステップ510へ進む。
(ステップ510)管理計算機連携プログラム1190は、管理計算機間で担当するオブジェクトを調整する。管理計算機連携プログラム1190は、必要に応じて、管理計算機を追加又は削除してよい。そして、管理計算機連携プログラム1190は、その調整内容を、担当管理テーブル1150に反映させる。すなわち、管理計算機連携プログラム1190は、何れのオブジェクト情報の取得を、何れの管理計算機に担当させるかを決定する。そして、本処理の呼び出し元へ戻る。
ステップ510のオブジェクトの担当を調整する処理は、例えば、各管理計算機が担当するオブジェクト数、各管理計算機のCPUやメモリの負荷情報、及び、各管理計算機の情報取得に要する時間などを、管理計算機の間で平準化する処理であってもよい。
ステップ510における、調整内容の担当管理テーブル1150への反映は、任意のタイミング、例えば、今回の処理において各管理計算機に担当を通知した後、次回の処理のタイミングで行われて良い。
上述における管理計算機の追加処理(又は削除処理)は、前述の自身及び他の管理計算機の一覧情報のテーブルを参照し、例えば同一のイメージを利用して仮想計算機を新規に生成する処理(又は仮想計算機を削除する処理)であってもよいし、管理計算機用のプロセスを生成する処理(又はプロセスを削除する処理)であってもよい。
管理計算機を追加する場合、管理計算機連携プログラム1190は、利用可能なIPアドレスのプールを参照するなどして、自身及び他の管理計算機を示す情報を新規取得し、自身及び他の管理計算機の(上述の)一覧情報のテーブルを更新してよい。
管理計算機が管理可能なオブジェクト数の上限は、他の指標による上限であってよい。例えば、管理計算機によるCPUやメモリの負荷の上限、情報取得に要しても良い時間の上限などであってよい。また、図13の処理は、周期的に実行されてもよいし、利用者が指定した任意のタイミングで実行されても良い。
図14は、オブジェクトのリアルタイムな情報の取得要求を受信した場合の処理の例を示すフローチャートである。すなわち、本処理は、サービス種別管理テーブル1120の情報提供間隔1122が「リアルタイム」である場合(つまり、周期的な実行ではない場合)における処理である。
本処理は、管理計算機1000のプロセッサ1300が、メモリ1100上に展開された情報取得プログラム11110、及び、管理計算機連携プログラム1190を実行することによって実現されてよい。
(ステップ601)情報取得プログラム11110は、オブジェクト情報の取得要求を受信すると、ステップ602へ進む。本ステップは、入力デバイス1500及びGUIを介して利用者によって指定された情報を受信する処理であってもよい。又は、本ステップは、任意の管理計算機から入力された情報を通信デバイス1200が受信する処理であっても良い。
(ステップ602)情報取得プログラム11110は、取得要求を受信したオブジェクトの種別毎に、当該種別の全てのオブジェクト情報を取得中か否か判定する。情報取得プログラム11110は、ステップ602の判定結果が肯定的な場合(YES)、この取得が完了した後、ステップ606へ進み、否定的な場合(NO)、ステップ603へ進む。
(ステップ603)管理計算機連携プログラム1190は、取得中ではないオブジェクトが一つでも存在する場合(ステップ602:NO)、当該オブジェクトの最新の取得時刻が規定値以内か否かを判定する。管理計算機連携プログラム1190は、ステップ603の判定結果が肯定的な場合(YES)、ステップ606へ進み、否定的な場合(NO)、ステップ604へ進む。
(ステップ604)管理計算機連携プログラム1190は、当該オブジェクトの最新の取得時刻が規定値以内ではない場合(ステップ603:NO)、担当管理テーブル1150を参照し、受信したオブジェクトを担当する管理計算機を決定し、その決定した管理計算機に取得要求を転送する。そして、ステップ605へ進む。オブジェクトを担当する(転送先の)管理計算機は、例えば、管理計算機によるCPUやメモリの負荷情報や、情報取得に要する時間などの情報に基づいて、決定されてよい。
(ステップ605)その取得要求を転送された管理計算機は、その取得要求に基づいて情報を取得し、その最新の取得結果を、その取得要求元へ返信する。
上述のステップ602から605までの処理を、全ての装置、及び、取得要求を受信したオブジェクトの全ての種別について実施し終えた場合、ステップ606へ進む。
(ステップ606)管理計算機連携プログラム1190は、最新の取得結果を、ステップ601で受信した、オブジェクト情報の取得要求の送信元へ送信する。そして、本処理を終了する。
なお、情報取得タイミングが直近且つ規定値以内に設定されている場合、その直近の情報取得タイミングで取得されるその他のオブジェクトと合わせて、上述の情報取得が行われてもよい。
以上の実施形態によれば、管理計算機の間で誰がオブジェクト情報を取得するのかを調整することにより、各サービスにおいて取得を要するオブジェクト情報が重複する場合であっても、オブジェクト情報を重複して取得することを防止(又は軽減)することできる。よって、オブジェクト情報の提供元のデバイスの負荷を軽減することができる。
上述した実施形態は、本発明の説明のための例示であり、本発明の範囲を実施形態にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。
1:計算機システム 1000:管理計算機 2000:ストレージ装置 3000:サーバ

Claims (12)

  1. 複数の装置及び複数の管理計算機を有する計算機システムであって、
    装置は、管理計算機から管理対象とされる1つ以上のオブジェクトを有し、
    複数の管理計算機は、1つ以上のオブジェクトを管理対象とするサービスを提供しており、
    各サービスの各オブジェクトには、情報提供の周期が設定されており、
    複数の管理計算機のうちの1つである代表管理計算機は、
    オブジェクト情報の収集に関するポリシが定義されている情報収集ポリシと、実行中の各サービスの各オブジェクトに設定されている情報提供の周期と、に基づいて、各オブジェクト情報の収集を担当する管理計算機を決定し、
    その決定した各管理計算機に対して、その管理計算機が管理を担当するオブジェクトを通知する
    計算機システム。
  2. 前記情報収集ポリシには、実行中の複数の異なるサービスの中に、情報提供の周期の繰り返しの中で一致するタイミングを有し、且つ、同一のオブジェクトが含まれている場合、これら同一のオブジェクト情報の収集を1つの管理計算機に担当させる旨の第1のポリシが定義されている
    請求項1に記載の計算機システム。
  3. 前記第1のポリシに基づいて決定され、前記通知を受領した管理計算機は、情報提供の周期の繰り返しの中で一致するタイミングにおいて、前記同一のオブジェクトを有する装置に対して、前記同一のオブジェクト情報の要求を1つ発行する
    請求項2に記載の計算機システム。
  4. 前記情報提供の周期の繰り返しの中で一致するタイミングとは、複数の同一のオブジェクトのそれぞれの周期に基づいて算出される最小公倍数の周期のタイミングである
    請求項3に記載の計算機システム。
  5. 前記情報収集ポリシには、複数の異なるサービスの中に、情報提供の周期の繰り返しの中で一致するタイミングを有し、且つ、同一の種類のオブジェクトが含まれており、さらに、これらの同一の種類のオブジェクトが1つの装置に含まれている場合、これら同一の種類のオブジェクト情報の収集を1つの管理計算機に担当させる旨の第2のポリシが定義されている
    請求項2に記載の計算機システム。
  6. 前記第2のポリシに基づいて決定され、前記通知を受領した管理計算機は、情報提供の周期の繰り返しの中で一致するタイミングにおいて、前記1つの装置に対して、前記同一の種類の複数のオブジェクト情報の要求を1つ発行する
    請求項5に記載の計算機システム。
  7. 前記代表管理計算機は、
    新規のサービスを稼働する場合、当該新規のサービスが管理対象とする各新規オブジェクトについて、稼働中の各サービスの各オブジェクトの中に、前記第1のポリシ又は前記第2のポリシに適合するオブジェクトが存在するか否かを判定し、
    その新規オブジェクトが、前記第1のポリシに適合すると判定した場合、第1のポリシに適合するオブジェクトを担当中の管理計算機を、その新規オブジェクト情報の収集の担当に決定し、
    その新規オブジェクトが、前記第1のポリシに適合せず、前記第2のポリシに適合すると判定した場合、第2のポリシに適合するオブジェクトを担当中の管理計算機を、その新規オブジェクト情報の収集の担当に決定する
    請求項5に記載の計算機システム。
  8. 前記代表管理計算機は、
    各管理計算機が担当中のオブジェクトの数を管理し、
    その新規オブジェクトが、前記第1のポリシ及び前記第2のポリシの何れにも適合しないと判定した場合、担当中のオブジェクトの数が最も少ない管理計算機を、その新規オブジェクト情報の収集の担当に決定する
    請求項7に記載の計算機システム。
  9. 前記代表管理計算機は、
    担当中のオブジェクトの数が所定の閾値よりも多い管理計算機について、その管理計算機が担当中の1つ以上のオブジェクトの担当を、担当中のオブジェクトの数が所定の閾値よりも少ない管理計算機に変更する
    請求項5に記載の計算機システム。
  10. 前記情報収集ポリシには、複数の異なるサービスの中に、情報提供の周期の繰り返しの中で一致するタイミングを有し、且つ、同一の種類のオブジェクトが含まれており、さらに、これらの同一の種類のオブジェクトが1つの装置に含まれている場合、これら同一の種類のオブジェクト情報の収集を1つの管理計算機に担当させる旨のポリシが定義されている
    請求項1に記載の計算機システム。
  11. 前記ポリシに基づいて決定され、前記通知を受領した管理計算機は、情報提供の周期の繰り返しの中で一致するタイミングにおいて、前記1つの装置に対して、前記同一の種類の複数のオブジェクト情報の要求を1つ発行する
    請求項10に記載の計算機システム。
  12. 装置を管理する方法であって、
    装置が、管理計算機から管理対象とされる1つ以上のオブジェクトを有しており、
    複数の管理計算機が、1つ以上のオブジェクトを管理対象とするサービスを提供しており、
    各サービスの各オブジェクトには、情報提供の周期が設定されており、
    複数の管理計算機のうちの1つである代表管理計算機が、
    オブジェクト情報の収集に関するポリシが定義されている情報収集ポリシと、実行中の各サービスの各オブジェクトに設定されている情報提供の周期と、に基づいて、各オブジェクト情報の収集を担当する管理計算機を決定し、
    その決定した各管理計算機に対して、その管理計算機が担当するオブジェクトを通知する
    装置の管理方法。
JP2017553595A 2015-12-04 2015-12-04 計算機システム、及び、装置の管理方法 Active JP6568232B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/084192 WO2017094194A1 (ja) 2015-12-04 2015-12-04 計算機システム、及び、装置の管理方法

Publications (2)

Publication Number Publication Date
JPWO2017094194A1 JPWO2017094194A1 (ja) 2018-09-06
JP6568232B2 true JP6568232B2 (ja) 2019-08-28

Family

ID=58796637

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017553595A Active JP6568232B2 (ja) 2015-12-04 2015-12-04 計算機システム、及び、装置の管理方法

Country Status (3)

Country Link
US (1) US10423549B2 (ja)
JP (1) JP6568232B2 (ja)
WO (1) WO2017094194A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6684850B2 (ja) * 2018-05-16 2020-04-22 株式会社日立製作所 分散台帳システム、分散台帳サブシステム、および、分散台帳ノード

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6148335A (en) * 1997-11-25 2000-11-14 International Business Machines Corporation Performance/capacity management framework over many servers
US6766430B2 (en) * 2000-07-06 2004-07-20 Hitachi, Ltd. Data reallocation among storage systems
US8776050B2 (en) * 2003-08-20 2014-07-08 Oracle International Corporation Distributed virtual machine monitor for managing multiple virtual resources across multiple physical nodes
JP5182095B2 (ja) * 2006-11-06 2013-04-10 日本電気株式会社 資源情報提供システム、方法、資源情報提供装置、およびプログラム
JP4949804B2 (ja) * 2006-11-07 2012-06-13 株式会社日立製作所 統合管理計算機と記憶装置管理方法および計算機システム
JP2010087834A (ja) * 2008-09-30 2010-04-15 Ntt Data Corp ネットワーク監視システム
JP2011243112A (ja) * 2010-05-20 2011-12-01 Hitachi Ltd システム管理方法、及び管理装置
CN102959522B (zh) * 2010-08-10 2016-01-13 株式会社日立制作所 计算机系统的管理方法和管理系统
JP2012212341A (ja) * 2011-03-31 2012-11-01 Nec Corp ポーリング監視システム、ポーリング監視サーバ、ポーリング監視方法、およびその監視プログラム
US9201779B2 (en) * 2012-06-27 2015-12-01 Hitachi, Ltd. Management system and management method

Also Published As

Publication number Publication date
US20180246823A1 (en) 2018-08-30
WO2017094194A1 (ja) 2017-06-08
US10423549B2 (en) 2019-09-24
JPWO2017094194A1 (ja) 2018-09-06

Similar Documents

Publication Publication Date Title
US10846137B2 (en) Dynamic adjustment of application resources in a distributed computing system
US11645183B1 (en) User interface for correlation of virtual machine information and storage information
US10795905B2 (en) Data stream ingestion and persistence techniques
US10691716B2 (en) Dynamic partitioning techniques for data streams
US9971823B2 (en) Dynamic replica failure detection and healing
KR101925696B1 (ko) 대규모 데이터 스트림들의 획득, 저장, 및 소비를 위한 관리 서비스
US9276959B2 (en) Client-configurable security options for data streams
JP6357243B2 (ja) データストリーム取り込み及び永続性ポリシ
US10534776B2 (en) Proximity grids for an in-memory data grid
WO2020253079A1 (zh) 基于Jmeter的分布式性能测试方法、装置、设备及存储介质
US10908834B2 (en) Load balancing for scalable storage system
US10845997B2 (en) Job manager for deploying a bundled application
US10754368B1 (en) Method and system for load balancing backup resources
JP6568232B2 (ja) 計算機システム、及び、装置の管理方法
JP2014238699A (ja) 文書管理サーバ、文書管理方法、コンピュータプログラム
JP6607044B2 (ja) サーバー装置、分散ファイルシステム、分散ファイルシステム制御方法、および、プログラム
JP6076882B2 (ja) 情報処理システム、管理装置及びキー割当プログラム
US11036439B2 (en) Automated management of bundled applications
US11520650B2 (en) Performing root cause analysis in a multi-role application
US20200125298A1 (en) Automated Management Of Bundled Applications

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180413

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190801

R150 Certificate of patent or registration of utility model

Ref document number: 6568232

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150