JP2019160124A - ストレージ管理装置、ストレージシステム、及びストレージ管理プログラム - Google Patents

ストレージ管理装置、ストレージシステム、及びストレージ管理プログラム Download PDF

Info

Publication number
JP2019160124A
JP2019160124A JP2018048981A JP2018048981A JP2019160124A JP 2019160124 A JP2019160124 A JP 2019160124A JP 2018048981 A JP2018048981 A JP 2018048981A JP 2018048981 A JP2018048981 A JP 2018048981A JP 2019160124 A JP2019160124 A JP 2019160124A
Authority
JP
Japan
Prior art keywords
storage device
performance
storage
data
unit
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
JP2018048981A
Other languages
English (en)
Other versions
JP7006406B2 (ja
Inventor
友市 高川
Tomoichi Takagawa
友市 高川
文彦 河野
Fumihiko Kono
文彦 河野
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2018048981A priority Critical patent/JP7006406B2/ja
Priority to US16/283,389 priority patent/US10712973B2/en
Priority to CN201910141481.0A priority patent/CN110275675B/zh
Publication of JP2019160124A publication Critical patent/JP2019160124A/ja
Application granted granted Critical
Publication of JP7006406B2 publication Critical patent/JP7006406B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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/0608Saving storage space on storage 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/3034Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a storage system, e.g. DASD based or network based
    • 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
    • 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
    • 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
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0661Format or protocol conversion arrangements
    • 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]
    • 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/0671In-line storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3082Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved by aggregating or compressing the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/835Timestamp

Abstract

【課題】ストレージ管理装置によるストレージ装置からの性能情報の取得処理を効率的に実現する。【解決手段】ストレージ装置の状態情報の受信結果に基づき前記ストレージ装置の種類を識別する識別部24と、識別した種類が第1のストレージ装置である場合、第1のストレージ装置から、前記第1のストレージ装置の第1の性能情報を受信し、前記第1の性能情報を、受信した期間ごとに対応づけたテーブルのデータとしてデータベース21に格納する、第1の処理を実行する第1処理部2aと、識別した種類が第2のストレージ装置である場合、第2のストレージ装置から、前記第2のストレージ装置の第2の性能情報を受信してテキスト形式のファイルのデータとして記憶部22に格納する、第2の処理を実行する第2処理部2bと、識別した種類に応じて、前記第1の処理の実行、又は、前記第2の処理の実行、を切り替える切替部24と、をそなえる。【選択図】図7

Description

