JPWO2017002194A1 - 管理システム、及び、管理方法 - Google Patents

管理システム、及び、管理方法 Download PDF

Info

Publication number
JPWO2017002194A1
JPWO2017002194A1 JP2017525718A JP2017525718A JPWO2017002194A1 JP WO2017002194 A1 JPWO2017002194 A1 JP WO2017002194A1 JP 2017525718 A JP2017525718 A JP 2017525718A JP 2017525718 A JP2017525718 A JP 2017525718A JP WO2017002194 A1 JPWO2017002194 A1 JP WO2017002194A1
Authority
JP
Japan
Prior art keywords
update
time
program
management
database
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017525718A
Other languages
English (en)
Other versions
JP6259547B2 (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 JPWO2017002194A1 publication Critical patent/JPWO2017002194A1/ja
Application granted granted Critical
Publication of JP6259547B2 publication Critical patent/JP6259547B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2315Optimistic concurrency control
    • G06F16/2322Optimistic concurrency control using timestamps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3037Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • G06F16/2386Bulk updating operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

管理システムは、記憶デバイスとプロセッサとを有する。記憶デバイスは、データベースを利用してストレージシステムに係る情報を制御する情報処理プログラムを保持する。プロセッサは、情報処理プログラムと、当該情報処理プログラムが利用するデータベースと、を更新する更新プログラムを実行する。更新プログラムは、更新前の情報処理プログラムが利用するデータベースの少なくとも一部のサイズと、更新後の情報処理プログラムが利用するデータベースの構成と、に基づいて、情報処理プログラム及びデータベースの更新にかかる推定更新時間を算出し、その算出した推定更新時間を出力する。

Description

本発明は、概して、ストレージシステムを管理する技術に関する。
計算機にインストールされているプログラムを更新する際に、更新プログラムのファイルサイズからその更新にかかると推定される時間を算出し、その算出した時間を表示する技術が知られている(特許文献1)。
特開2006―227871号公報
ストレージシステムを構成するサーバにインストールされているプログラムの更新にかかると推定される時間を、更新プログラムのファイルサイズから算出した場合、実際の更新にかかる時間と大きく乖離してしまうことがある。例えば、更新対象のプログラムがDataBase(DB)を利用しており、そのDBの構成及び値なども合わせて更新する必要がある場合、更新時間は、そのDBのサイズなどによって大きく変わってしまう。
そこで本発明の目的は、ストレージシステムを構成するサーバにインストールされているプログラムの更新時間を、より正確に推定することにある。
本発明の一実施例に係る管理システムは、ストレージシステムを管理するシステムであり、記憶デバイス及びプロセッサを有する。記憶デバイスは、データベースを利用してストレージシステムに係る情報を制御する情報処理プログラムを保持する。プロセッサは、情報処理プログラムと、当該情報処理プログラムが利用するデータベースと、を更新する更新プログラムを実行する。更新プログラムは、更新前の情報処理プログラムが利用するデータベースの少なくとも一部のサイズと、更新後の情報処理プログラムが利用するデータベースの構成と、に基づいて、情報処理プログラム及びデータベースの更新にかかる推定時間である推定更新時間を算出し、その算出した推定更新時間を出力する。
本発明によれば、ストレージシステムを構成するサーバにインストールされているプログラムの更新時間をより正確に推定することができる。
本実施例に係るストレージシステムの構成例を示す。 更新選択のGraphical User Interface(GUI)の例を示す。 更新時刻のGUIの例を示す。 警告ダイアログの例を示す。 更新進捗のGUIの例を示す。 各バージョンの管理DBの構成例を示す。 各バージョンの監視DBの構成例を示す。 性能比率の算出方法の例を示す。 推定更新時間の算出方法の例を示す。 更新予約処理のフローチャート例を示す。 更新実行処理のフローチャート例を示す。
以下、一実施例を説明する。以下の説明では、「aaaデータベース」、「aaaテーブル」又は「aaaリスト」の表現にて情報を説明することがあるが、情報は、どのようなデータ構造で表現されていてもよい。すなわち、情報がデータ構造に依存しないことを示すために、「aaaデータベース」、「aaaテーブル」又は「aaaリスト」を「aaa情報」と呼ぶことができる。
また、以下の説明では、「プログラム」を主語として処理を説明する場合があるが、プログラムは、プロセッサ(例えばCentral Processing Unit(CPU))によって実行されることで、定められた処理を、適宜に記憶資源(例えばメモリ)及び通信インターフェイスデバイスのうちの少なくとも1つを用いながら行うため、処理の主語が、プロセッサ、そのプロセッサを有する装置とされてもよい。プロセッサが行う処理の一部又は全部が、ハードウェア回路で行われてもよい。コンピュータプログラムは、プログラムソースからインストールされてよい。プログラムソースは、プログラム配布サーバ又は記憶メディア(例えば可搬型の記憶メディア)であってもよい。
また、以下の説明では、計算機システムに含まれる少なくとも1つの装置を管理する1以上の計算機の集合を「管理システム」と呼ぶことがある。管理計算機が表示用情報を表示する場合は管理計算機が管理システムでよい。また、管理計算機と表示用計算機の組み合わせも管理システムでよい。また、管理処理の高速化や高信頼化のために複数の計算機で管理計算機と同等の処理を実現してもよく、この場合はそれら複数の計算機(表示を表示用計算機が行う場合は表示用計算機も含んでよい)が管理システムでよい。本実施例では、管理計算機が管理システムである。また、管理計算機が情報を表示するとは、管理計算機が有する表示デバイスに情報を表示することであってもよいし、管理計算機(例えばサーバ)に接続された表示用計算機(例えばクライアント)に表示用情報を送信することであってもよい。後者の場合、表示用計算機が有する表示デバイスに表示用情報が表す情報が表示用計算機によって表示される。
また、以下の説明では、同種の要素を区別して説明する場合には、「aaa301A」、「aaa301B」のように、参照符号を使用し、同種の要素を区別しないで説明する場合には、「aaa301」のように参照符号のうちの共通番号のみを使用することがある。
図1は、本実施例に係るストレージシステム及び管理システムの構成例を示す。
ストレージシステムは、ストレージ装置18、及び、業務サーバ16を有する。管理システムは、ストレージシステムを管理する。管理システムは、管理サーバ12及び監視サーバ14の少なくとも1つを有する。管理システムは、さらに、管理クライアント10を有してよい。なお、このストレージシステム及び管理システムの構成は、あくまで一例であり、管理システムがストレージシステムの構成要素の一部を含んでもよいし、ストレージシステムが管理システムの構成要素の一部を含んでもよい。
管理サーバ12、管理クライアント10、監視サーバ14、及び、業務サーバ16は、ネットワーク20を介して、双方向通信可能に接続される。ネットワーク20は、例えば、Local Area network(LAN)である。
監視サーバ14、業務サーバ16、及び、ストレージ装置18は、ネットワーク22を介して、双方向通信可能に接続される。ネットワーク22は、例えば、Fibre Channel−Storage Area Network(FC−SAN)である。
管理サーバ12、及び、ストレージ装置18は、ネットワーク24(又は所定のケーブル)を介して、双方向通信可能に接続される。ネットワーク24は、例えば、LANである。
ストレージ装置18は、複数の不揮発性の記憶デバイス(不図示)を備える。記憶デバイスは、例えば、Hard Disk Drive(HDD)又はSolid State Drive(SSD)である。ストレージ装置18は、複数の記憶デバイスからRedundant Arrays of Inexpensive Disks(RAID)グループを構成してよい。ストレージ装置18は、RAIDグループからLogical Device(LDEV)42を構成してよい。LDEVは、論理ボリュームと呼ばれてもよい。ストレージ装置18は、その構成したLDEV42を業務サーバ16に提供してよい。これらの機能は、ストレージ装置18の有するストレージコントローラ40が、所定のプログラムを実行することにより実現されてよい。ストレージコントローラ40は、Central Processing Unit(CPU)及びメモリを含む構成であってよい。
業務サーバ16は、業務に関する処理を行う装置である。業務サーバ16は、ストレージ装置18にリード要求を発行し、自らに提供されているLDEV42からデータをリードできる。業務サーバ16は、ストレージ装置18にライト要求を発行し、自らに提供されているLDEV42にデータをライトできる。
監視サーバ14は、監視プログラムを実行して、業務サーバ16、ストレージ装置18、管理サーバ12、及び、ネットワーク20、22、24、のうちの少なくとも1つの状態を監視する装置である。例えば、監視プログラムは、業務サーバ16のCPU使用率及びメモリ空き容量の情報を定期的に収集する。監視プログラムによって収集される情報を「監視情報」と呼んでよい。監視プログラムは、定期的に収集したこれらの監視情報を、監視DBに登録して管理する。監視プログラムの更新によって監視情報の種類が増える場合(例えば、CPU温度を新たに監視対象とする場合)、それに合わせて監視DBの項目(カラム)も増やす必要がある。反対に、監視プログラムの更新によって監視情報の種類が減る場合(例えば、監視対象であったCPU温度を非監視対象とする場合)、それに合わせて監視DBの項目(カラム)も減らす必要がある。
管理サーバ12は、管理プログラムを実行して、ストレージシステム全体を管理する装置である。例えば、管理プログラムは、複数の業務サーバ16の何れの業務サーバ16に、何れのLDEV42が提供されているかを管理する。管理プログラムは、業務サーバ16とLDEV42とを結ぶパス(「ディスクパス」という)を管理してよい。管理プログラムは、それぞれのLDEV42が何れのプールに属しているかを管理してよい。管理プログラムによって管理される情報をまとめて「管理情報」という。管理プログラムは、これらの管理情報を管理DBに登録して管理する。管理プログラムの更新によって管理情報の種類が増える場合(例えば、LDEV42が属するプールを新たに管理対象とする場合)、それに合わせて管理DBの項目(カラム)も増やす必要がある。反対に、管理プログラムの更新によって管理情報の種類が減る場合(例えば、管理対象であったLDEV42が属するプールを非管理対象とする場合)、それに合わせて管理DBの項目(カラム)も減らす必要がある。
なお、管理サーバ12は、管理プログラム及び監視プログラムの両方を実行してもよい。この場合、管理サーバ12は、管理DB及び監視DBを有してよい。また、管理サーバ12は、複数の監視プログラムを実行してよい。この場合、管理サーバ12は、監視プログラム毎に監視DBを有してもよい。また、管理サーバ12及び監視サーバ14の少なくとも1つを含むサーバを、情報処理サーバと呼んでよい。また、管理プログラム及び監視プログラムの少なくとも1つを含むプログラムを、情報処理プログラムと呼んでよい。
管理クライアント10は、ユーザが、管理サーバ12及び/又は監視サーバ14を管理するための装置である。管理クライアント10は、ネットワーク20を通じて、管理サーバ12及び/又は管理サーバ14にアクセス可能であってよい。ユーザは、管理クライアント10を介して、管理サーバ12の管理プログラム及び/又は監視プログラム、並びに/若しくは、監視サーバ14の監視プログラムを更新できてよい。例えば、ユーザが、管理クライアント10で一括インストーラ90を実行すると、その一括インストーラ90に含まれる更新プログラム100が、管理サーバ12の管理プログラム及び/又は監視プログラム、並びに/若しくは、監視サーバ14の監視プログラムを更新してよい。
一括インストーラ90は、実行されると、更新選択のGUI200(図2参照)、更新時刻のGUI240(図3参照)、及び/又は、更新進捗のGUI260(図4参照)を適宜管理クライアント10のディスプレイデバイスに表示してよい。
なお、一括インストーラ90は、管理サーバ12又は監視サーバ14で、直接実行されてもよい。この場合、これらのGUI200、240、260は、管理サーバ12又は監視サーバ14のディスプレイデバイスに表示されてよい。例えば、ユーザが、管理サーバ12の有する光学ドライブに一括インストーラ90の記録されている光学ディスクを挿入して実行すると、これらのGUI200、240、260が適宜表示されてもよい。
次に、図1を用いて、本実施例の処理概要を述べる。
(S10)一括インストーラ90は、実行されると、更新選択のGUI200を表示する。
(S11)ユーザは、更新選択のGUI200を操作して、実行対象とする更新プログラム100を選択する。ここで、更新プログラム100は、管理サーバ12の情報処理プログラム102を更新するためのプログラムである。
(S12)一括インストーラ90は、更新時刻のGUI240を表示する。更新時刻のGUI240は、S11で選択された更新プログラム100が実行されて更新処理が完了するまでにかかると推定される時間(「推定更新時間」という)を表示してよい。一括インストーラ90は、現バージョンであるプログラム102に対応するDB104の少なくとも一部のサイズと、新バージョンである更新プログラム100に対応するDBの項目(カラム)の増減と、に基づいて、推定更新時間を算出してよい。図1の例は、現バージョンであるプログラム102に対応するDB104の項目A〜Dに対して、新バージョンである更新プログラム100に対応するDBの項目E、F(つまり2つの項目)が増加していることを示す。
(S13)ユーザは、更新時刻のGUI240を操作して、更新プログラム100の開始予定時刻を設定する。
(S14)一括インストーラ90は、更新進捗のGUI260を表示する。更新進捗のGUI260は、更新プログラム100の開始予定時刻を表示してよい。
(S15)一括インストーラ90は、S13で設定された開始予定時刻になったら、更新プログラム100の実行を開始する。このとき、更新進捗のGUI260は、更新全体の進捗状況と、個々の更新プログラム100の進捗状況と、を合わせて表示してよい。
図2は、更新選択のGUI200の例を示す。
更新選択のGUI200は、一括インストーラ90に含まれる複数の更新プログラムの中から、実行対象を選択するためのGUIである。
例えば、更新選択のGUI200は、一括インストーラ90に含まれる更新プログラム毎に、チェックボックス202、プログラム名204、現バージョン206、新パージョン208を表示する。
プログラム名204は、更新プログラムの名称である。
チェックボックス202は、プログラム名204の更新プログラムを実行対象とするか否かを設定するものである。例えば、ユーザは、実行対象とする更新プログラムのチェックボックス202をオンにする。
現バージョン206は、プログラム名204の更新プログラムによって更新されるプログラムの現在のバージョンである。
新バージョン208は、プログラム名204の更新プログラムによって更新された後のプログラムのバージョンである。
一括インストーラ90は、実行されると、図2のような更新選択のGUI200を生成し、その生成したGUI200を所定のディスプレイデバイスに表示してよい。ユーザは、このGUI200の次ボタン210を押下して、実行対象の更新プログラムを、管理サーバ12に指示することができる。
図3は、更新時刻のGUI240の例を示す。
更新時刻のGUI240は、更新選択のGUI200によって実行対象に選択された更新プログラムについて、その更新プログラムの実行時刻を設定するためのGUIである。
例えば、更新時刻のGUI240は、実行対象の更新プログラム毎に、プログラム名242、サーバ名244、推定更新時間246、高負荷時間帯248、推奨開始時刻250、開始予定時刻252、終了予定時刻254を表示する。
プログラム名242は、実行対象の更新プログラムの名称である。
サーバ名244は、プログラム名242の更新プログラムが実行されるサーバの名称である。
推定更新時間246は、サーバ名244のサーバにおいて、プログラム名242の更新プログラムを実行し終えるまでにかかると推定される時間である。推定更新時間246の算出方法例は後述する(図9参照)。
高負荷時間帯248は、プログラム名242の更新プログラムが管理対象又は監視対象とする装置の1日間のうち、特に処理負荷が高くなると予測される時間帯である。高負荷時間帯248は、管理対象又は監視対象の装置の過去の処理負荷の統計に基づいて算出されてよい。例えば、過去の処理負荷の履歴から1日間における各時間帯の処理負荷の平均を算出し、その処理負荷の平均が所定の閾値以上の時間帯を高負荷時間帯248としてよい。
推奨開始時刻250は、サーバ名244のサーバにおいて、プログラム名242の更新プログラムの実行を開始するのに推奨される時刻である。一括インストーラ90は、開始予定時刻252から終了予定時刻254までの時間帯が、高負荷時間帯258の少なくとも一部と重複しないように、推奨開始時刻250を決定してよい。
開始予定時刻252は、サーバ名244のサーバにおいて、プログラム名242の更新プログラムの実行開始予定の時刻である。開始予定時刻252の初期値は、NULL、現在時刻、又は、推奨開始時刻250の何れかの時刻であってよい。ユーザは、開始予定時刻252の初期値を自ら入力して、任意の時刻に変更できてよい。
終了予定時刻254は、サーバ名244のサーバにおいて、プログラム名242の更新プログラムの実行終了予定の時刻である。終了予定時刻254は、開始予定時刻252に推定更新時間246を加算した時刻であってよい。終了予定時刻254は、ユーザが開始予定時刻252を変更すると、それに合わせて更新されてよい。
また、更新時刻のGUI240は、開始予定時刻252から終了予定時刻254までの時間帯が、高負荷時間帯258の少なくとも一部と重複する場合、例えば図4のような、その旨を警告するダイアログを表示してもよい。
図5は、更新進捗のGUI260の例を示す。
更新進捗のGUI260は、実行対象に選択された全ての更新プログラムの進捗、実行対象に選択された各更新プログラムの進捗、及び、各更新プログラムの開始予定時刻等を表示するためのGUIである。
例えば、更新進捗のGUI260は、全体270及び各更新プログラム272について、プログレスバー262、開始予定時刻264、終了予定時刻266、終了時刻268を表示する。
全体270に対応するプログレスバー262は、全ての更新についての進捗状況を表す。
各更新プログラム272に対応するプログレスバー262は、それぞれの更新プログラムについての進捗状況を表す。
全体270に対応する開始予定時刻264及び終了予定時刻266は、全ての更新についての開始予定時刻及び終了予定時刻を表す。
各更新プログラム272に対応する開始予定時刻264及び終了予定時刻266は、それぞれの更新プログラムについての開始予定時刻及び終了予定時刻を表す。
終了時刻268は、実際に更新が終了した時刻である。
図6は、各バージョンの管理DB301の構成例を示す。管理DB301は、管理プログラムから利用される。
図6において、管理DB301Aは、Ver.1の管理DBが、カラムとして、業務サーバ名310、サーバHost Bus Adapter(HBA)312、ストレージHBA314、及び、LDEV316を有することを示す。
業務サーバ名310は、管理プログラムが管理する業務サーバ16の名称である。
サーバHBA312は、業務サーバ名310の業務サーバ16側のHBAの識別子である。
ストレージHBA314は、ストレージ装置18側のHBAの識別子である。
LDEV316は、業務サーバ名310の業務サーバ16に提供されるLDEV42の識別子である。
図6の管理DB301Aの業務サーバ名310「サーバA」のレコードは、「サーバA」の業務サーバ16が、「ABCD01234」のサーバHBA312と、「01234ABCD」のストレージHBA314とを結ぶディスクパスを介して、「L01」(316)のLDEV42にアクセス可能であることを示す。
管理DB301Bは、Ver.2の管理DBが、カラムとして、Ver.1の管理DB301Aの有するカラムに加え、A方式プールデバイス318を有することを示す。
管理DB301Cは、Ver.3の管理DBが、カラムとして、Ver.2の管理DB301Bの有するカラムから、A方式プールデバイス318が削除されていることを示す。
したがって、管理プログラムをVer.1からVer.2に更新する場合は、管理DB301Aに、A方式プールデバイス318のカラムを追加する必要がある。
管理プログラムをVer.2からVer.3に更新する場合は、管理DB301Bから、A方式プールデバイスのカラムを削除する必要がある。
管理プログラムをVer.1からVer.3に更新する場合は、管理DB301Aのカラムを変更する必要がない。Ver.1の管理DB301Aの有するカラムと、Ver.3の管理DB301Cの有するカラムとが、同じだからである。
図7は、各バージョンの監視DB401の構成例を示す。監視DB401は、監視プログラムから利用される。
図7において、監視DB401Aは、Ver.1の監視DBが、カラムとして、収集時刻410、CPU使用率412、及び、メモリ空き容量414を有することを示す。
収集時刻410は、監視プログラムがCPU使用率412及びメモリ空き容量414の情報(つまり、監視情報)を収集した時刻である。
CPU使用率412は、監視プログラムが監視しているサーバの、収集時刻410におけるCPUの使用率である。
メモリ空き容量414は、監視プログラムが監視しているサーバの、収集時刻410におけるメモリの空き容量である。
監視DB401Bは、Ver.2の監視DBが、カラムとして、Ver.1の管理DB401Aの有するカラムに加え、監視項目A416を有することを示す。
監視DB401Cは、Ver.3の監視DBが、カラムとして、Ver.2の管理DB401Bの有するカラムから、監視項目A416が削除されていることを示す。
監視DB401Dは、Ver.4の監視DBが、カラムとして、Ver.3の管理DB401Cの有するカラムに加え、監視項目B418を有することを示す。
したがって、監視プログラムをVer.1からVer.2に更新する場合は、監視DB401Aに、監視項目A416のカラムを追加する必要がある。
監視プログラムをVer.2からVer.3に更新する場合は、監視DB401Bから、監視項目A416のカラムを削除する必要がある。
監視プログラムをVer.1からVer.3に更新する場合は、監視DB401Aのカラムを変更する必要がない。Ver.1の監視DB401Aの有するカラムと、Ver.3の監視DB401Cの有するカラムとが、同じだからである。
監視プログラムをVer.2からVer.4に更新する場合は、監視DB401Bに対して、監視項目A416のカラムを削除し、監視項目B418のカラムを追加する必要がある。
図8は、性能比率の算出方法の例を示す。
性能比率508は、基準の計算機の性能504と、更新実行先の計算機の性能506との比率を示す値である。性能比率508は、計算機のデバイスに係る項目502毎に算出されてよい。
図8の例において、基準の計算機のCPUの動作周波数504は「3.0GHz」、更新実行先の計算機のCPUの動作周波数506は「2.4GHz」である。この場合、一括インストーラ90は、CPU502の性能比率508を、「2.4÷3.0×100=80%」と算出してよい。
また、基準の計算機のメモリの容量504は「1600MB」、更新実行先のメモリの容量506は「1200MB」である。この場合、一括インストーラ90は、メモリ502の性能比率508を、「1200÷1600×100=75%」と算出してよい。
また、基準の計算機のディスクI/O速度504は「10MB/s」、更新実行先の計算機のディスクI/O速度506は「12MB/s」である。この場合、一括インストーラ90は、ディスクI/O速度502の性能比率508を、「12÷10×100=120%」と算出してよい。
更新実行先の計算機の性能506は、その計算機の実測に基づいて算出された値であってもよいし、計算機に予め定義されている値であってもよい。
基準の計算機の性能504は、一括インストーラ90のベンダーによって予め定義されている値であってよい。そして、一括インストーラ90は、この基準の計算機の性能504を含んでよい。
図9は、推定更新時間の算出方法の例を示す。
一括インストーラ90は、更新前後におけるDBのカラム構成の変化と、更新対象のDBに登録済みの情報の量と、更新実行対象の計算機の性能比率と、に基づいて、推定更新時間246を算出してよい。図9を用いて、その算出例を述べる。
図6の場合において、管理プログラムをVer.1からVer.2に更新する場合、それに伴い、管理DB301Aを、A方式プールデバイス318のカラムを追加した管理DB301Bに更新する必要がある。この場合、更新プログラムは、管理DB301Aに対して以下の処理を行う。
(S31)管理DB301Aに、A方式プールデバイス318のカラムを追加する(604)。このカラムの追加は、Structured Query Language(SQL)コマンド(606)によって行われてよい。
(S32)各レコードのA方式プールデバイス318のカラムに、初期値を格納する。この初期値は、管理DB301Aに登録済みの値に基づいて算出されてよい。
ここで、S31の処理について、基準の計算機のCPUによる1回の処理時間が「30ms」(608)、基準の計算機のディスクI/Oに基づく1回の処理時間が「10ms」であるとする(610)。更新実行先の計算サーバにおけるCPUの性能比率が「80%」(608)、ディスクI/O速度の性能比率が「120%」であるとする(610)。S31の実行回数は「1回」であるので(612)、一括インストーラ90は、S31の処理時間を、「(30×1×0.8)+(10×1×1.2)=36ms」(614)と算出する。
また、S32の処理について、基準の計算機のCPUに基づく1回の処理時間が「5ms」(608)、基準の計算機のディスクI/Oに基づく1回の処理時間が「10ms」であるとする(610)。S32の実行回数は、管理DB301Bにレコード数となる。例えば、管理DB301Aに登録済みの業務サーバの数が「100」、管理DB301Aに登録済みのLDEVの数が「100000」とすると、管理DB301Bのレコード数は「10000×100=1000000」となる。つまり、S32の実行回数は「1000000回」である(612)。したがって、一括インストーラ90は、S32の処理時間を、「(5×1000000×0.8)+(10×1000000×1.2)=83min」(614)と算出する。
この場合、一括インストーラ90は、管理プログラムをVer.1からVer.2に更新するための推定更新時間を、管理DBの更新時間を考慮して、「36ms+83min」と算出してよい。
また、図6のように管理プログラムをVer.2からVer.3に更新すると、それに伴い、管理DB301Bを、A方式プールデバイス318のカラムを削除した管理DB301Cに更新する必要がある。この場合、更新プログラムは、管理DB301Bに対して以下の処理を行う。
(S33)管理DB301Bから、A方式プールデバイス318のカラムを削除する。
ここで、S33の処理について、基準の計算機のCPUによる1回の処理時間が「30ms」(608)、基準の計算機のディスクI/Oに基づく1回の処理時間が「10ms」であるとする(610)。CPUの性能比率及びディスクI/O速度の性能比率は、上述と同じとする。S33の実行回数は「1回」であるので(612)、一括インストーラ90は、S33の処理時間を、「(30×1×0.8)+(10×1×1.2)=36ms」と算出する。
この場合、一括インストーラ90は、管理プログラムをVer.2からVer.3に更新するための推定更新時間を、「36ms」と算出してよい。
次に、管理プログラムをVer.1からVer.3に更新する場合を考える。Ver.2への更新プログラムは、Ver.1からVer.2に更新するとき、管理DB301AにA方式プールデバイス318のカラムを追加する。しかし、Ver.3への更新プログラムは、Ver.2からVer.3に更新するとき、管理DB301BからA方式プールデバイス318のカラムを削除する。つまり、管理プログラムをVer.1からVer.3に更新する場合、Ver.3への更新プログラムは、管理DB301Aのカラム構成を変更する必要が無い。
この場合、一括インストーラ90は、管理プログラムをVer.1からVer.3に更新するための推定更新時間を、「0」と算出してよい。
監視プログラムに係る推定更新時間の算出方法も、上述と同様である。
図10は、更新予約処理のフローチャート例を示す。
一括インストーラ90は、実行されると、例えば図2のような更新選択のGUI200を表示する(S100)。ユーザは、このGUI200を介して、実行対象の更新プログラムを選択する。
一括インストーラ90は、S100で選択された更新プログラムのそれぞれについて、以下のS101〜S108のループ処理を行う(S101)。以下のS101〜S108のループ処理の説明において、処理対象の更新プログラムを、「対象更新プログラム」という。
一括インストーラ90は、例えば図8で述べたように、対象更新プログラムが実行される計算機の性能比率を算出する(S102)。
一括インストーラ90は、例えば図9で述べたように、対象更新プログラムが実行される計算機における推定更新時間を算出する(S104)。
一括インストーラ90は、対象更新プログラムが実行される計算機の高負荷時間帯を算出する(S106)。
なお、性能比率の算出(S102)及び高負荷時間帯の算出(S106)は、それ以前の処理で算出済みの場合、省略されてよい。
S101〜S108のループ処理終了後、一括インストーラ90は、例えば図3に示す更新時刻のGUI240を表示する(S110)。このGUI240に含まれる推定更新時間246、及び、高負荷時間帯248は、上述のループ処理で算出されている。
ユーザは、このGUI240に含まれる各更新プログラムの開始予定時刻252を入力又は変更してよい(S112)。ここで、開始予定時刻252が未入力の場合は、即時実行を意味するとしてもよい。
一括インストーラ90は、各更新プログラムを、開始予定時刻252の早い順に実行リストに登録する(S114)。ここで、即時実行の更新プログラムは、実行リストの先頭に登録されてよい。
一括インストーラ90は、更新実行処理を行う(S116)。この処理の詳細は後述する(図11参照)。
そして、一括インストーラ90は、本処理を終了する(END)。これにより、一括インストーラ90に含まれる更新プログラムが管理サーバ又は監視サーバで実行され、更新対象のプログラム及びDBが更新される。
以上の処理によれば、ユーザは、更新時刻のGUI240によって、各更新プログラムのより正確な推定更新時間246と、その更新プログラムが実行されるサーバの高負荷時間帯248と、を知ることができる。これにより、ユーザは、各更新プログラムの適切な開始予定時刻252を決めることができる。さらに、更新時刻のGUI240に推奨開始時刻250を表示することにより、ユーザは、各更新プログラムの適切な開始予定時刻252をより簡単に決めることができる。
図11は、更新実行処理のフローチャート例を示す。本処理は、図10のS116の詳細である。
一括インストーラ90は、例えば図5のような更新進捗のGUI260を表示する(S200)。
一括インストーラ90は、実行リストに登録されている未実行の更新プログラムの中から、先頭の更新プログラムうを選択し、以下のS202〜S214のループ処理を行う(S202)。以下のS202〜S214のループ処理内の説明において、処理対象の更新プログラムを、「対象更新プログラム」という。
一括インストーラ90は、現在時刻が対象更新プログラムの開始予定時刻を過ぎているか否かを判定する(S204)。
現在時刻が対象更新プログラムの開始予定時刻を過ぎていない場合(S204:NO)、一括インストーラ90は、そのときまで待つ。
現在時刻が対象更新プログラムの開始予定時刻を過ぎている場合(S204:YES)、一括インストーラ90は、次のS210及びS212の処理に進む。なお、対象更新プログラムの開始所定時刻が「即時実行」の場合、一括インストーラ90は、S204を常に「YES」と判定する。
一括インストーラ90は、更新プログラムを、実行対象のサーバで実行させる(S210)。
それと共に、一括インストーラ90は、その実行中の更新プログラムの進捗状況を示す情報を取得し、その進捗状況を更新進捗のGUI260に反映する(S212)。
更新プログラムの実行完了後、一括インストーラ90は、実行リスト内に未実行の更新プログラムが残っているか否かを判定し(S214)、未実行の更新プログラムが残っている場合、S202に戻る。未実行の更新プログラムが残っていない場合、一括インストーラ90は、全ての更新を完了した旨をGUI260に表示し(S220)、本処理を終了する(END)。
以上の処理によれば、ユーザは、更新進捗のGUI260によって、更新全体の進捗と、それぞれの更新の進捗とを、一度に知ることができる。また、ユーザは、更新全体の終了予定時刻と、それぞれの更新の終了予定時刻とを、一度に知ることができる。
上述した実施例は、本発明の説明のための例示であり、本発明の範囲をそれらの実施例にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。
1:ストレージシステム 10:管理クライアント 12:管理サーバ 14:監視サーバ 16:業務サーバ 18:ストレージ装置


Claims (11)

  1. ストレージシステムを管理する管理システムであって、
    データベースを利用してストレージシステムに係る情報を管理する情報処理プログラム、を保持する記憶デバイスと、
    前記情報処理プログラムと当該情報処理プログラムが利用するデータベースと、を更新する更新プログラム、を実行するプロセッサと
    を有し、
    前記更新プログラムは、
    更新前の情報処理プログラムが利用するデータベースの少なくとも一部のサイズと、更新後の情報処理プログラムが利用するデータベースの構成と、に基づいて、前記情報処理プログラム及び前記データベースの更新にかかる推定時間である推定更新時間を算出し、
    その算出した推定更新時間を出力する
    管理システム。
  2. 前記推定更新時間の算出には、所定の処理性能を有するプロセッサで前記更新プログラムを実行して所定のI/O性能を有するデータベースを更新した場合にかかる時間である基準更新時間が用いられる
    請求項1に記載の管理システム。
  3. 前記更新プログラムは、前記基準更新時間を含む
    請求項2に記載の管理システム。
  4. 前記基準更新時間は、前記更新プログラムの配布前に前記ストレージシステムのベンダーによって算出される
    請求項3に記載の管理システム。
  5. 前記推定更新時間の算出には、前記更新プログラムが実行されるプロセッサの処理性能と、前記更新プログラムによって更新されるデータベースのI/O性能と、に基づいて前記基準更新時間を変換した値が用いられる
    請求項2に記載の管理システム。
  6. 前記更新プログラムがデータベースを更新する処理は、
    更新前のデータベースに新規項目を追加する処理と、
    更新前のデータベースの少なくとも一部の情報を用いて新規項目に係る初期値を算出する処理と、
    その算出した初期値を、少なくとも一部のレコードの新規項目に格納する処理と、
    を含む
    請求項2に記載の管理システム。
  7. 前記更新プログラムは、
    前記ストレージシステムの過去の処理負荷の傾向に基づいて、1日間のうち当該ストレージシステムの処理負荷の傾向が閾値以上となる高負荷時間帯を算出し、
    当該更新プログラムの開始予定時刻及び前記推定更新時間に基づいて、当該更新プログラムの終了予定時刻を算出し、
    前記開始予定時刻から前記終了予定時刻までの時間帯が、前記高負荷時間帯の少なくとも一部と重複している場合、その旨を表示する
    請求項2に記載の管理システム。
  8. 前記更新プログラムは、
    前記推定更新時間が前記高負荷時間帯の何れにも重複しない時刻を算出し、その算出した時刻を、推奨する開始予定時刻として表示する
    請求項7に記載の管理システム。
  9. 前記更新プログラムは、
    前記推奨する開始予定時刻と、前記推定更新時間と、前記高負荷時間帯とを表示し、
    前記開始予定時刻の入力を受け付ける
    請求項7に記載の管理システム。
  10. 複数の更新プログラムの実行を管理する更新管理プログラムは、前記プロセッサで実行されると、
    前記複数の更新プログラムのそれぞれの進捗状況及び前記終了予定時刻と、前記複数の更新プログラムの全ての進捗状況及び終了予定時刻と、を表示する
    請求項7に記載の管理システム。
  11. ストレージシステムを管理する方法であって、
    記憶デバイスが、データベースを利用してストレージシステムに係る情報を制御する情報処理プログラムを保持しており、
    プロセッサが、前記情報処理プログラムと当該情報処理プログラムが利用するデータベースと、を更新する更新プログラムを実行すると、
    更新前の情報処理プログラムが利用するデータベースの少なくとも一部のサイズと、更新後の情報処理プログラムが利用するデータベースの構成とに基づいて、前記情報処理プログラム及び前記データベースの更新にかかる推定時間である推定更新時間を算出し、
    その算出した推定更新時間を出力する
    管理方法。


JP2017525718A 2015-06-30 2015-06-30 管理システム、及び、管理方法 Active JP6259547B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/068817 WO2017002194A1 (ja) 2015-06-30 2015-06-30 管理システム、及び、管理方法

Publications (2)

Publication Number Publication Date
JPWO2017002194A1 true JPWO2017002194A1 (ja) 2017-10-05
JP6259547B2 JP6259547B2 (ja) 2018-01-10

Family

ID=57607974

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017525718A Active JP6259547B2 (ja) 2015-06-30 2015-06-30 管理システム、及び、管理方法

Country Status (3)

Country Link
US (1) US20180011890A1 (ja)
JP (1) JP6259547B2 (ja)
WO (1) WO2017002194A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7228806B2 (ja) * 2018-12-26 2023-02-27 パナソニックIpマネジメント株式会社 電力計測システム、情報変更方法及びプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06250830A (ja) * 1993-02-23 1994-09-09 Nippon Telegr & Teleph Corp <Ntt> サービス無中断プログラム入替装置
JP2012083867A (ja) * 2010-10-08 2012-04-26 Nomura Research Institute Ltd サービス提供システムの機能拡張方法
JP2012181578A (ja) * 2011-02-28 2012-09-20 Fuji Xerox Co Ltd 更新制御装置及びプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030167409A1 (en) * 2002-03-04 2003-09-04 Lester Sussman Secure electronic directory and catalog synchronization using email to trigger synchronization
WO2006063118A2 (en) * 2004-12-07 2006-06-15 Pure Networks, Inc. Network management
US8126992B2 (en) * 2005-10-27 2012-02-28 International Business Machines Corporation Method and system for optimally scheduling a web conference managed by a web application
US20100082507A1 (en) * 2008-09-30 2010-04-01 Archana Sulochana Ganapathi Predicting Performance Of Executing A Query In Isolation In A Database
AU2015201361B2 (en) * 2014-11-14 2017-03-02 Tata Consultancy Services Limited A method and system for efficient performance prediction of structured query for big data
US10412020B2 (en) * 2015-04-30 2019-09-10 Amazon Technologies, Inc. Background processes in update load balancers of an auto scaling group

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06250830A (ja) * 1993-02-23 1994-09-09 Nippon Telegr & Teleph Corp <Ntt> サービス無中断プログラム入替装置
JP2012083867A (ja) * 2010-10-08 2012-04-26 Nomura Research Institute Ltd サービス提供システムの機能拡張方法
JP2012181578A (ja) * 2011-02-28 2012-09-20 Fuji Xerox Co Ltd 更新制御装置及びプログラム

Also Published As

Publication number Publication date
JP6259547B2 (ja) 2018-01-10
US20180011890A1 (en) 2018-01-11
WO2017002194A1 (ja) 2017-01-05

Similar Documents

Publication Publication Date Title
JP6373482B2 (ja) コンピュータ環境を統制し分析するためのインターフェース
JP4733461B2 (ja) 計算機システム、管理計算機及び論理記憶領域の管理方法
US9760294B2 (en) Computer system, storage management computer, and storage management method
JP5589218B2 (ja) 計算機システム及び管理計算機
US20170010941A1 (en) Method for adjusting backup schedule for virtual computer
US20130311645A1 (en) Management system and management method
WO2015049742A1 (ja) ストレージシステムおよびストレージシステム制御方法
JP5222876B2 (ja) 計算機システムにおけるシステム管理方法、及び管理システム
US8935373B2 (en) Management system and computer system management method
US10225158B1 (en) Policy based system management
JP6235156B2 (ja) 計算機システムおよび負荷平準化プログラム
JP6273966B2 (ja) ストレージ管理装置、性能調整方法及び性能調整プログラム
US20170359221A1 (en) Method and management system for calculating billing amount in relation to data volume reduction function
CN108027745B (zh) 基于应用特征来管理it基础设施的方法和装置
US20150370619A1 (en) Management system for managing computer system and management method thereof
US20130179636A1 (en) Management apparatus and management method of computer system
JP6259547B2 (ja) 管理システム、及び、管理方法
JP6622808B2 (ja) 管理計算機および計算機システムの管理方法
WO2014010047A1 (ja) 管理システム及び情報取得方法
JP5938482B2 (ja) 情報処理装置及びプログラム
JP7190530B2 (ja) ユーザによる情報システムのリソース操作を評価するシステム
JP6686602B2 (ja) 制御方法、制御プログラムおよび制御装置
JP2006202293A (ja) 資産情報の一元管理を行うコンピュータシステム
WO2018061158A1 (ja) 計算機システムおよび計算機システム制御方法
WO2016013120A1 (ja) ストレージ管理システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171106

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171208

R150 Certificate of patent or registration of utility model

Ref document number: 6259547

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150