本発明は、ストレージ管理装置、ストレージシステム、及びストレージ管理プログラムに関する。
ストレージシステムにおいて、ストレージ装置の管理、例えば、ストレージ装置の構成管理、障害管理、性能情報管理等の機能を提供するストレージ管理装置が用いられることがある。ストレージ管理装置は、ストレージ環境を総合的に管理することで、ストレージシステムの安定運用を実現する。
ストレージ管理装置は、例えば、従来型のストレージ装置等の性能情報をグラフ表示することで、業務要件で定義されるI/O(Input / Output)性能の最適化に用いられる情報をユーザに提供したり、装置やボリュームに閾値を設定して監視することができる。これにより、ユーザは、業務への影響が発生する前に性能問題を把握し対処することが可能となる。
特開2017−103580号公報 特開2004−30491号公報 国際公開第2015/107574号パンフレット 特開平5−313984号公報 特開平10−27127号公報 特開平11−7401号公報 特開2015−60275号公報 特開2015−92420号公報
近年、ストレージ装置においては、SDS(Software Defined Storage)の検討が進んでおり、例えば、スケールアウト型の新たなストレージ装置の開発が行なわれている。
ストレージ管理装置により、ストレージシステムのストレージ環境を総合的に管理しようとする場合、従来型のストレージ装置に加えて、スケールアウト型のストレージ装置についても性能情報の収集を可能とすることが効果的である。
しかし、ストレージ管理装置において、従来型のストレージ装置に対して行なっていた性能情報の取得処理を、スケールアウト型のストレージ装置に適用した場合、以下のような不都合が生じる可能性がある。
(a)装置から取得するデータの増大による過大なネットワーク負荷の発生。
ストレージ管理装置は、例えば、最新の性能データの値を、ストレージ装置を制御するストレージ制御装置からバイナリ形式で取得し、差分や累積値等を計算した上で、テキスト形式のファイルに書き込み、性能情報として保持する。バイナリ形式の性能データは、例えば、整数型であれば4バイト等であり、倍精度型ならば8バイト等である。テキスト形式としては、例えば、CSV(Comma Separated Values)形式が挙げられる。
性能データは、ストレージ装置を構成するボリューム等の部品数に比例して増大する。スケールアウト型のストレージ装置では、例えば、部品数が仕様上の最大値(6万5千程度)になると、1回の性能データの取得サイズが50メガバイトを超える場合がある。このため、スケールアウト型のストレージ装置においては、大容量のデータ転送に伴うネットワークの輻輳による通信遅延等が増大し、ストレージ管理装置によるシステム全体の安定した管理が困難になる場合がある。
(b)保存用のCSVファイルによる過大なディスクスペースの発生。
ストレージ管理装置は、ストレージ制御装置においてプログラム上で計算可能なバイナリ形式で保持されている性能データレコードを取得し、CSV形式の文字列に変換して保持するため、保持するデータは冗長となり格納効率が低い。
例えば、スケールアウト型のストレージ装置の最大構成を想定すると、ストレージ管理装置は、取得処理の周期(例えば600秒)ごとに50メガバイトのレコードを採取し、保持期間の間(例えば90日間)保持する。この場合、700ギガバイトものディスクスペースを占有することになり、ストレージ管理装置の記憶領域の使用量が増大する。
(c)保持期限を超過したデータの削除処理の負荷の発生。
例えば、性能情報には保持期限が設定され、ストレージ管理装置は、ファイルシステム上で保持期限を超過した性能情報を含むCSVファイルを検索して削除する。このため、性能情報のファイル数やデータサイズが増加するほど、性能情報の削除処理におけるストレージ管理装置の処理負荷が高まることになる。
このように、ストレージ装置の規模(構成)に応じて、ストレージ管理装置によるストレージ装置からの性能情報の取得処理が非効率になる場合がある。
1つの側面では、本発明は、ストレージ管理装置によるストレージ装置からの性能情報の取得処理を効率的に実現することを目的の1つとする。
1つの側面では、ストレージ管理装置は、識別部と、第1処理部と、第2処理部と、切替部と、をそなえてよい。前記識別部は、ストレージ装置から送信される、前記ストレージ装置の状態に関する状態情報を受信し、前記状態情報の受信結果に基づいて、前記ストレージ装置の種類を識別してよい。前記第1処理部は、識別した前記ストレージ装置の種類が第1のストレージ装置である場合、前記第1のストレージ装置から送信された、前記第1のストレージ装置の性能に関する第1の性能情報を受信してよい。また、前記第1処理部は、受信した前記第1の性能情報を、前記第1の性能情報を受信した期間ごとに対応づけたテーブルのデータとしてデータベースに格納してよい。前記第2処理部は、識別した前記ストレージ装置の種類が第2のストレージ装置である場合、前記第2のストレージ装置から送信された、前記第2のストレージ装置の性能に関する第2の性能情報を受信してよい。また、前記第2処理部は、受信した前記第2の性能情報をテキスト形式のファイルのデータとして記憶部に格納する、第2の処理を実行してよい。前記切替部は、識別した前記ストレージ装置の種類に応じて、前記第1処理部による前記第1の処理の実行、又は、前記第2処理部による前記第2の処理の実行、を切り替えてよい。
1つの側面では、ストレージ管理装置によるストレージ装置からの性能情報の取得処理を効率的に実現することができる。
一実施形態に係るストレージシステムの構成例を示すブロック図である。 一実施形態に係るサーバの機能構成例を示すブロック図である。 図2に示す性能情報の一例を示す図である。 図2に示す管理テーブルの一例を示す図である。 一実施形態に係る制御装置Aの機能構成例を示すブロック図である。 一実施形態に係る制御装置Bの機能構成例を示すブロック図である。 一実施形態に係るストレージシステムの全体の動作例を説明する図である。 一実施形態に係る性能情報取得処理の動作例を説明するフローチャートである。 一実施形態に係る性能状態送信処理の動作例を説明するフローチャートである。 一実施形態に係る性能データ送信処理の動作例を説明するフローチャートである。 一実施形態に係る性能情報送信処理の動作例を説明するフローチャートである。 一実施形態に係る性能情報格納処理の動作例を説明するフローチャートである。 一実施形態に係る性能管理機能のステータスの一例を示す図である。 一実施形態に係る性能情報削除処理の動作例を説明するフローチャートである。 ファイルシステムを用いたディレクトリの検索及び削除の動作例を説明する図である。 論理テーブルを用いたパーティションテーブルの検索及び削除の動作例を説明する図である。 一実施形態に係るコンピュータのハードウェア構成例を示すブロック図である。
以下、図面を参照して本発明の実施の形態を説明する。ただし、以下に説明する実施形態は、あくまでも例示であり、以下に明示しない種々の変形や技術の適用を排除する意図はない。例えば、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。なお、以下の説明で用いる図面において、同一符号を付した部分は、特に断らない限り、同一若しくは同様の部分を表す。
〔1〕一実施形態
一実施形態においては、ストレージ管理装置によるストレージ装置からの性能情報の取得処理を効率的に実現する手法について説明する。
〔1−1〕一実施形態に係るストレージシステムの構成例
図1に示すように、一実施形態に係るストレージシステム1は、例示的に、ストレージ管理装置の一例としてのサーバ2、並びに、ストレージ制御装置の一例としての制御装置3a及び3bをそなえてよい。なお、図1においては、性能情報の取得処理に関連する機能ブロックに着目したブロック図を例示しており、サーバ2の他の管理等に関する機能ブロックやストレージシステム1における業務等に関する機能ブロックの図示を省略している。
サーバ2は、LAN(Local Area Network)等のネットワーク1aを介して制御装置3aと相互に通信可能に接続され、LAN等のネットワーク1bを介して制御装置3bと相互に通信可能に接続される。なお、ネットワーク1a及び1bは1つの(ストレージ装置4a及び4bで共通する)ネットワークであってもよい。
制御装置3aはストレージ装置4aを制御する第1のストレージ制御装置の一例であり、制御装置3bはストレージ装置4bを制御する第2のストレージ制御装置の一例である。一実施形態において、ストレージ装置4aは、例えば、ストレージ(記憶領域を有する記憶装置;図示省略)を増設可能なスケールアウト型のストレージ装置であってよく、第1のストレージ装置の一例である。一方、一実施形態において、ストレージ装置4bは、従来型のストレージ装置であってよく、第2のストレージ装置の一例である。
このため、サーバ2は、装置規模に関連する製品仕様が互いに異なる、換言すれば、互いに異なる種別(機種)のストレージ装置4a及び4bを管理する管理部2a及び2bをそなえてよい。なお、ストレージシステム1は、複数のストレージ装置4aを有してもよく、ストレージ装置4bを有しない構成であってもよい。
以下、制御装置3a及び3bを区別しない場合には、単に「制御装置3」と表記し、ストレージ装置4a及び4bを区別しない場合には、単に「ストレージ装置4」と表記する。
以下の説明において、スケールアウト型のストレージ装置4aに関連する装置又は機能ブロックを特定する場合には、符号に代えて、装置名又は機能ブロック名の末尾に“A”を付加して表記することがある。一方、従来型のストレージ装置4bに関連する装置又は機能ブロックを特定する場合には、符号に代えて、装置名又は機能ブロック名の末尾に“B”を付加して表記することがある。なお、ストレージ装置4に「関連する」とは、例えば、ストレージ装置4に「属する」ことを意味してもよいし、或いは、ストレージ装置4を「処理対象とする」ことを意味してもよい。
制御装置3aは、SAN(Storage Area Network)等のネットワークを介して、業務サーバ(図示省略)等にストレージ装置4aの記憶領域を提供する。制御装置3bは、SAN等の図示しないネットワークを介して、業務サーバ(図示省略)等にストレージ装置4bの記憶領域を提供する。なお、図1では、ストレージ装置4のストレージ(記憶領域を有する記憶装置)の図示を省略しているが、ストレージ装置4は、例えば、SAN等のネットワークにより接続された複数のストレージをそなえてよい。
〔1−1−1〕サーバの構成例
図2に示すように、ストレージ管理装置の一例としてのサーバ2は、一実施形態に係る性能情報の取得処理を行なう機能に着目すると、例示的に、DB(Database)21、メモリ部22、並びに、管理部2a及び2bをそなえてよい。
DB21は、管理部2aによるストレージ装置4aの管理に用いられるデータベースの一例であり、例示的に、構成情報211、性能情報212、及び管理テーブル213を格納してよい。DB21はリポジトリの一例であり、例えば、PostgreSQLのようなデータベース管理システムであってよい。
構成情報211は、ストレージ装置4aの構成に関する情報である。構成情報211は、制御装置3aが保持する装置情報311(図5参照)の一部の情報に対応しており、所定のタイミングで(例えば性能情報取得処理において)、制御装置3aから取得され更新されてよい。
性能情報212は、制御装置3aから取得したストレージ装置4aの性能に関する第1の性能情報を蓄積した、DB21で管理される複数のテーブルの集合である。性能情報212は、例えば、サーバ2において、ストレージシステム1の性能分析に用いる情報のユーザへの提示や、ストレージシステム1の性能の監視等に用いられる。
図3に示すように、性能情報212は、例示的に、ストレージ装置4ごとに、ストレージの性能に関するテーブル212a、ノードに関するテーブル212b、等のように、性能の種別ごとに分割されたパーティションテーブルを有してよい。なお、性能情報212は、上記のテーブル212a及び212bの他に、例えば、ポート、CPU(Central Processing Unit)、CPUコア、ドライブ、ストレージのプール、ボリューム等のパーティションテーブルを有してよい。以下、パーティションテーブル(Partition Table)を「PT」と表記する。
PTの一例として、図3に示すように、テーブル212aは、タイムスタンプ及び各種性能データを含んでよい。性能データには、読み出し(Read)、書き込み(Write)、読み出し及び書き込み、キャッシュ、CPU性能、温度、等に関する性能データが含まれてよい。なお、図3に示す性能データは例示に過ぎず、性能情報212には、より詳細な性能データ等の種々のデータが含まれてよい。
また、性能データの種類としては、例えば、ユーザ向けの性能データ、開発者向けの性能データ(例えばハードウェア開発者向けの障害調査用データ)、或いは、ユーザ及び開発者の双方向けの性能データ等が挙げられる。なお、サーバ2によるストレージ装置4の管理機能において利用されない性能データ、例えば、開発者向けの性能データのような障害調査用の補助データ等については、後述するように、圧縮ファイルのバイト列として性能情報212に格納されてもよい。
ここで、一実施形態においては、性能情報212は、PTが一度に削除される単位(例えば1日分のPT)に対応した期間(例えば1日)内に取得又は計測された性能データが、性能の種別ごとに1つのPTで管理されてよい。換言すれば、性能情報212は、情報を取得した取得期間ごとのテーブルにより管理されてよい。例えば、各PT(一例として、ストレージの性能に関するテーブル212a)は、削除単位(例えば1日)ごとに異なるテーブルで管理され、合計で保持期間(例えば7日間)/削除単位(例えば1日)=7個のテーブルが存在するように管理されてよい。
このように、性能情報212のPTの時間軸における格納単位を、PTが一度に削除される単位に一致又は略一致させることで、後述するように、性能情報212の更新や削除の管理が容易となり、サーバ2の処理負荷の低減を実現できる。なお、簡単のため、以下の説明では、PTの時間軸における格納単位が1日であるものとするが、これに限定されるものではなく、サーバ2の記憶領域や収集される性能データサイズ等に応じて、例えば数時間等であってもよい。また、格納単位が1日である場合であっても、性能データの収集は、定期的に(例えば十分ごとに)実行されてよい。
換言すれば、DB21は、管理部2aが制御装置3aから受信した複数の性能データを、複数の性能データを受信した期間ごと且つ性能種別ごとに対応づけたテーブルのデータとして格納するといえる。
管理テーブル213は、性能情報212のPTの管理に用いられる情報である。図4に示すように、管理テーブル213は、例示的に、PT名、ストレージ識別子、リソースタイプ(Resource_Type)、開始時刻(Start_Time)、終了時刻(End_Time)、最終更新時(Last_Update)の項目を含んでよい。
PT名には、PTの名称が設定される。一実施形態においては、PTは、図4に例示するように、性能を示す“performance”、ストレージ識別子を示す“xxxxxx”、リソースタイプを示す“storages”(一例)、格納単位を示す“part_20171001”(一例)等の部分を含んでよい。なお、ストレージ識別子は、ストレージ装置4aごとに一意の識別子が設定されてよい。リソースタイプには、そのテーブルが示す性能の種別が設定されてよい。格納単位には、例えば、そのテーブルにおける性能データの受信或いは(制御装置3aにおける)測定のタイミングが属する「年月日」或いは「年月日及び時間(Hour)」等が設定されてよい。
ストレージ識別子、リソースタイプには、PT名に含まれる情報と同一の情報が設定されてよい。開始時刻、終了時刻、最終更新時には、PT名の格納単位に属する(含まれる)、性能データの取得或いは測定の開始時刻、終了時刻、及び最終更新時が設定されてよい。ストレージ識別子、リソースタイプ、開始時刻、終了時刻、最終更新時の情報は、後述する管理部2aによるPTの検索に用いられてよい。
メモリ部22は、管理部2bによるストレージ装置4bの管理に用いられる記憶領域であり、例示的に、構成XML(eXtensible Markup Language)221及びCSV222を格納してよい。なお、メモリ部22は、ストレージシステム1にストレージ装置4bが含まれない場合には省略されてもよい。
構成XML221は、ストレージ装置4bの構成に関する情報である。構成XML221は、制御装置3bが保持する装置情報331(図6参照)の一部の情報に対応しており、所定のタイミングで(一例として、性能情報取得処理において)、制御装置3bから取得され更新されてよい。
CSV222は、制御装置3bから取得したストレージ装置4bの性能に関する第2の性能情報を蓄積したCSV形式の複数のファイルである。CSV222は、例えば、サーバ2において、ストレージシステム1の性能分析に用いる情報のユーザへの提示や、ストレージシステム1の性能の監視等に用いられる。
DB21及びメモリ部22は、それぞれ、揮発性メモリ、記憶装置、或いはフラッシュメモリ等の記憶領域により実現されてよい。揮発性メモリとしては、例えばRAM(Random Access Memory)が挙げられる。記憶装置としては、例えばHDD(Hard Disk Drive)等の磁気ディスク装置やSSD(Solid State Drive)等の半導体ドライブ装置が挙げられる。
管理部2aは、ストレージ装置4aの管理を行なう。なお、管理部2aは、通信先のストレージ装置4がストレージ装置4a及び4bのいずれであるのかを識別し、通信先がストレージ装置4bである場合には管理部2bに処理を引き継いでよい。図2に示すように、管理部2aは、例示的に、IF(Interface)制御部23、装置監視部24、及びDB管理部25をそなえてよい。
IF制御部23は、制御装置3aとの間の通信IFを制御する。例えば、IF制御部23は、制御装置3a(の各々)との間で、REST(Representational State Transfer) API(Application Programming Interface)のフレームワークを介した通信を制御してよい。
装置監視部24は、ストレージ装置4の監視を行なう。例えば、装置監視部24は、監視スレッドにより、制御装置3a及び3bに対する性能情報取得処理の切り替え制御、並びに、制御装置3aに対する性能情報取得処理に関する制御、等を行なってよい。
DB管理部25は、DB21の性能情報212の管理を行なう。例えば、DB管理部25は、性能情報212の管理APIとして待機し、装置監視部24からの指示に応じて管理スレッドを起動し、管理スレッドにより性能情報212の更新等を行なってよい。
管理部2bは、ストレージ装置4bの管理を行なう。図2に示すように、管理部2bは、例示的に、IF制御部26及び装置監視部27をそなえてよい。
IF制御部26は、制御装置3bとの間の通信IFを制御する。例えば、IF制御部26は、制御装置3b(の各々)との間で、NIM(Network Installation Management)−PCC(Private Certified Connection)又はCLI(Command Line Interface)等を介した通信を制御してよい。
装置監視部27は、ストレージ装置4bの監視を行なう。例えば、装置監視部27は、監視スレッドにより、制御装置3bに対する性能情報取得処理に関する制御を行なってよい。
〔1−1−2〕制御装置Aの構成例
図5に示すように、ストレージ装置4aの制御装置3a(制御装置A)は、例示的に、DB31及び制御部32をそなえてよい。
DB31はリポジトリの一例であり、例えば、PostgreSQLのようなデータベース管理システムであってよい。図5においては、リポジトリとして管理される情報のうち、ストレージ装置4aに関する情報を装置情報311と表記する。装置情報311は、例えば、ストレージ装置4aの構成に関する構成データや、性能に関する性能データを含んでよい。DB31のデータ構造は、サーバ2のDB21とは異なるデータ構造で合ってもよいし、同一のデータ構造であってもよい。なお、DB31は、リポジトリとして、装置情報311に加えて、ストレージ装置4aの制御に用いる種々の制御テーブルを格納してよい。
DB31は、揮発性メモリ、記憶装置、或いはフラッシュメモリ等の記憶領域により実現されてよい。
制御部32は、制御装置3aのファームウェア等により実現され、制御装置3aに関する種々の制御を行なう。一実施形態に係る性能情報取得処理を行なう機能に着目すると、制御部32は、例示的に、サーバ2との通信機能や、DB31に対する性能データの更新及び抽出機能等をそなえてよい。
〔1−1−3〕制御装置Bの構成例
図6に示すように、ストレージ装置4bの制御装置3b(制御装置B)は、例示的に、メモリ部33及び制御部34をそなえてよい。
メモリ部33は、ストレージ装置4bに関する装置情報331を格納する。装置情報331は、例えば、ストレージ装置4bの構成に関する構成データや、性能に関する性能データを含んでよい。一実施形態において、装置情報331のデータは、バイナリ形式等のデータとして格納・管理されてよい。なお、メモリ部33は、装置情報331に加えて、ストレージ装置4bの制御に用いる種々の制御テーブルを格納してよい。
メモリ部33は、揮発性メモリ、記憶装置、或いはフラッシュメモリ等の記憶領域により実現されてよい。
制御部34は、制御装置3bのファームウェア等により実現され、制御装置3bに関する種々の制御を行なう。一実施形態に係る性能情報取得処理を行なう機能に着目すると、制御部34は、例示的に、サーバ2との通信機能や、メモリ部33に対する性能データの更新及び抽出機能等をそなえてよい。
〔1−2〕動作例
次に、上述の如く構成されたストレージシステム1の動作例を説明する。
はじめに、図7を参照して、性能情報の取得処理の動作例を簡単に説明する。図7に例示するように、管理部2aの装置監視部24は、構成情報211の装置情報を参照して((i)参照)、性能データの取得対象となるストレージ装置4aに対するユーザ設定を取得する。ユーザ設定には、性能管理の有効又は無効、性能データを取得するか否か、及び、性能データの保持日数、等の設定が含まれてよい。そして、装置監視部24は、ユーザ設定に基づき性能データを取得する場合に、ストレージ装置4aの制御装置3aに対して性能情報の取得要求を送信する。
ストレージ装置4aの制御装置3aは、装置監視部24からの要求に応じて、装置情報311から性能の種別ごとに、テキスト形式、例えばCSV形式で性能データを抽出し、抽出した各性能データをまとめて圧縮した圧縮ファイルを生成する。そして、制御装置3aは、生成した圧縮ファイルの情報を装置監視部24に送信する((ii)参照)。
装置監視部24は、受信した圧縮ファイルを所定の記憶領域に格納する。DB管理部25は、圧縮ファイルを伸張(展開)して((iii)参照)、CSV形式の性能データを取得(算出)する((iv)参照)。
DB管理部25は、取得した性能データを用いて、ストレージ、性能の種別、及び格納単位(例えば日にち)、の区分ごとに、性能情報212を更新((v)参照)、例えばPTに性能データをインサートする。なお、DB管理部25は、性能情報212の更新において、管理テーブル213を参照し、既存のPTへの更新或いは新たなPTの作成を判断してよく、また、性能情報212の更新に応じて管理テーブル213を更新してよい。
一方、装置監視部27は、構成XML221の構成情報を参照して((I)参照)、性能データの取得対象となるストレージ装置4bに対するユーザ設定を取得する。ユーザ設定には、ストレージ装置4aに対するユーザ設定と同様の設定が含まれてよい。そして、装置監視部27は、ユーザ設定に基づき性能データを取得する場合に、ストレージ装置4bの制御装置3bに対して性能情報の取得要求を送信する。
ストレージ装置4bの制御装置3bは、装置監視部27からの要求に応じて、装置情報331から性能データを抽出し、抽出した性能データを応答データに格納する。そして、制御装置3bは、生成した応答データの情報を装置監視部27に送信する((II)参照)。
装置監視部27は、受信した応答データに基づいて(例えばCSV形式に変換して)、CSV222を更新((III)参照)する。
〔1−2−1〕性能情報取得処理
次に、図8〜図12を参照して、ストレージシステム1において定期処理として実行される性能情報取得処理の動作例を説明する。なお、定期処理としての性能情報取得処理は、装置監視部24の監視スレッドにより、定期処理の実施タイミングで実行されてよい。定期処理の実施タイミングは、例えば、600秒(10分)程度の周期であってよい。
図8に例示するように、サーバ2において、管理部2aの装置監視部24は、構成情報211を参照して、ストレージ装置4(例えば、サーバ2に接続される全てのストレージ装置4のそれぞれ)に対する、性能状態取得要求のREST APIを発行する。IF制御部23は、REST APIのフレームワークを通じて、ネットワーク1a及び1bを介してストレージ装置4に要求を送信する(ステップS1)。
図9に例示するように、制御装置3aの制御部32は、性能状態送信処理において、サーバ2から性能状態取得要求を受信すると(ステップS21)、性能状態の情報を生成する(ステップS22)。そして、制御部32は、生成した性能状態の情報をサーバ2に送信する(ステップS23)。なお、性能状態は、状態情報の一例であり、例えば、ストレージ装置4a或いは制御装置3aの装置状態(ステータス)等の情報であってよい。
図8の説明に戻り、サーバ2の装置監視部24は、IF制御部23を介して制御装置3から性能状態の情報を正常に取得(受信)したか否かを判定する(ステップS2)。制御装置3から性能状態の情報を正常に取得(受信)したか否かの判定結果は、ストレージ装置4の種類の識別結果と捉えることができる。
例えば、性能状態の情報を正常に取得していない場合(ステップS2でNo)、性能状態取得要求の送信先の制御装置3が、REST APIに対応していない(取得要求を受信できなかった)ストレージ装置4bの制御装置3bであることを意味する。一方、性能状態の情報を正常に取得した場合(ステップS2でYes)、性能状態取得要求の送信先の制御装置3が、REST APIに対応するストレージ装置4aの制御装置3aであることを意味する。
従って、装置監視部24は、性能状態の情報を正常に取得した場合は管理部2aによる処理を実行し、性能状態の情報を正常に取得していない場合は管理部2bに処理を実行させる。
このように、装置監視部24は、ストレージ装置4から送信される、ストレージ装置4の状態に関する状態情報を受信し、状態情報の受信結果に基づいて、ストレージ装置4の種類を識別する識別部の一例である。また、装置監視部24は、識別したストレージ装置4の種類に応じて、管理部2aによる第1の処理としての性能情報取得処理の実行、又は、管理部2bによる第2の処理としての性能情報取得処理の実行、を切り替える切替部の一例である。
ステップS2において、性能状態の情報を正常に取得していない場合(ステップS2でNo)、装置監視部24は、管理部2bに対して、ストレージ装置4bに対する制御装置B用の性能情報取得処理を実行するように指示する。管理部2bの装置監視部27は、待機時間の経過を待ち合わせる(ステップS3及びS3でNo)。
待機時間が経過すると(ステップS3でYes)、装置監視部27は、構成XML221を更新する(ステップS4)。構成XML221の更新処理では、例えば、装置監視部27は、IF制御部26を介して、制御装置3bに対して構成情報の取得要求を送信し、制御装置3bにおいて装置情報331から抽出され送信された構成情報を制御装置3bから受信してよい。そして、装置監視部27は、受信した構成情報に基づき構成XML221を更新してよい。
次いで、装置監視部27は、制御装置3bに対して、IF制御部26を介して性能データの取得要求(例えばコマンド)を送信する(ステップS5)。
図10に例示するように、制御装置3bの制御部34は、性能データ送信処理において、サーバ2から性能データ取得要求を受信すると(ステップS31)、装置情報331から性能データを抽出し、応答データに格納する(ステップS32)。そして、制御部34は、応答データをサーバ2に送信する(ステップS33)。
図8の説明に戻り、装置監視部27は、IF制御部26を介して制御装置3bから性能データを受信し(ステップS6)、受信した性能データを所定の記憶領域に記憶する(ステップS7)。なお、記憶した性能データは、後述する性能情報格納処理において、CSV222に書き出される。
装置監視部27は、性能情報の取得対象となる全てのストレージ装置4bについて、性能管理が完了したか否かを判定し(ステップS8)、完了してない場合(ステップS8でNo)、次の待機時間を計算し(ステップS9)、処理がステップS3に移行する。
待機時間は、例えば、ステップS8の判定後、性能管理が未完了のストレージ装置4bに対して性能情報の取得処理を行なうまでの待機時間である。待機時間は、例えば、制御装置3bからの性能データ取得処理にかかった時間を考慮して調整されてよい。このように、待機時間を設けることにより、ネットワーク1bを連続的に長時間に亘って占有しないようにすることができ、ネットワーク1bの通信負荷分散を実現できる。また、性能データのデータサイズやネットワーク状態の影響により性能データ取得処理の処理時間が変動したとしても、待機時間を可変な時間とすることで、変動分の時間を調整(吸収)できるため、次の性能データ取得処理を定期的な開始時刻に開始できる。
一方、全てのストレージ装置4bについて性能管理が完了した場合(ステップS8でYes)、定期処理としての性能情報取得処理が終了する。
ステップS2において、制御装置3aから性能状態の情報を正常に取得した場合(ステップS2でYes)、装置監視部24は、ストレージ装置4aに対する制御装置A用の性能情報の取得処理を実行する。
装置監視部24は、待機時間の経過を待ち合わせる(ステップS10及びS10でNo)。待機時間が経過すると(ステップS10でYes)、装置監視部24は、構成情報211を更新する(ステップS11)。構成情報211の更新処理では、例えば、装置監視部24は、IF制御部23を介して、制御装置3aに対して構成情報の取得要求を送信し、制御装置3aにおいて装置情報311から抽出された構成情報を制御装置3aから受信してよい。そして、装置監視部24は、受信した構成情報に基づき構成情報211を更新してよい。
次いで、装置監視部24は、制御装置3aに対する性能情報取得要求のREST APIを発行する。IF制御部23は、REST APIのフレームワークを通じて、ネットワーク1aを介して制御装置3aに要求を送信する(ステップS12)。
図11に例示するように、制御装置3aの制御部32は、性能情報送信処理において、サーバ2から性能情報取得要求を受信すると(ステップS41)、未取得の性能情報が存在するか否かを判定する(ステップS42)。
未取得の性能情報が存在する場合(ステップS42でYes)、制御部32は、現在時刻をディレクトリ名に含んだディレクトリを所定の記憶領域に作成する(ステップS43)。そして、制御部32は、作成したディレクトリにおいて、性能情報名(例えば性能の種別)と、ストレージ識別子と、現在時刻とをファイル名に含むテキストファイルを作成し、当該テキストファイルに性能情報を書き出す(ステップS44)。そして、処理がステップS42に移行する。なお、テキストファイルとしては、例えばCSVファイルが挙げられる。なお、現在時刻は、例えば、PT名に設定される年月日等の情報であってもよい。
一方、ステップS42において、未取得の性能情報が存在しない場合(ステップS42でNo)、制御部32は、取得したテキストファイルをストレージ識別子と現在時刻とをファイル名に含む圧縮ファイルに格納する(ステップS45)。
そして、制御部32は、サーバ2に対して、圧縮ファイルを格納するディレクトリ名を返却(送信)する(ステップS46)。
このように、ストレージシステム1では、DB31内の性能データをテキストファイルに変換する処理をストレージ装置4a側(制御装置3a側)に負担させる(オフロードする)ことで、サーバ2の処理負荷を低減させることができる。
また、制御装置3aにおいて、性能データを含む複数のテキストファイルを圧縮してから送信することで、データ転送量を少なくでき、ネットワーク負荷を低減できる。
図8の説明に戻り、装置監視部24は、IF制御部23を介して制御装置3aからディレクトリ名を受信すると(ステップS13)、ディレクトリから圧縮ファイルを取得し、取得した圧縮ファイルを所定の記憶領域に格納する(ステップS14)。なお、装置監視部24が制御装置3aのディレクトリから圧縮ファイルを取得する処理は、制御装置3aが装置監視部24からの要求に応じて圧縮ファイルを送信し、装置監視部24が圧縮ファイルを受信する処理であると捉えることができる。
そして、装置監視部24は、性能情報格納用スレッドを起動する(ステップS15)。スレッドが起動されると、DB管理部25は、起動した性能情報格納用スレッドにより、性能情報格納処理を実行する(ステップS16)。
図12に例示するように、性能情報格納処理では、DB管理部25は、構成情報211を参照して、ストレージ装置4(例えば、サーバ2に接続される全てのストレージ装置4のそれぞれ)に対する、性能状態取得要求のREST APIを発行する。IF制御部23は、REST APIのフレームワークを通じて、ネットワーク1a及び1bを介してストレージ装置4に要求を送信する(ステップS51)。
DB管理部25は、IF制御部23を介して制御装置3から性能状態の情報を正常に取得したか否かを判定する(ステップS52)。正常に取得していない場合(ステップS52でNo)、性能状態取得要求の送信先の制御装置3が、REST APIに対応していないストレージ装置4bの制御装置3bであることを意味する。
この場合、DB管理部25は、性能情報格納処理を装置監視部27に指示する。装置監視部27は、性能情報格納処理において、図8のステップS7で所定の記憶領域に記憶した性能データから性能値を算出する(ステップS53)。そして、装置監視部27は、算出した性能値をCSV形式のファイルのデータとしてメモリ部22に書き出し(ステップS54)、性能情報格納処理が終了する。
一方、ステップS52において、制御装置3aから性能状態を正常に取得した場合(ステップS52でYes)、性能状態取得要求の送信先の制御装置3が、REST APIに対応するストレージ装置4aの制御装置3aであることを意味する。
この場合、DB管理部25は、ステップS14において所定の記憶領域に格納された圧縮ファイルを伸張し(ステップS55)、テキストファイル(例えばCSVファイル)のリストを取得(算出)する(ステップS56)。
DB管理部25は、テキストファイルのファイル名から、格納先のPT名を取得する(ステップS57)。上述のように、テキストファイルのファイル名は、制御装置3aにおいて、性能情報名(例えば性能の種別)と、ストレージ識別子と、現在時刻(例えば年月日)と、を含むように設定されている。従って、DB管理部25は、テキストファイルのファイル名に基づいて、当該ファイル内のデータを保存するPT名を容易に取得(決定)できる。
次いで、DB管理部25は、管理テーブル213を参照して、取得したPT名に対応するPTが性能情報212に存在するか否かを判定する(ステップS58)。この判定では、例えば、DB管理部25は、管理テーブル213(或いは論理テーブル)から、取得したPT名のエントリを検索し、ヒットするか否かを判定してよい。
性能情報212にPTが存在しない場合(ステップS58でNo)、DB管理部25は、取得したPT名のPTを作成し(ステップS59)、処理がステップS60に移行する。一方、性能情報212にPTが存在する場合(ステップS58でYes)、処理がステップS60に移行する。
ステップS60において、DB管理部25は、テキストファイルのリストのうち、PTに未格納のテキストファイルが存在するか否かを判定する。
未格納のテキストファイルが存在する場合(ステップS60でYes)、DB管理部25は、未格納のテキストファイルのファイル名から、格納先のPTを特定する(ステップS61)。そして、DB管理部25は、特定したPTに対して、未格納のテキストファイル内の性能情報を格納し(ステップS62)、処理がステップS60に移行する。
一方、未格納のテキストファイルが存在しない場合(ステップS60でNo)、DB管理部25は、性能管理のステータスを“Normal”に変更する(ステップS63)。そして、DB管理部25は、圧縮ファイルと伸張先ディレクトリとを削除し(ステップS64)、性能情報格納処理が終了する。
このように、装置監視部24及びDB管理部25は、制御装置3aにより性能種別ごとの複数の性能データが圧縮された圧縮データである第1の性能情報を、制御装置3a(ストレージ装置4a)から受信する。
以上のように、DB管理部25は、CSV形式の性能データを、より格納効率の良いDB21に格納することで、ディスクスペース使用量を減少させることができ、CSV形式でデータを格納する場合に生じるディスクスペース使用量の増大を抑制できる。
例えば、スケールアウト型のストレージ装置4aの最大構成を想定する。一例として、管理部2aは、取得処理の周期(例えば600秒)ごとに制御装置3aから性能情報を取得し、保持期間の間(例えば90日間)保持するものとする。この場合、占有されるディスクスペース使用量は、336ギガバイト程度となり、従来型のストレージ装置において占有され得るディスクスペース使用量(700ギガバイト)の48%程度に抑えることができる。
なお、DB管理部25は、ストレージ装置4aの管理機能において利用しない、例えば障害調査用の補助データ等については、圧縮ファイルを伸張せずに、バイト列のデータとして、性能情報212のPTに格納してもよい。
障害調査用の補助データ、例えば開発者向けの性能データの判別手法としては、種々の手法が挙げられる。
一例として、管理部2aは、性能データの個々の項目ごとに、ユーザ向けの性能データであるのか、開発者向けの性能データであるのか、或いは双方向けの性能データであるのか、を対応付けた管理情報を管理してもよい。この場合、開発者向けの性能データに対応する項目については、圧縮ファイルのまま、或いは、全体が伸張された後に開発者向けの性能データに対応する項目の情報のみがまとめて圧縮(再圧縮)され、バイト列のデータとして性能情報212に格納されてよい。
或いは、他の例として、管理部2aは、性能の種別(リソースタイプ)ごとに、ユーザ向けの性能データであるのか、開発者向けの性能データであるのか、或いは双方向けの性能データであるのか、を対応付けた管理情報を管理してもよい。この場合、開発者向けの性能データに対応する性能の種別については、圧縮ファイルのまま、バイト列のデータとして性能情報212に格納されてよい。
圧縮ファイル内のファイルの一覧取得や、圧縮ファイルの部分的な伸張については、既知の種々の手法により実現可能である。
上述した開発者向けの性能データの判別処理は、例えば、図12に示すステップS55及びS56の処理において実行されてよい。
以上のように、DB管理部25は、受信した圧縮データのうちの少なくとも一部を伸張して少なくとも一つの性能データを取得し、取得した少なくとも一つの性能データを、取得期間ごと且つ性能種別ごとのテーブルに含めてDB21に格納するのである。また、DB管理部25は、取得した圧縮データのうちの伸張していない部分の性能データを圧縮形式の状態でDB21に格納するのである。
このように、DB管理部25は、ストレージ装置4aの管理機能において利用されない性能データについては、圧縮ファイルのバイト列としてDB21に格納することで、ディスクスペースの使用量をより削減でき、格納効率を高めることができる。
図8の説明に戻り、装置監視部24は、DB管理部25による性能情報格納処理が終了すると、性能監視のステータスを“Normal”に変更し(ステップS17)、全てのストレージ装置4aに関する性能管理が完了したか否かを判定する(ステップS18)。
性能管理が完了していない場合(ステップS18でNo)、装置監視部24は、次の待機時間を計算し(ステップS19)、処理がステップS1に移行する。
待機時間は、例えば、ステップS18の判定後、性能管理が未完了のストレージ装置4aに対して性能情報の取得処理を行なうまでの待機時間である。待機時間は、例えば、制御装置3aからの性能データ取得処理にかかった時間を考慮して調整されてよい。このように、待機時間を設けることにより、ネットワーク1aを連続的に長時間に亘って占有しないようにすることができ、ネットワーク1aの通信負荷分散を実現できる。また、性能データのデータサイズやネットワーク状態の影響により性能データ取得処理の処理時間が変動したとしても、待機時間を可変な時間とすることで、変動分の時間を調整(吸収)できるため、次の性能データ取得処理を定期的な開始時刻に開始できる。
一方、全てのストレージ装置4aについて性能管理が完了した場合(ステップS18でYes)、定期処理としての性能情報取得処理が終了する。
なお、図8のステップS17及び図12のステップS63において、装置監視部24及びDB管理部25は、それぞれ、監視スレッド及びDB管理スレッドのステータスを変更する。
例えば、管理部2aは、各スレッドのステータスの組み合わせにより、性能管理機能のステータスを決定し、ステータスに応じて、オペレータへの通知やログへの書き出し等の状態出力処理を行なってもよい。
一例として、監視スレッドは、“Normal”、“Recovering”、“Internal Error”、“Stop”等のステータスを有してよい。“Normal”は正常動作中を示し、“Recovering”は管理部2aからストレージ装置4に通信できない状態を示す。“Internal Error”は制御装置3aからの情報のダウンロード失敗又は圧縮ファイルの伸張失敗を示し、“Stop”はオペレータ指示による動作停止を示す。
また、一例として、DB管理スレッドは、“Normal”、“Busy”、“Internal Error”、“Stop”等のステータスを有してよい。“Normal”は正常動作中を示す。“Busy”は、例えば、ディレクトリにCSVファイルが溜まっており、待機時間に対して、DB管理スレッドによるCSVファイル内の性能データをPTにインサートする処理が間に合っていない状況を示す。この場合、装置監視部24は、待機時間をより長い時間に変更してよい。“Internal Error”は、DB管理スレッドによるDB21への書き込み時のディクス容量不足、或いは、DB21の管理システム(例えばPostgreSQL)にアクセスできない、等の内部エラーを示す。“Stop”はオペレータ指示による動作停止を示す。
上記のステータスの組み合わせに基づき、管理部2aは、図13に例示するように、性能管理機能のステータスを決定し、例えば、ステータスが“Monitoring”以外の場合に状態出力処理を実行してよい。
このようなステータスの管理により、例えばオペレータは、ストレージ装置4a又は制御装置3aとの通信エラーや管理部2aの内部エラー、DB21と待機時間との関係に起因する障害、等を容易に判別可能となり、リカバリを迅速に行なうことができる。
以上のように、管理部2a(例えば装置監視部24及びDB管理部25)は、第1の処理としての性能情報取得処理を実行する第1処理部の一例である。第1の処理は、例えば、以下の処理を含んでよい。
・管理部2aは、装置監視部24が識別したストレージ装置4の種類が第1のストレージ装置4aである場合、第1のストレージ装置4aから送信された、第1のストレージ装置4aの性能に関する第1の性能情報を受信する。
・管理部2aは、受信した第1の性能情報を、第1の性能情報を受信した期間ごとに対応づけたテーブルのデータとしてデータベースに格納する。
また、管理部2b(例えば装置監視部27)は、第2の処理としての性能情報取得処理を実行する第2処理部の一例である。第2の処理は、例えば、以下の処理を含んでよい。
・管理部2bは、装置監視部24が識別したストレージ装置4の種類が第2のストレージ装置4bである場合、第2のストレージ装置4bから送信された、第2のストレージ装置4bの性能に関する第2の性能情報を受信する。
・管理部2bは、受信した第2の性能情報を、テキスト形式のファイルのデータとして記憶部に格納する。
〔1−2−2〕性能情報削除処理
次に、図14を参照して、ストレージシステム1のサーバ2における性能情報削除処理の動作例を説明する。
なお、性能情報削除処理は、保持期間が超過したPTを削除する判定を行なう削除判定タイミング、例えば、数十秒等の所定周期で定期的に実行されてよい。なお、削除判定タイミングは、保持期間やPTの時間軸における格納単位に応じた間隔であってもよい。
図14に例示するように、装置監視部24は、構成情報211を参照して、ストレージ装置4(例えば、サーバ2に接続される全てのストレージ装置4のそれぞれ)に対する、性能状態取得要求のREST APIを発行する。IF制御部23は、REST APIのフレームワークを通じて、ネットワーク1a及び1bを介してストレージ装置4に要求を送信する(ステップS71)。
装置監視部24は、IF制御部23を介して制御装置3から性能状態の情報を正常に取得したか否かを判定する(ステップS72)。正常に取得していない場合(ステップS72でNo)、性能状態取得要求の送信先の制御装置3が、REST APIに対応していないストレージ装置4bの制御装置3bであることを意味する。
従って、この場合、装置監視部24は、管理部2bに対して、性能状態の情報を正常に取得できなかったストレージ装置4bに対する制御装置B用の性能情報削除処理を実行するように指示する。
管理部2bの装置監視部27は、メモリ部22におけるCSV222を管理するファイルシステムにおいて、未検索のディレクトリが存在するか否かを判定する(ステップS73)。
未検索のディレクトリが存在する場合(ステップS73でYes)、装置監視部27は、ディレクトリ名から、性能情報の格納時刻を取得する(ステップS74)。そして、装置監視部27は、取得した時刻が削除対象の時刻(例えば現在時刻から保持期間を減じた時刻よりも前の時刻)か否かを判定する(ステップS75)。
取得した時刻が削除対象の時刻ではない場合(ステップS75でNo)、処理がステップS73に移行する。一方、取得した時刻が削除対象の時刻である場合(ステップS75でYes)、装置監視部27は、該当するディレクトリを削除し(ステップS76)、処理がステップS73に移行する。
ステップS73において、未検索のディレクトリが存在しない場合(ステップS73でNo)、性能情報削除処理が終了する。
以下、図15を参照して、制御装置B用の性能情報削除処理の一例を説明する。図15に例示するように、ファイルシステムにおいて10月1日〜10月8日の「ディレクトリ1〜8」が管理され、ディレクトリの格納単位は1日であり、保持期間が7日であると仮定する。
例えば、装置監視部27は、ファイルシステムにおいて「ディレクトリ1〜8」として管理される性能情報のうち、保持期限の過ぎた“10月1日”分のディレクトリを検索する。そして、装置監視部27は、検索した“10月1日”分の「ディレクトリ8」を削除することで削除対象のCSV222を削除する。
図14の説明に戻り、ステップS72において、制御装置3aから性能状態を正常に取得した場合(ステップS72でYes)、性能状態取得要求の送信先の制御装置3が、REST APIに対応するストレージ装置4aの制御装置3aであることを意味する。
この場合、装置監視部24は、ストレージ装置4aに対する制御装置A用の性能情報削除処理を実行する。
装置監視部24は、ストレージ識別子と現在時刻とPT名とを用いて、削除対象のテーブルを検索する(ステップS77)。
例えば、装置監視部24は、論理テーブルを用いて、削除判定対象のストレージ識別子を含む複数のPT(PT名)から、PT名に含まれる時刻が削除対象の時刻(例えば現在時刻から保持期間を減じた時刻よりも前の時刻)であるPTを検索する。
そして、装置監視部24は、検索により特定した削除対象のPTをDB21の性能情報212から削除し(ステップS78)、性能情報削除処理が終了する。なお、装置監視部24は、PTの削除に応じて、管理テーブル213における削除対象のPTに対応するPT名のエントリを削除してよい。
このように、装置監視部24は、所定周期で、DB21に格納されたテーブルのテーブル名と、現在時刻とに基づいて、DB21から保持期間を超えたテーブルを削除するのである。
以下、図16を参照して、制御装置A用の性能情報削除処理の一例を説明する。図16に例示するように、PTの論理テーブルにおいて、10月1日〜10月8日のPTが管理され、PTの格納単位は1日であり、保持期間が7日であると仮定する。
この場合、装置監視部24は、論理テーブルを参照して、保持期間を過ぎたPT、例えば、10月1日分のPTを特定する。
上述のように、PTは、格納単位で作成・管理されるため、装置監視部24は、保持期間を過ぎたPTを、例えばDrop Table等のコマンドにより削除する。
なお、論理テーブルは、性能情報212から特定のPTをまとめて検索(抽出)できる機能として、例えば装置監視部24により提供されてよい。すなわち、論理テーブルは、実際にデータとして(例えばDB21において)管理されるテーブルではなく、装置監視部24が性能情報212から特定のPTを抽出する際のウィンドウとして実現されてよい。
論理テーブルでは、例えば、PT名のうちの特定の部分に対応する文字列を含むPTが検索可能であってよい。特定の部分とは、例えば、PT名のうちの、ストレージ単位で特定可能な“performance_xxxxxx”の部分(換言すれば、PT名からリソースタイプ及び格納単位、例えば“storages_part_20171001”を除いた部分)であってよい。
これにより、装置監視部24は、性能情報212が有する複数のPTから、特定の部分に対応する文字列を含むPT、例えば、或るストレージ“xxxxxx”に関するPTの情報を、1つの大きなテーブルとして扱うことができる。このような機能を持つ論理テーブルは、サーバ2によるユーザに対する性能情報の提供の際に利用されてもよい。
なお、論理テーブルは、性能情報212からPTを検索できる機能として説明したが、これに限定されるものではなく、管理テーブル213から特定のPT名の一覧を検索できる機能として提供されてもよい。この場合、PT名に加えて、又は、代えて、管理テーブル213のストレージ識別子、リソースタイプ、開始時刻、終了時刻、最終更新時等の項目が検索キーとして利用されてもよい。
以上のように、管理部2aは、性能データをCSV形式ではなくDB21により管理することで、ファイルシステム上で削除対象を検索する場合と比較して、装置監視部24による削除対象の検索効率を高めることができる。また、DB21では、性能情報212が取得日時ごとのPTに分割され、装置監視部24により、保持期限を超過したときにPT単位で性能情報212が削除される。これにより、サーバ2の処理負荷を低減することができ、削除処理のオーバヘッドを改善できる。
また、DB21では、インポート時に、削除単位でまとめられたレコードによりPTが作成されており、保持期限超過の監視タイミングにおいて、装置監視部24は、削除対象のPT全体を削除する。これにより、単一のテーブルから削除期間でフィルタリングしてレコード単位に削除する場合よりも、削除処理の効率を高めることができる。
なお、開発者向けの性能データ(圧縮ファイルのバイト列)を含むPTと、少なくともユーザ向けの性能データを含むPTとでは、互いに異なる保持期間が設けられてもよい。一例として、少なくともユーザ向けの性能データを含むPTの保持期間が90日間である場合、開発者向けの性能データを含むPTの保持期間は、例えば90日よりも短い7日間程度であってもよい。
装置監視部24は、例えば、上記のような保持期間の差異に基づいて、ステップS77及びS78の削除対象のテーブルの検索及び削除の処理を行なってよい。
〔1−3〕ハードウェア構成例
次に、図17を参照して、一実施形態に係るサーバ2、並びに、制御装置3a及び3bのハードウェア構成例について説明する。サーバ2、並びに、制御装置3a及び3bは、同様のハードウェア構成をそなえてよいため、以下、これらの一例としてコンピュータ10を例に挙げて、コンピュータ10のハードウェア構成例について説明する。
図17に示すように、コンピュータ10は、例示的に、プロセッサ10a、メモリ10b、記憶部10c、IF部10d、I/O部10e、及び読取部10fをそなえてよい。
プロセッサ10aは、種々の制御や演算を行なう演算処理装置の一例である。プロセッサ10aは、コンピュータ10内の各ブロックとバス10iで相互に通信可能に接続されてよい。プロセッサ10aとしては、例えば、CPU、MPU、GPU、APU、DSP、ASIC、FPGA等の集積回路(IC;Integrated Circuit)が用いられてもよい。なお、MPUはMicro Processing Unitの略称であり、GPUはGraphics Processing Unitの略称である。APUはAccelerated Processing Unitの略称であり、DSPはDigital Signal Processorの略称である。ASICはApplication Specific ICの略称であり、FPGAはField-Programmable Gate Arrayの略称である。
メモリ10bは、種々のデータやプログラム等の情報を格納するハードウェアの一例である。メモリ10bとしては、例えばRAM等の揮発性メモリが挙げられる。
記憶部10cは、種々のデータやプログラム等の情報を格納するハードウェアの一例である。記憶部10cとしては、例えばHDD等の磁気ディスク装置、SSD等の半導体ドライブ装置、不揮発性メモリ等の各種記憶装置が挙げられる。不揮発性メモリとしては、例えば、フラッシュメモリ、SCM(Storage Class Memory)、ROM(Read Only Memory)等が挙げられる。
なお、サーバ2において、図2に示すDB21及びメモリ部22は、それぞれ、例えば、サーバ2のメモリ10b及び記憶部10cの少なくとも一方の記憶領域により実現されてもよい。また、制御装置3aにおいて、図5に示すDB31は、例えば、制御装置3aのメモリ10b及び記憶部10cの少なくとも一方の記憶領域により実現されてもよい。さらに、制御装置3bにおいて、図6に示すメモリ部33は、例えば、制御装置3bのメモリ10b及び記憶部10cの少なくとも一方の記憶領域により実現されてもよい。
また、記憶部10cは、コンピュータ10の各種機能の全部若しくは一部を実現するプログラム10gを格納してよい。プロセッサ10aは、記憶部10cに格納されたプログラム10gをメモリ10bに展開して実行することにより、サーバ2、又は、制御装置3a若しくは3bとしての機能を実現できる。
例えば、サーバ2においては、サーバ2のプロセッサ10aが、記憶部10cに格納されたプログラム10gをメモリ10bに展開して演算処理を実行することで、管理部2a及び2bとしての機能を実現できる。また、制御装置3aにおいては、制御装置3aのプロセッサ10aが、記憶部10cに格納されたプログラム10gをメモリ10bに展開して演算処理を実行することで、制御部32としての機能を実現できる。さらに、制御装置3bにおいては、制御装置3bのプロセッサ10aが、記憶部10cに格納されたプログラム10gをメモリ10bに展開して演算処理を実行することで、制御部34としての機能を実現できる。
IF部10dは、ネットワークとの間の接続及び通信の制御等を行なう通信インタフェースの一例である。例えば、IF部10dは、LAN、或いは、光通信(例えばFC(Fibre Channel;ファイバチャネル))等に準拠したアダプタを含んでよい。
例えば、サーバ2のIF部10dは、ネットワーク1a及び1bとの間の接続及び通信の制御を行なう通信インタフェースをそなえてよい。サーバ2のIF制御部23及び26は、それぞれ、当該通信インタフェースの一例である。また、制御装置3aのIF部10dは、ネットワーク1aとの間の接続及び通信の制御を行なう通信インタフェースをそなえてよい。さらに、制御装置3bのIF部10dは、ネットワーク1bとの間の接続及び通信の制御を行なう通信インタフェースをそなえてよい。
例えば、サーバ2、又は、制御装置3a若しくは3bのプログラム10gは、当該通信インタフェースを介してネットワーク1a及び1bのいずれかからダウンロードされ、記憶部10cに格納されてもよい。
I/O部10eは、マウス、キーボード、又は操作ボタン等の入力部、並びに、タッチパネルディスプレイ、LCD(Liquid Crystal Display)等のモニタ、プロジェクタ、又はプリンタ等の出力部、の一方又は双方を含んでよい。
読取部10fは、記録媒体10hに記録されたデータやプログラムの情報を読み出すリーダの一例である。読取部10fは、記録媒体10hを接続可能又は挿入可能な接続端子又は装置を含んでよい。読取部10fとしては、例えば、USB(Universal Serial Bus)等に準拠したアダプタ、記録ディスクへのアクセスを行なうドライブ装置、SDカード等のフラッシュメモリへのアクセスを行なうカードリーダ等が挙げられる。なお、記録媒体10hにはプログラム10gが格納されてもよく、読取部10fが記録媒体10hからプログラム10gを読み出して記憶部10cに格納してもよい。
記録媒体10hとしては、例示的に、磁気/光ディスクやフラッシュメモリ等の非一時的な記録媒体が挙げられる。磁気/光ディスクとしては、例示的に、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイディスク、HVD(Holographic Versatile Disc)等が挙げられる。フラッシュメモリとしては、例示的に、USBメモリやSDカード等が挙げられる。なお、CDとしては、例示的に、CD−ROM、CD−R、CD−RW等が挙げられる。また、DVDとしては、例示的に、DVD−ROM、DVD−RAM、DVD−R、DVD−RW、DVD+R、DVD+RW等が挙げられる。
上述したコンピュータ10のハードウェア構成は例示である。従って、サーバ2、又は、制御装置3a若しくは3bごとに、コンピュータ10内でのハードウェアの増減(例えば任意のブロックの追加や削除)、分割、任意の組み合わせでの統合、又は、バスの追加若しくは削除等は適宜行なわれてもよい。
〔2〕その他
上述した一実施形態に係る技術は、以下のように変形、変更して実施することができる。
例えば、サーバ2において、管理部2a及び2bの各機能は、任意の組み合わせで併合してもよく、それぞれ分割してもよい。また、サーバ2の管理部2aにおいて、IF制御部23、装置監視部24、及びDB管理部25の各機能は、任意の組み合わせで併合してもよく、それぞれ分割してもよい。さらに、サーバ2の管理部2bにおいて、IF制御部26及び装置監視部27の各機能は、任意の組み合わせで併合してもよく、それぞれ分割してもよい。
また、図12のステップS51及びS52、並びに、図14のステップS71及びS72における、ストレージ装置4a及び4bの判別処理は、例えば、図8のステップS1及びS2の判別処理における判別結果を利用できる場合には省略されてもよい。
例えば、装置監視部24は、ステップS1及びS2における判別結果を、ストレージ装置4の識別情報やアドレス情報等に対応付けて管理してもよい。この場合、DB管理部25及び装置監視部24は、ステップS51及びS52、並びに、ステップS71及びS72に代えて、判別結果を管理する情報の参照処理を実行してよい。
〔3〕付記
以上の実施形態に関し、さらに以下の付記を開示する。
(付記1)
ストレージ装置から送信される、前記ストレージ装置の状態に関する状態情報を受信し、前記状態情報の受信結果に基づいて、前記ストレージ装置の種類を識別する識別部と、
識別した前記ストレージ装置の種類が第1のストレージ装置である場合、前記第1のストレージ装置から送信された、前記第1のストレージ装置の性能に関する第1の性能情報を受信し、受信した前記第1の性能情報を、前記第1の性能情報を受信した期間ごとに対応づけたテーブルのデータとしてデータベースに格納する、第1の処理を実行する第1処理部と、
識別した前記ストレージ装置の種類が第2のストレージ装置である場合、前記第2のストレージ装置から送信された、前記第2のストレージ装置の性能に関する第2の性能情報を受信し、受信した前記第2の性能情報をテキスト形式のファイルのデータとして記憶部に格納する、第2の処理を実行する第2処理部と、
識別した前記ストレージ装置の種類に応じて、前記第1処理部による前記第1の処理の実行、又は、前記第2処理部による前記第2の処理の実行、を切り替える切替部と、をそなえる
ストレージ管理装置。
(付記2)
前記第1の性能情報は、性能種別ごとの複数の性能データを含み、
前記第1処理部は、前記第1の処理において、前記第1のストレージ装置から受信した前記複数の性能データを、前記期間ごと且つ性能種別ごとに対応づけたテーブルのデータとして前記データベースに格納する、
付記1に記載のストレージ管理装置。
(付記3)
前記第1処理部は、前記第1の処理において、
前記第1のストレージ装置により前記性能種別ごとの複数の性能データが圧縮された圧縮データである前記第1の性能情報を、前記第1のストレージ装置から受信し、
受信した前記圧縮データのうちの少なくとも一部を伸張して少なくとも一つの性能データを取得し、
取得した前記少なくとも一つの性能データを、前記期間ごと且つ性能種別ごとに対応づけたテーブルのデータとして前記データベースに格納する、
付記2に記載のストレージ管理装置。
(付記4)
前記第1処理部は、前記第1の処理において、受信した前記圧縮データのうちの伸張していない部分の性能データを圧縮形式の状態で前記データベースに格納する、
付記3に記載のストレージ管理装置。
(付記5)
前記第1の性能情報に含まれる前記複数の性能データの各々のファイル名に、当該性能データの性能種別と、当該性能データの取得時刻と、が設定され、
前記第1処理部は、前記第1の処理において、各性能データのファイル名に基づいて、当該性能データを含めるテーブルを検索する、
付記2〜4のいずれか1項に記載のストレージ管理装置。
(付記6)
前記データベースに格納されたテーブルのテーブル名に、当該テーブルに含まれる性能データの性能種別と、当該テーブルに含まれる性能データが受信された期間と、が設定され、
前記第1処理部は、所定周期で、前記データベースに格納されたテーブルのテーブル名と、現在時刻とに基づいて、前記データベースから保持期間を超えたテーブルを削除する、
付記2〜5のいずれか1項に記載のストレージ管理装置。
(付記7)
ストレージ装置と、
前記ストレージ装置をそなえるストレージシステムを管理するストレージ管理装置と、をそなえ、
前記ストレージ管理装置は、
前記ストレージ装置から送信される、前記ストレージ装置の状態に関する状態情報を受信し、前記状態情報の受信結果に基づいて、前記ストレージ装置の種類を識別し、
識別した前記ストレージ装置の種類に応じて、第1の処理の実行、又は、第2の処理の実行、を切り替え、
前記第1の処理は、
識別した前記ストレージ装置の種類が第1のストレージ装置である場合、前記第1のストレージ装置から送信された、前記第1のストレージ装置の性能に関する第1の性能情報を受信し、
受信した前記第1の性能情報を、前記第1の性能情報を受信した期間ごとに対応づけたテーブルのデータとしてデータベースに格納する、処理を含み、
前記第2の処理は、
識別した前記ストレージ装置の種類が第2のストレージ装置である場合、前記第2のストレージ装置から送信された、前記第2のストレージ装置の性能に関する第2の性能情報を受信し、
受信した前記第2の性能情報をテキスト形式のファイルのデータとして記憶部に格納する、処理を含む、
ストレージシステム。
(付記8)
前記第1の性能情報は、性能種別ごとの複数の性能データを含み、
前記ストレージ管理装置は、前記第1の処理において、前記第1のストレージ装置から受信した前記複数の性能データを、前記期間ごと且つ性能種別ごとに対応づけたテーブルのデータとして前記データベースに格納する、
付記7に記載のストレージシステム。
(付記9)
前記第1のストレージ装置は、前記性能種別ごとの複数の性能データを圧縮した圧縮データを前記第1の性能情報として前記ストレージ管理装置に送信し、
前記ストレージ管理装置は、前記第1の処理において、
前記第1のストレージ装置から前記圧縮データを受信し、
受信した前記圧縮データのうちの少なくとも一部を伸張して少なくとも一つの性能データを取得し、
取得した前記少なくとも一つの性能データを、前記期間ごと且つ性能種別ごとに対応づけたテーブルのデータとして前記データベースに格納する、
付記8に記載のストレージシステム。
(付記10)
前記ストレージ管理装置は、前記第1の処理において、受信した前記圧縮データのうちの伸張していない部分の性能データを圧縮形式の状態で前記データベースに格納する、
付記9に記載のストレージシステム。
(付記11)
前記第1のストレージ装置は、前記第1の性能情報に含まれる前記複数の性能データの各々のファイル名に、当該性能データの性能種別と、当該性能データの取得時刻と、を設定して、前記第1の性能情報を前記ストレージ管理装置に送信し、
前記ストレージ管理装置は、前記第1の処理において、受信した前記第1の性能情報に含まれる各性能データのファイル名に基づいて、当該性能データを含めるテーブルを検索する、
付記8〜10のいずれか1項に記載のストレージシステム。
(付記12)
前記データベースに格納されたテーブルのテーブル名に、当該テーブルに含まれる性能データの性能種別と、当該テーブルに含まれる性能データが受信された期間と、が設定され、
前記ストレージ管理装置は、所定周期で、前記データベースに格納されたテーブルのテーブル名と、現在時刻とに基づいて、前記データベースから保持期間を超えたテーブルを削除する、
付記8〜11のいずれか1項に記載のストレージシステム。
(付記13)
コンピュータに、
ストレージ装置から送信される、前記ストレージ装置の状態に関する状態情報を受信し、前記状態情報の受信結果に基づいて、前記ストレージ装置の種類を識別し、
識別した前記ストレージ装置の種類に応じて、第1の処理の実行、又は、第2の処理の実行、を切り替える、
処理を実行させ、
前記第1の処理は、
識別した前記ストレージ装置の種類が第1のストレージ装置である場合、前記第1のストレージ装置から送信された、前記第1のストレージ装置の性能に関する第1の性能情報を受信し、
受信した前記第1の性能情報を、前記第1の性能情報を受信した期間ごとに対応づけたテーブルのデータとしてデータベースに格納する、処理を含み、
前記第2の処理は、
識別した前記ストレージ装置の種類が第2のストレージ装置である場合、前記第2のストレージ装置から送信された、前記第2のストレージ装置の性能に関する第2の性能情報を受信し、
受信した前記第2の性能情報をテキスト形式のファイルのデータとして記憶部に格納する、処理を含む、
ストレージ管理プログラム。
(付記14)
前記第1の性能情報は、性能種別ごとの複数の性能データを含み、
前記コンピュータに、前記第1の処理において、前記第1のストレージ装置から受信した前記複数の性能データを、前記期間ごと且つ性能種別ごとに対応づけたテーブルのデータとして前記データベースに格納する、
処理を実行させる、付記13に記載のストレージ管理プログラム。
(付記15)
前記コンピュータに、前記第1の処理において、
前記第1のストレージ装置により前記性能種別ごとの複数の性能データが圧縮された圧縮データである前記第1の性能情報を、前記第1のストレージ装置から受信し、
受信した前記圧縮データのうちの少なくとも一部を伸張して少なくとも一つの性能データを取得し、
取得した前記少なくとも一つの性能データを、前記期間ごと且つ性能種別ごとに対応づけたテーブルのデータとして前記データベースに格納する、
処理を実行させる、付記14に記載のストレージ管理プログラム。
(付記16)
前記コンピュータに、前記第1の処理において、受信した前記圧縮データのうちの伸張していない部分の性能データを圧縮形式の状態で前記データベースに格納する、
処理を実行させる、付記15に記載のストレージ管理プログラム。
(付記17)
前記第1の性能情報に含まれる前記複数の性能データの各々のファイル名に、当該性能データの性能種別と、当該性能データの取得時刻と、が設定され、
前記コンピュータに、前記第1の処理において、各性能データのファイル名に基づいて、当該性能データを含めるテーブルを検索する、
処理を実行させる、付記14〜16のいずれか1項に記載のストレージ管理プログラム。
(付記18)
前記データベースに格納されたテーブルのテーブル名に、当該テーブルに含まれる性能データの性能種別と、当該テーブルに含まれる性能データが受信された期間と、が設定され、
前記コンピュータに、所定周期で、前記データベースに格納されたテーブルのテーブル名と、現在時刻とに基づいて、前記データベースから保持期間を超えたテーブルを削除する、
処理を実行させる、付記14〜17のいずれか1項に記載のストレージ管理プログラム。
1 ストレージシステム
1a、1b ネットワーク
2 サーバ
2a、2b 管理部
21、31 DB
211 構成情報
212 性能情報
212a、212b テーブル
213 管理テーブル
22、33 メモリ部
221 構成XML
222 CSV
23、26 IF制御部
24、27 装置監視部
25 DB管理部
3、3a、3b 制御装置
311、331 装置情報
32、34 制御部
4、4a、4b ストレージ装置

Claims (8)

  1. ストレージ装置から送信される、前記ストレージ装置の状態に関する状態情報を受信し、前記状態情報の受信結果に基づいて、前記ストレージ装置の種類を識別する識別部と、
    識別した前記ストレージ装置の種類が第1のストレージ装置である場合、前記第1のストレージ装置から送信された、前記第1のストレージ装置の性能に関する第1の性能情報を受信し、受信した前記第1の性能情報を、前記第1の性能情報を受信した期間ごとに対応づけたテーブルのデータとしてデータベースに格納する、第1の処理を実行する第1処理部と、
    識別した前記ストレージ装置の種類が第2のストレージ装置である場合、前記第2のストレージ装置から送信された、前記第2のストレージ装置の性能に関する第2の性能情報を受信し、受信した前記第2の性能情報をテキスト形式のファイルのデータとして記憶部に格納する、第2の処理を実行する第2処理部と、
    識別した前記ストレージ装置の種類に応じて、前記第1処理部による前記第1の処理の実行、又は、前記第2処理部による前記第2の処理の実行、を切り替える切替部と、をそなえる
    ストレージ管理装置。
  2. 前記第1の性能情報は、性能種別ごとの複数の性能データを含み、
    前記第1処理部は、前記第1の処理において、前記第1のストレージ装置から受信した前記複数の性能データを、前記期間ごと且つ性能種別ごとに対応づけたテーブルのデータとして前記データベースに格納する、
    請求項1に記載のストレージ管理装置。
  3. 前記第1処理部は、前記第1の処理において、
    前記第1のストレージ装置により前記性能種別ごとの複数の性能データが圧縮された圧縮データである前記第1の性能情報を、前記第1のストレージ装置から受信し、
    受信した前記圧縮データのうちの少なくとも一部を伸張して少なくとも一つの性能データを取得し、
    取得した前記少なくとも一つの性能データを、前記期間ごと且つ性能種別ごとに対応づけたテーブルのデータとして前記データベースに格納する、
    請求項2に記載のストレージ管理装置。
  4. 前記第1処理部は、前記第1の処理において、受信した前記圧縮データのうちの伸張していない部分の性能データを圧縮形式の状態で前記データベースに格納する、
    請求項3に記載のストレージ管理装置。
  5. 前記第1の性能情報に含まれる前記複数の性能データの各々のファイル名に、当該性能データの性能種別と、当該性能データの取得時刻と、が設定され、
    前記第1処理部は、前記第1の処理において、各性能データのファイル名に基づいて、当該性能データを含めるテーブルを検索する、
    請求項2〜4のいずれか1項に記載のストレージ管理装置。
  6. 前記データベースに格納されたテーブルのテーブル名に、当該テーブルに含まれる性能データの性能種別と、当該テーブルに含まれる性能データが受信された期間と、が設定され、
    前記第1処理部は、所定周期で、前記データベースに格納されたテーブルのテーブル名と、現在時刻とに基づいて、前記データベースから保持期間を超えたテーブルを削除する、
    請求項2〜5のいずれか1項に記載のストレージ管理装置。
  7. ストレージ装置と、
    前記ストレージ装置をそなえるストレージシステムを管理するストレージ管理装置と、をそなえ、
    前記ストレージ管理装置は、
    前記ストレージ装置から送信される、前記ストレージ装置の状態に関する状態情報を受信し、前記状態情報の受信結果に基づいて、前記ストレージ装置の種類を識別し、
    識別した前記ストレージ装置の種類に応じて、第1の処理の実行、又は、第2の処理の実行、を切り替え、
    前記第1の処理は、
    識別した前記ストレージ装置の種類が第1のストレージ装置である場合、前記第1のストレージ装置から送信された、前記第1のストレージ装置の性能に関する第1の性能情報を受信し、
    受信した前記第1の性能情報を、前記第1の性能情報を受信した期間ごとに対応づけたテーブルのデータとしてデータベースに格納する、処理を含み、
    前記第2の処理は、
    識別した前記ストレージ装置の種類が第2のストレージ装置である場合、前記第2のストレージ装置から送信された、前記第2のストレージ装置の性能に関する第2の性能情報を受信し、
    受信した前記第2の性能情報をテキスト形式のファイルのデータとして記憶部に格納する、処理を含む、
    ストレージシステム。
  8. コンピュータに、
    ストレージ装置から送信される、前記ストレージ装置の状態に関する状態情報を受信し、前記状態情報の受信結果に基づいて、前記ストレージ装置の種類を識別し、
    識別した前記ストレージ装置の種類に応じて、第1の処理の実行、又は、第2の処理の実行、を切り替える、
    処理を実行させ、
    前記第1の処理は、
    識別した前記ストレージ装置の種類が第1のストレージ装置である場合、前記第1のストレージ装置から送信された、前記第1のストレージ装置の性能に関する第1の性能情報を受信し、
    受信した前記第1の性能情報を、前記第1の性能情報を受信した期間ごとに対応づけたテーブルのデータとしてデータベースに格納する、処理を含み、
    前記第2の処理は、
    識別した前記ストレージ装置の種類が第2のストレージ装置である場合、前記第2のストレージ装置から送信された、前記第2のストレージ装置の性能に関する第2の性能情報を受信し、
    受信した前記第2の性能情報をテキスト形式のファイルのデータとして記憶部に格納する、処理を含む、
    ストレージ管理プログラム。
JP2018048981A 2018-03-16 2018-03-16 ストレージ管理装置、ストレージシステム、及びストレージ管理プログラム Active JP7006406B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018048981A JP7006406B2 (ja) 2018-03-16 2018-03-16 ストレージ管理装置、ストレージシステム、及びストレージ管理プログラム
US16/283,389 US10712973B2 (en) 2018-03-16 2019-02-22 Storage management apparatus, storage system, and non-transitory computer-readable recording medium having stored therein storage management program
CN201910141481.0A CN110275675B (zh) 2018-03-16 2019-02-26 存储管理装置、存储系统及计算机可读记录介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018048981A JP7006406B2 (ja) 2018-03-16 2018-03-16 ストレージ管理装置、ストレージシステム、及びストレージ管理プログラム

Publications (2)

Publication Number Publication Date
JP2019160124A true JP2019160124A (ja) 2019-09-19
JP7006406B2 JP7006406B2 (ja) 2022-01-24

Family

ID=67905666

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018048981A Active JP7006406B2 (ja) 2018-03-16 2018-03-16 ストレージ管理装置、ストレージシステム、及びストレージ管理プログラム

Country Status (3)

Country Link
US (1) US10712973B2 (ja)
JP (1) JP7006406B2 (ja)
CN (1) CN110275675B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210271506A1 (en) * 2020-02-28 2021-09-02 Cisco Technology, Inc. Centralized management, provisioning and monitoring of cloud infrastructure
JP7367622B2 (ja) * 2020-06-17 2023-10-24 横河電機株式会社 データ管理システム、データ管理方法、および、データ管理プログラム
US11537289B2 (en) * 2021-01-29 2022-12-27 Seagate Technology Llc Intelligent data storage system activity tracking

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007323560A (ja) * 2006-06-05 2007-12-13 Hitachi Ltd 性能監視方法、計算機及び計算機システム
WO2013018289A1 (ja) * 2011-08-04 2013-02-07 日本電気株式会社 計算機および性能データ収集方法
JP2016057795A (ja) * 2014-09-09 2016-04-21 富士通株式会社 ストレージ制御装置,ストレージシステム及びストレージ制御プログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05313984A (ja) 1992-05-06 1993-11-26 Hitachi Ltd ファイル転送処理方式
JP3037144B2 (ja) 1996-07-09 2000-04-24 神戸日本電気ソフトウェア株式会社 データ圧縮記憶演算装置
JPH117401A (ja) 1997-06-16 1999-01-12 Toshiba Corp 情報管理装置、情報管理方法及び情報管理プログラムを記録した媒体
JP4103467B2 (ja) 2002-06-28 2008-06-18 株式会社日立プラントテクノロジー 機器メンテナンス診断システム
US9665459B2 (en) * 2014-01-06 2017-05-30 International Business Machines Corporation Providing a user interface to enable selection of storage systems, components within storage systems and common performance metrics for generating performance metric reports across storage systems and components
JP5159421B2 (ja) * 2008-05-14 2013-03-06 株式会社日立製作所 ストレージシステム及び管理装置を用いたストレージシステムの管理方法
US9003414B2 (en) * 2010-10-08 2015-04-07 Hitachi, Ltd. Storage management computer and method for avoiding conflict by adjusting the task starting time and switching the order of task execution
US8732134B2 (en) * 2011-01-25 2014-05-20 Netapp, Inc. Collection of data associated with storage systems
US20140317286A1 (en) 2011-12-15 2014-10-23 Hitachi, Ltd. Monitoring computer and method
JP6192455B2 (ja) 2013-09-17 2017-09-06 三菱電機株式会社 ログデータ収集装置、ログデータの管理方法、及び、プログラム
US10135672B2 (en) 2014-01-15 2018-11-20 Nec Corporation Log data collection system, terminal device, and log data collection method
JP5982513B2 (ja) 2015-02-17 2016-08-31 株式会社日立製作所 監視計算機及び方法
JP6497122B2 (ja) * 2015-02-24 2019-04-10 富士通株式会社 ストレージ制御装置、およびストレージ制御プログラム
US20170046152A1 (en) * 2015-08-12 2017-02-16 Quanta Computer Inc. Firmware update
JP6471085B2 (ja) 2015-12-01 2019-02-13 日本電信電話株式会社 ネットワーク接続装置、データ圧縮収集方法およびプログラム
US20180004452A1 (en) * 2016-06-30 2018-01-04 Intel Corporation Technologies for providing dynamically managed quality of service in a distributed storage system
US11422719B2 (en) * 2016-09-15 2022-08-23 Pure Storage, Inc. Distributed file deletion and truncation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007323560A (ja) * 2006-06-05 2007-12-13 Hitachi Ltd 性能監視方法、計算機及び計算機システム
WO2013018289A1 (ja) * 2011-08-04 2013-02-07 日本電気株式会社 計算機および性能データ収集方法
JP2016057795A (ja) * 2014-09-09 2016-04-21 富士通株式会社 ストレージ制御装置,ストレージシステム及びストレージ制御プログラム

Also Published As

Publication number Publication date
US10712973B2 (en) 2020-07-14
US20190286371A1 (en) 2019-09-19
CN110275675B (zh) 2022-09-16
CN110275675A (zh) 2019-09-24
JP7006406B2 (ja) 2022-01-24

Similar Documents

Publication Publication Date Title
US8392423B2 (en) Data set index record preservation
US8762674B2 (en) Storage in tiered environment for colder data segments
JP6273927B2 (ja) 情報処理システム,監視装置,監視プログラム,監視方法
US11687488B2 (en) Directory deletion method and apparatus, and storage server
US10133618B2 (en) Diagnostic data set component
KR100834574B1 (ko) 파일 저장 시스템 및 그 시스템에서의 파일 저장 및 검색방법
US9747168B2 (en) Data block based backup
US11151030B1 (en) Method for prediction of the duration of garbage collection for backup storage systems
JP2019204278A (ja) 情報処理システム、情報処理装置およびプログラム
JP7006406B2 (ja) ストレージ管理装置、ストレージシステム、及びストレージ管理プログラム
JP2013045379A (ja) ストレージ制御方法、情報処理装置およびプログラム
JP2012079259A (ja) 更新管理装置、更新管理方法および更新管理プログラム
US9461884B2 (en) Information management device and computer-readable medium recorded therein information management program
CN111125171A (zh) 一种监测数据存取方法、装置、设备及可读存储介质
JP5781716B2 (ja) 計算機システム及び非同期レプリケーション管理方法
US11100056B2 (en) Life cycle data set repository
CN115328696A (zh) 一种数据库中的数据备份方法
JP6984496B2 (ja) ストレージ管理装置、ストレージシステム、及びストレージ管理プログラム
US11249666B2 (en) Storage control apparatus
JP5747755B2 (ja) プロセス関係解析プログラム,プロセス関係解析装置およびプロセス関係解析方法
JP2020030654A (ja) 制御装置及び制御プログラム
JP2010152707A (ja) データベースのバックアップ方法及びデータベースシステム
JP2009282563A (ja) データ保存システム、プログラム及び方法、並びに監視装置
US20220129157A1 (en) Method and system for storage load balancing based on virtual synthetics metadata
JP7141908B2 (ja) データ管理システムおよびデータ管理方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190607

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211117

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211220

R150 Certificate of patent or registration of utility model

Ref document number: 7006406

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150