JP2019191929A - 性能分析方法および管理計算機 - Google Patents

性能分析方法および管理計算機 Download PDF

Info

Publication number
JP2019191929A
JP2019191929A JP2018083972A JP2018083972A JP2019191929A JP 2019191929 A JP2019191929 A JP 2019191929A JP 2018083972 A JP2018083972 A JP 2018083972A JP 2018083972 A JP2018083972 A JP 2018083972A JP 2019191929 A JP2019191929 A JP 2019191929A
Authority
JP
Japan
Prior art keywords
resource
resources
storage
performance
analysis method
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
JP2018083972A
Other languages
English (en)
Other versions
JP6842440B2 (ja
Inventor
充実 寺山
Atsumi Terayama
充実 寺山
林 真一
Shinichi Hayashi
真一 林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2018083972A priority Critical patent/JP6842440B2/ja
Priority to US16/286,121 priority patent/US10986006B2/en
Publication of JP2019191929A publication Critical patent/JP2019191929A/ja
Application granted granted Critical
Publication of JP6842440B2 publication Critical patent/JP6842440B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/20Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】規模にかかわらず計算機システムの性能が分析可能になる。【解決手段】管理計算機による計算機システムの性能分析方法であって、前記管理計算機は、プロセッサと、前記プロセッサが実行するプログラムが格納された記憶装置とを備え、前記計算機システムは、複数のリソースから構成され、前記プロセッサは、前記リソース間の性能データの変化の相関に基づき、前記複数のリソースを複数のリソースグループに分割し、分割された前記リソースグループ毎に性能データを分析する。【選択図】図7

Description

本発明は、性能分析方法および管理計算機に関する。
近年、情報システム(計算機システム)を活用したサービスが一般的となっており、情報システムが大規模化している。また、情報システムでは、物理的な故障以外に、リソース性能の逼迫によるレスポンス劣化なども発生し、その発生の原因には、上位アプリケーションの処理の活発化などもあるが、物理的で部分的な故障なども遠因となるなど、原因が複雑に絡み合い、大規模化していることもあって、その分析は難しい。
例えば特許文献1が開示するように従来の運用管理手法においては、性能監視ソフトウェアの出力項目に対して、ある閾値を設定し、閾値を超えたことを契機に、通常の稼働状態では生じないような性能上の挙動を発見する実現例が多い。
米国特許第9485160号明細書
特許文献1に開示されたような従来の運用管理方法を用いても、大規模化した情報システムでは、性能監視ソフトウェアの出力項目が膨大な数になり、原因が複雑に絡み合うため、その分析は難しい。
そこで、本発明は、規模にかかわらず計算機システムの性能を分析可能にすることを目的とする。
本発明に係る代表的な性能分析方法は、管理計算機による計算機システムの性能分析方法であって、前記管理計算機は、プロセッサと、前記プロセッサが実行するプログラムが格納された記憶装置とを備え、前記計算機システムは、複数のリソースから構成され、前記プロセッサは、前記リソース間の性能データの変化の相関に基づき、前記複数のリソースを複数のリソースグループに分割し、分割された前記リソースグループ毎に性能データを分析することを特徴とする。
本発明によれば、規模にかかわらず計算機システムの性能が分析可能になる。
計算機システムの例を示す図である。 ストレージ装置の例を示す図である。 管理コンピュータの例を示す図である。 ストレージ構成情報の例を示す図である。 ストレージ性能情報の例を示す図である。 インスタンス構成情報の例を示す図である。 ストレージ性能分析プログラムの構成の例を示す図である。 リソースグループ管理テーブルの例を示す図である。 リソースグループの算出の例を示す図である。 リソース階層とリソースグループの例を示す図である。 リソースグループの計算とモデル学習の処理フローの例を示す図である。 モデル評価の処理フローの例を示す図である。 データセンタの例を示す図である。 分散ソフトウェアストレージ環境の例を示す図である。
本実施例によれば、複数のワークロードにより共有される計算機システム(ストレージ装置)の性能分析において、効率的な分析を可能にする方法および装置が提供される。
<物理構成および論理構成>
計算機システムの例を図1に示す。図1に示す計算機システムは、一つ以上のサーバ装置10、一つ以上のストレージ装置100、管理コンピュータ200、およびそれらを相互に接続するネットワーク50から構成される。なお、サーバ装置10aとサーバ装置10bのいずれかを特定せずに指し示す場合、符号を10(サーバ装置10)と表し、他の符号も同じ形式で表す。
サーバ装置10ではアプリケーション13が稼働し、計算機システムの利用者(ユーザ)に対して情報サービスを提供する。ユーザは、クライアントコンピュータ250を介してサーバ装置10を利用する。
クライアントコンピュータ250とストレージ装置100、あるいはサーバ装置10とストレージ装置100により、ネットワーク50は必ずしも共有される必要はなく、例えばサーバ装置10とストレージ装置100とを接続する目的で、専用のネットワーク60が構成されてもよい。
あるいは、アプリケーション13(サーバ装置10)と利用者(クライアントコンピュータ250)の通信をサービスネットワークとして設け、管理コンピュータ200とサーバ装置10の通信を管理ネットワークとして設けるなど、利用目的に合わせて別々に図示を省略したネットワークが構成されてもよい。
サーバ装置10はアプリケーション13を稼働させるための一般的な計算機アーキテクチャを備える。複数のサーバ装置10の構成は同一である必要はなく、サーバ装置10で直接的にOS12(Operating System)が稼働するベアメタルサーバ装置であるサーバ装置10aであってもよい。
あるいは、アプリケーション13とOS12が利用する論理的なシステム領域(インスタンス11)を動的に分割あるいは多重化する目的で、仮想化ソフトウェア20または図示を省略したコンテナエンジンをさらに稼働させる仮想化サーバ装置であるサーバ装置10bであってもよい。
一般にクラウドサービスでは、これらシステム領域自体や、システム領域内に構築されたアプリケーション環境、さらにはアプリケーションが提供するITサービスに対して従量課金を行う方式が採用されている。
ここでは、これらユーザが利用するサービスの対象でありシステム領域に準ずる環境がインスタンス11である。また、インスタンス11においてアプリケーション13がもたらす処理負荷、およびインスタンス11そのものが稼働するために必要な処理負荷のことを合わせてワークロードと呼び、これらはユーザの利用状況により動的に変化する。
ネットワーク50は、ネットワーク50を介して通信する装置をそれぞれ相互に直結してもよいが、複数の通信経路を構成するために、一つ以上の図示を省略したネットワークスイッチまたはルータを含んでもよい。また役割や伝送されるデータの特性に合わせて物理的、論理的に分割されていても良く、その分割は従来技術において一般的なものが利用されてもよい。
このために、VLAN(Virtual Local Area Network)のように論理的にネットワーク空間を分割し多重化する技術が用いられてもよい。また、専用のネットワーク60は、例えばSAN(Storage Area Network)のように専用の物理装置および通信プロトコルが使用されるものであってもよい。
そして、サーバ装置10とストレージ装置100は、ネットワーク50または専用のネットワーク60を介して相互に通信するための通信プロトコルに準拠したネットワークインタフェースを有する。
ストレージ装置100は不揮発性の記憶装置であり、サーバ装置10が利用可能であるようにデータを保管し、データを複製するなどの機能を提供する。サーバ装置10からデータが格納される記憶領域は、一般にストレージデバイスとして認識され、その記憶領域をストレージ装置100は論理的なボリューム101として制御する。
ボリューム101には、OS12が記憶領域を管理するためのファイルシステムが構成される。仮想化ソフトウェア20が稼動する場合には、ボリューム101をさらに区分するためにファイルシステム上のファイルとして仮想ディスク102が構成されることもあるが、記憶装置としてストレージ装置100が備えるべき機能はいずれの例によらず同一である。
本実施例においては記憶装置の一般的な実装例に従い、ストレージ装置100が制御する対象はボリューム101であり、そのうえでサーバ装置10がどのように仮想ディスク102を作成するかの情報は、ストレージ装置100に無い。
管理コンピュータ200は、計算機システムの構成や稼働状態を集中的に管理するためのものであり、計算機システムの運用管理を担当する管理者が主に利用する。管理コンピュータ200は必ずしも単一のものが共有される必要はなく、信頼性向上のための冗長化または負荷分散の目的で複数構成されていてもよい。また、管理コンピュータ200は管理以外の処理に利用されてもよい。
図2はストレージ装置100の例を示す図である。ストレージ装置100は、ストレージ装置100の構成を管理し、記憶装置として動作するためのストレージコントローラ150を備える。ストレージコントローラ150の構造はコンピュータアーキテクチャに準じている。
ストレージコントローラ150は、プロセッサ151、メモリ152、通信インタフェースであるストレージポート61とNIC51(Network Interface Card)、キャッシュ153、バックエンドインタフェースであるSAS−IF154、およびそれらを相互に接続するデータバス156を備える。
ストレージポート61またはキャッシュ153はストレージ装置100の入出力性能に直接的に関係するため、接続されるサーバ装置10の数に応じて複数搭載されてもよい。ストレージポート61またはキャッシュ153以外を含めたストレージコントローラ150が、ストレージ装置100に複数具備されてもよい。
ストレージコントローラ150において、サーバ装置10からのデータの読み書き要求を処理するため、プロセッサ151はメモリ152に格納されたストレージ制御プログラム155aを読み出してプロセスとして実行する。
ストレージ制御プログラム155aは、データの読み書き要求を処理する以外に、ストレージポート61の流量管理機能、ボリューム101のデータを複製する装置内コピー機能、あるいは別のストレージ装置筐体に複製(レプリケーション)する装置間コピー機能を提供するためのプログラムを含んでもよい。
さらに、ストレージ制御プログラム155aは、キャッシュ153の利用上限を設定するキャッシュ管理機能、記憶領域の利用頻度に合わせて割り当てるドライブ装置の種類を変更するストレージメディア階層化機能、あるいはユーザインタフェースとなるWebサーバ機能などを提供するためのプログラムを含んでもよい。
なお、上記のコピー機能など、データの読み書き要求の処理以外の付加的機能のことを、説明を簡単にするため、以下では単にストレージ機能と呼ぶ。ストレージ機能を提供するには、データの読み書き要求の処理と同一の、ストレージ装置100のリソースを消費しており、アプリケーション13によるワークロードとは別に、ストレージ装置100に処理負荷を与える。
また、メモリ152には、ストレージ装置100の性能情報を管理するための性能管理インタフェース155bのプログラムと、構成情報を管理するための構成管理インタフェース155cのプログラムが格納される。これらのプログラムは、外部から情報が変更されたり、外部から情報が参照されたりするためのプログラムである。
ただし、外部との情報のインタフェースを提供できれば、別の実施形態であってもよく、これらのプログラムはストレージ制御プログラム155aに含まれてもよい。
ストレージ装置100は、データを格納するために複数のドライブ装置105を備える。ここでいうドライブ装置105は、いわゆるHDD(ハードディスクドライブ)やSSD(ソリッドステートドライブ)のことを指しており、RAID(Redundant Arrays of Inexpensive Disks)など複数のドライブ装置105を協働させる機構により信頼性や入出力性能を高める。
ストレージ装置100においてドライブ装置105の構成は一定でなく、故障や容量不足によってドライブ装置105の単位で交換・増減設が実施されうる。ドライブ装置105は図2に示すHDDの構成以外に、SSDまたはフラッシュメモリ装置であって容量、レイテンシ、あるいは転送帯域が異なるドライブ装置105が混載されてもよい。
ストレージ装置100は、ドライブ装置105を使用可能にするため、ドライブ装置105に対応したSAS−IF154とストレージ制御プログラム155aを備える。そして、計算機システムの役務を実現するためには、ストレージ装置100の各部位が継続的に正常動作することが重要である。
しかしながら、ストレージ装置100は、構成する部品点数が多いことから、単純に故障や障害を検出することが難しく、大量の監視データから情報を集約するための効率的な管理に基づく性能分析が必要となる。本実施例の一つの目的は、ストレージ装置100のようなストレージシステムにおけるリソース性能を分析し、異常な挙動を発見することにある。
前述の通り、ストレージ装置100はサーバ装置10に対して、論理的にはボリューム101を提供する。ボリューム101は、ドライブ装置105と異なり、物理的に対応する有形物が直接的に存在しないという意味で、論理的な構造である。
ストレージ装置100はドライブ装置105の記憶領域をそのままボリューム101として構成するのではなく、RAIDグループ104やストレージプール106といった論理的な構造をさらに有しており、ストレージコントローラ150によってこれらの構成が管理される。
例えば、複数台のドライブ装置105が一つのRAIDグループ104を構成し、RAIDグループ104の記憶容量は一つ以上のRAIDグループ104から構成されるストレージプール106として管理される。
さらに、サーバ装置10に提供されるための仮想ボリューム107は、ストレージプール106から割り当てられ、SAN60およびストレージポート61などを介してサーバ装置10と接続されることで、サーバ装置10からストレージデバイスとして認識される。
ストレージプール106から動的に割り当てられた仮想ボリューム107を仮想ボリュームと呼んで区別する場合もあるが、サーバ装置10からボリューム101と仮想ボリューム107とはいずれもストレージデバイスとして認識される。
その他、ストレージポート61またはSAN60を構成するスイッチ類は、ボリューム101および仮想ボリューム107とサーバ装置10との通信可否を制御する目的で、LUNセキュリティ(HSD:Host Storage Domain)またはゾーニングといったアクセス制御を行う場合もある。
また、複数のボリューム101のそれぞれに対してキャッシュ153の特定の領域それぞれが割り当てられ、入出力性能を高める働きをする。サーバ装置10から出力されたデータは、階層的に連なる論理的な構造および物理的な構造を経てドライブ装置105に記録される。
ただし、ストレージ装置100あるいはストレージコントローラ150を含む一般のブロックストレージシステムが、ボリューム101に記録されたデータがどのような構造であるか、どのような意味を持つかといった使用状況を検出することは極めて困難である。
これは、サーバ装置10のOS12や仮想化ソフトウェア20などストレージ装置100外部の処理により、ボリューム101にさらにファイルシステムが作成されたり、仮想ディスク102が作成されたりするが、ストレージ装置100はこれらの作成に関する管理情報を他のデータと区別していないためである。
コピー機能や容量削減機能など、ストレージコントローラ150が提供するストレージ機能のなかには、物理的な構造に限らず、ボリューム101、仮想ボリューム107、あるいはストレージプール106の論理的な構造を適用対象とするものがあってもよい。
性能や容量などの特性は、ボリューム101、仮想ボリューム107、あるいはストレージプール106に関連付けられるため、ユーザがストレージ要件を設定する際の一つの表現形式として、このような論理的な構造が使用される場合がある。
例えば、ユーザが、システムのテスト用途には大容量で低速なストレージプール106を割り当てる場合、またはプロダクション環境には他システムと共用しない独立した高速なストレージプール106を割り当てる場合、設定に論理的な構造が使用される。
ストレージ装置100の性能を監視する際には、物理的な構造のみならず論理的な構造についても性能値が測定される。上述の通り、物理的には別々の構造であっても、一つの論理的な構造が定義されている場合、協調して動作するため、論理的な構造についても性能値が測定される。
以下では特に断らない限り、測定対象となる構成要素のことをリソース、指標とすべき性能値のことをメトリクスと呼ぶ。リソースとは、例えばボリューム101またはキャッシュ153のことであり、メトリクスとは、例えば使用率、転送量、応答時間、あるいは単位時間あたり処理入出力数(IOPS)のことである。
性能値は、技術的に計測可能であっても監視の対象とならない場合もあり、本実施例において、ストレージ装置100の外部から利用可能なメトリクスであるか否かは、管理コンピュータ200の監視プログラム(ストレージ性能管理プログラム202)により定義される。
また、入出力に関わる基本的な機能以外のストレージ機能は、ストレージ装置100に処理負荷を加える構成要素であるから、ストレージコントローラ150で稼働するストレージ機能を実現するためのプロセスやタスクを一種のリソースと定義することがある。そして、他のリソースと同様に、ストレージ機能に関するリソースの実行状況も、ストレージ性能管理プログラム202によって観測され、管理されてもよい。
図3は管理コンピュータ200の例を示す図である。本実施例における管理コンピュータ200では、ストレージ装置100を管理するためのストレージ管理プログラム群と、サーバ装置10で稼働するインスタンスを管理するためのインスタンス管理プログラム群とが、稼働する。
管理コンピュータ200自体は、一般的なコンピュータであってもよく、プログラムを実行するプロセッサ271、プログラムとデータが格納される記憶装置272、ネットワーク50と接続するためのNIC273を備える。記憶装置272は、メモリ、HDD、あるいはSDDなどであってもよい。
ストレージ管理プログラム群は、ストレージ性能分析プログラム201、ストレージ性能管理プログラム202、ストレージ構成管理プログラム204を含む。ストレージ構成管理プログラム204は、ストレージ装置100のストレージコントローラ150と連携して、ストレージ装置100の物理的構造および論理的構造の情報を、変更したり、取得してストレージ構成管理データベース205に格納したりするためのプログラムである。
ストレージ性能管理プログラム202は、ストレージ装置100と連携して、ストレージ装置100が有する各リソースの性能を取得してストレージ性能履歴データベース203に蓄積するためのプログラムである。
ストレージ性能分析プログラム201は、本実施例を特徴付ける主たる構成要素であり、ストレージ性能管理プログラム202により提供される性能情報を分析することで、大量の性能情報を少数の統計量に集約したり、特徴的な挙動を抽出したりするためのプログラムである。
計算機システムを性能の観点で分析し、運用管理の業務に活用する役割として、主にストレージ性能分析プログラム201を使用する者を指して分析者と呼ぶことがある。
インスタンス管理プログラム群は、インスタンス構成管理プログラム206を含む。インスタンス構成管理プログラム206は、サーバ装置10と連携して、サーバ装置10のインスタンスの構成を、変更したり、取得してインスタンス構成管理データベース207に蓄積したりするためのプログラムである。
インスタンス管理プログラム群は、ストレージ構成管理プログラム群と逐一同期する必要がないという意味で、ストレージ構成管理プログラム群から独立である。例えばセルフサービスといったクラウドシステムに一般的な運用形態では、ユーザが許可された範囲内でリソースを自由に消費し、インスタンスの作成や変更と、仮想ディスク102の作成と変更とが独立に行われる。
そして、ボリューム101はストレージ管理プログラム群で管理されるが、ボリューム101でどのように仮想ディスク102が構成されようと、ストレージ管理プログラム群は管理しない。
例えば、アプリケーション13の要件に応じて大容量の記憶領域が必要であれば、インスタンスが複数のボリューム101を束ねて利用し仮想ディスク102を拡張してもよい。また、あるインスタンスが使用するボリューム101の容量に余剰があれば、別のインスタンスが使用する仮想ディスク102を同じボリューム101に作成して、そのボリューム101を共有させてもよい。
ボリューム101のこれらの使い方はサーバ装置10の管理において行われるため、管理コンピュータ200のストレージ管理プログラム群は、このような使い方を管理せず、このような使い方の情報を有しない。
このような界面により、クラウドシステムは管理負荷のかかる物理インフラストラクチャの構成変更と、インスタンスの構成変更とを分離し、ユーザが必要とするリソースを必要とした時点で提供する機能を実現している。
インスタンスのリソース要件は、ユーザが実行させるアプリケーション13のハードウェア要件に依存することから、インスタンス管理プログラム群はユーザに由来するワークロードの状態の情報を得る。他方で、インスタンス管理プログラム群と独立していることから、ストレージ管理プログラム群がユーザのワークロードの状態の情報を得ない。
以上で説明した管理コンピュータ200の四つのプログラムは、計算機システムを管理するためのものであり、以下では説明のため単に管理プログラムと総称することがある。なお、便宜的に管理プログラムをストレージ管理プログラム群およびインスタンス管理プログラム群に分けたが、必ずしも分ける必要はなく、あるいは別の構成のプログラムであってもよい。
また、四つの管理プログラムは、単一の管理コンピュータ200で稼働させる必要はなく、複数のコンピュータに分散して稼動させてもよい。各管理プログラムは、ユーザに情報を表示し、また入力させるためのユーザインタフェースをさらに備えていてもよく、他のプログラムと連携するための一般的な形式によるAPI(Application Programming Interface)を備えていてもよい。
図4は、ストレージ構成管理プログラム204およびストレージ構成管理データベース205によって管理されるストレージ構成情報210の例を示す図である。図4に示したストレージ構成情報210は、ストレージ装置100の一部のコンポーネント(リソース)についての例であり、ポート構成情報210a、プール構成情報210b、およびRAIDグループ構成情報210cを含む。
その他のストレージ構成情報として、例えばプロセッサ151やキャッシュ153などのリソースについてのストレージ構成情報があってもよい。ポート構成情報210aは、ストレージポート61を表すポート列210dの情報に対し、LUNセキュリティを表すHSD列210eの情報とボリューム101を表すボリューム列210fの情報が対応付けらえる。
プール構成情報210bは、ストレージプール106を表すプール列210gの情報に対し、ボリューム101を表すボリューム列210fの情報とRAIDグループ104を表すRG列210hの情報が対応付けられる。
RAIDグループ構成情報210cは、RAIDグループ104を表すRG列210hの情報に対し、ドライブ装置105を表すドライブ装置列210iの情報が対応付けられる。ストレージ構成情報210に含まれる情報は、リソース種別において重複しない一意な名前を表しており、少なくとも単一のストレージ装置100内部で唯一の識別子である。
このため、識別子がたどられることにより、ストレージ構成情報210は、例えば、「Port 1C」のストレージポート61に接続される「VL 02:40」のボリューム101が、「SP001」のストレージプール106から割り当てられており、このストレージプール106を構成する「RG001」と「RG002」のRAIDグループ104に属する複数のドライブ装置105であることを表す。
リソースに関して、ストレージ構成管理プログラム204が管理する情報には他にも、例えばボリューム101の割り当て容量やストレージ機能の実行状態などの情報が含まれるが、それらは図4に示したような識別子を用いてリソースが識別され、そのリソースの属性値として管理される。
その属性値を参照するために、例えば、識別子を主キーとして属性値を保持する別のデータ構造を参照するような処理であってもよく、ストレージ構成管理プログラム204の実行により、他の管理プログラムの実行による問い合わせに応じて、ストレージ装置100の構成情報を参照させてもよい。
図5は、ストレージ性能管理プログラム202およびストレージ性能履歴データベース203によって管理されるストレージ性能情報211の例を示す図である。ストレージ性能情報211は、リソースID211bおよびメトリクス211cに対して、時系列の数値データ(性能値)が格納される。時系列のインデックスは時刻211aであり、時間経過に対して蓄積されることで時刻211aの時刻的に後の方向に数値データが増加する。
リソースID211bはリソースを識別するための識別子である。図5では、リソースとして、ストレージポート61(「Port 0F」)、キャッシュ153(「Cache001」)、ストレージプール106(「SP102」)、およびRAIDグループ104(「RG030」)の例を示す。
ストレージポート61についてのメトリクス211c−1や、キャッシュ153についてのメトリクス211c−2、ストレージプール106についてのメトリクス211c−3、およびRAIDグループ104についてのメトリクス211c−4の例に示すように、各リソースは一つ以上のメトリクスを備える。
メトリクス211cは、リソースの種別によって異なっており、同一の種別のリソースについては共通である。また、各種のストレージ機能が動作する場合、その処理タスクの実行有無がストレージ性能情報211に含まれてもよく、計算を容易にするため稼働状態が例えば二値(実行中を1、待機中を0、など)として数値化されてもよい。
ストレージ性能情報211のなかには、何等かの理由で性能値を記録できなかった(欠損値となる)時間帯があったり、リソースの種別によって性能値の取得可能な時間間隔(サンプリングレート)が異なっていたりといった場合の他、ストレージ性能管理プログラム202の不良によって実際と異なる性能値が記録される場合が起こりうる。
これらの性能値については、一般的な手法により分析の前処理段階で除去、補間、あるいは修正されてもよい。また、性能値のデータの量は時間経過につれて増大し、管理コンピュータ200において相応の記憶容量を消費する。
このため、予め設定された一定の保存期間を経て削除されるが、ここでは後述する分析処理に必要な期間のデータが保存され呼び出し可能であるように、ストレージ性能管理プログラム202が制御する。
図6は、インスタンス構成管理プログラム206およびインスタンス構成管理データベース207によって管理されるインスタンス構成情報212の例を示す図である。図6は説明のため、三つのインスタンス11の例であり、それぞれのIDが「A001」、「A002」、および「B330」についての情報を、インスタンス構成情報212−1、インスタンス構成情報212−2、およびインスタンス構成情報212−3で示している。
インスタンス構成情報212には、詳細な各構成情報を分類して一般カテゴリ212a、サーバカテゴリ212b、ネットワークカテゴリ212c、およびストレージカテゴリ212dの設定値が含まれる。
一般カテゴリ212aは、例えばインスタンス11に付与された名称や、構成変更において完全な権限を有する所有者、インスタンス11が稼動させる複数のアプリケーション13から構成されるシステム名、インスタンス11が物理サーバ装置であるか、あるいは仮想化ソフトウェア20上の仮想マシンまたはコンテナであるかを示す種別といった情報を含む。
例えばWeb3階層アプリケーションや、データベースの冗長化、モジュール毎のOS分離など、ITシステムは一般に、単一のサービスを提供するためのものであっても複数のインスタンス11から構成される場合が多い。
システム名は、これら複数のアプリケーション13やインスタンス11のまとまりを管理する目的で付与されており、インスタンス構成管理プログラム206はユーザが稼働させるワークロードの使用状況を取得するための情報を有している。
サーバカテゴリ212bは、例えば使用されているサーバ装置10の識別子、割り当てられているCPUに関する情報、およびメモリ(RAM)の容量といったサーバ装置10に関する情報を含む。
一般カテゴリ212aの種別が「物理」、つまり物理サーバ装置であった場合にはこれらの割り当て量は変更が難しいものの、種別が「仮想」、つまりインスタンス11が仮想マシンやコンテナであった場合には比較的柔軟に変更することが可能であり、仮想化ソフトウェア20の機能によってはサーバ装置10の搭載量を超えて仮想的なCPU数またはメモリ量を割り当てること(オーバーコミット)も可能である。
ネットワークカテゴリ212cは、例えばインスタンス11が備えるネットワークインタフェースの情報を含む。インスタンス11の種別により物理インタフェースであるか仮想インタフェースであるかは異なるものの、IPアドレス、ネットワークゲートウェイ、あるいはVLAN IDなど、インスタンス11がネットワーク50を介してサービスを提供するのに必要なネットワーク設定の情報が含まれる。
ただし、一般的にセキュリティの観点から、インスタンス構成情報212がユーザに開示される場合には、管理コンピュータ200がサーバ装置10の構成を制御する目的で設定されるネットワーク50の設定は秘匿されてもよい。
ストレージカテゴリ212dは、例えば記憶領域を識別するディスクIDや、その種別、およびその容量などを、作成元のボリューム101の情報とともに含む。図6に例示されるように、記憶領域は唯一である必要はなく、インスタンス11のアプリケーション13の要件に応じて複数の記憶領域であってもよい。
また、仮想マシンやコンテナにより構成されるインスタンス11は主にファイル形式の仮想ディスク102を使用するが、要件に応じてボリューム101を物理サーバ装置と同様に使用してもよく、その種別を明示するために一般カテゴリ212aとは別にストレージ種別を保持してもよい。
なお、前述の通り、インスタンス構成情報212をユーザに提示し、一定の権限を与えてインスタンスの作成や構成変更などの作業を委譲するセルフサービスは、昨今のクラウドシステムにおいて一般的に行われている運用形態である。
また、クラウドシステムにおいては一般に、管理者による人手を介さずに構成変更を行うため、具体的な構成変更作業の手順や実行方法は管理ソフトウェアにより自動化されることが多い。
これらの自動化管理ソフトウェアについては。インスタンス管理プログラム群と密接に連携するが、本実施例に特徴的な処理でなく、一般的な管理ソフトウェアにより実現可能であるため、ここでは説明を省略する。ただし、このような管理プログラム、特にストレージ性能分析プログラムに関わる各部の詳細については、本実施例に特徴的な処理と合わせて後述する。
前述の通り、管理コンピュータ200は負荷分散などの目的に応じて複数接続されてもよい。特に分析プログラムのために、要求される計算能力が比較的高いものになることが想定されるため、複数の管理コンピュータ200による負荷分散は有効である。
並列化またはインメモリでの処理によって、この要求に対処する際には、管理プログラムの他に並列計算のためのクラスタ管理機能、またはメモリのステージング管理機能が必要になるが、いずれも一般的な処理フレームワークで実現可能であり、本実施例に特徴的な機能ではないため説明を省略する。
<分析プログラムの構成および機能>
図7は、ストレージ性能分析プログラム201の構成の例を示す図である。ストレージ性能分析プログラム201は、主にデータを加工するために前処理部201a、モデル処理部201b、および後処理部201cを備え、また、本実施例に特徴的な機能を実現するために、グループ化計算モジュール201d、リソースグループ管理テーブル201e、およびグループ評価モジュール201fを備える。
さらに、モデル処理部201bは、機械学習によって分析を行うためのモデル学習モジュール201gおよびモデル評価モジュール201hを備え、ストレージ性能分析プログラム201の各処理の実行手順は、分析ジョブ管理モジュール201iによって制御される。
ストレージ性能分析プログラム201は、ストレージ装置100を性能の観点からモデル化し、通常の動作とは異なる挙動を検出するためのものである。図1に示した計算機システムにおいて、ストレージ性能分析プログラム201が実現すべき機能は大別して、性能データの学習および評価の二つであり、それぞれ主にモデル学習モジュール201gおよびモデル評価モジュール201hの処理により実現される。
ストレージ性能分析プログラム201は、管理コンピュータ200が収集し、ストレージ性能管理プログラム202が管理するストレージ装置100の性能データ(学習用データ215)から、ストレージ装置100の稼動状態を表現する数理モデルを作成するためのものである。
一旦数理モデルが作成されれば、その後の性能データ(評価用データ216)が数理モデル作成時と比べて乖離しているか、乖離している場合はどの程度であるかを定量化することができる。
ここでは、性能データから数理モデルを作成する処理のことを学習と呼び、数理モデルを使ってストレージ装置100が正常状態であるか否かを判定する処理のことを評価と呼ぶ。このような数理モデルに関する処理と、その前後で必要となる処理(前処理および後処理)とを含み、評価の判定が正常でなければ、知見(分析結果217)として異常なリソースを検出するための一連のデータ処理を総称して分析と呼ぶ。
図7の例では、前処理、数理モデルに関する処理、および後処理を担う処理部をそれぞれ前処理部201a、モデル処理部201b、および後処理部201cとして示した。数理モデルの種類は一般に、様々なものが知られており、学習および評価の実現方式やアルゴリズムも複数あるが、ここでは説明を簡単にするため代表的な一例を説明する。
ただし、以下に説明する本実施例の特徴的な分析は、主に性能データの前処理にかかわるものであり、その前処理は、以下で説明する数理モデルの代表的な一例に限定されることなく、かつ数理モデルの種類によらず共通的に適用可能である。
複数のワークロードが混在する性能データを単一の数理モデルとして学習した場合、特定のワークロードの挙動が異常であっても、合成された数理モデルからは異常と判定できない恐れがある。従って、学習により精度のよい数理モデルを作成するには、個々のワークロードに関係するリソース群を特定し、学習対象となる性能データを区分することが望ましい。
一般に、メトリクスの多い問題(次元の高い多変数問題)については統計学的に精度の高い数理モデルを得ることは数理的に困難であるから、真に挙動を特徴づける性能データを選択して分析することが評価結果の精度を左右すると言える。
ストレージ装置100の構成の情報に基づいて、リソース同士の関連を算出する方法もあるが、本実施例が対象とするように、ストレージ構成管理データベース205には、インスタンス11またはアプリケーション13とストレージ装置100のリソースとの関連の情報を保持していないため、ストレージ構成管理プログラム204はワークロード毎にリソース同士の関連性を計算することができない。
ストレージ構成管理プログラム204とインスタンス構成管理プログラム206とを何らかの方法で連携させ、関連付けを達成したとしても、インスタンス11の作成状況や利用状況はユーザの使い方により動的に変化するため、関連性の計算が終わった時点において実際の稼働状態を反映した計算結果が得られるとは考えにくい。
また、別の方法として、統計学的に主成分分析(PCA、Principle Component Analysis)などの手法を用いてメトリクスの中から顕著なもの(分散が大きいもの)を抽出し、問題の次元(ここではメトリクス数に相当)を削減する方法もある。
しかしながら、メトリクスの抽出作業は、用いる手法により異なっており、分析者の試行錯誤による経験や前提知識などの主観に頼らざるを得ない。その結果、対象とする性能データを取得した時間帯によっては、影響のあるワークロードに由来するメトリクスを棄却する可能性がある。
さらには、特にPCAなど変換を伴う方法によれば、抽出結果が加重平均などメトリクスの合成量となりメトリクスが本来持っていた物理的な意味から乖離してしまうという欠点がある。
そこで本実施例では、リソース間の相関係数の高さにより複数のグループに分類し、同じグループに属するリソースの性能データをまとめることで部分問題へ分割する。ここでのリソースは、ストレージ装置100内の物理的または論理的な構成要素であるが、物理的な意味でいえば、接続された関係にあり同じワークロードにより使用されるリソースは、その階層によらず時間軸に対して類似の(相関の高い)挙動を示す。
それら相関の高いリソース、またはそのメトリクス同士の組み合わせによるグループを、便宜的にここではリソースグループと呼ぶこととし、リソースグループにより性能データと数理モデルを分割(分類)することをグループ化などと呼ぶ。
なお、メトリクスの中でも、同一のリソースに由来するメトリクスは、相関が高いことが自明であるので、同じリソースグループに分類されてもよい。さらに、相関係数に基づいてリソースグループを算出する方法によっては、同じリソースが複数のリソースグループに重複して計上されてもよく、性能データを分割(分類)する際には冗長なデータが保持されてもよい。
また、予め設定された閾値以下の使用頻度であってほぼ使われておらず、どのリソースとも予め設定された閾値より相関が低いリソースについては、その他であることを表す別のグループが設けられて、その別のグループに分類されてもよい。
グループ化計算モジュール201dは、各リソースの相関を用いてリソースグループを計算するためのものであり、前処理部201aで参照できるようにするため、その算出結果をリソースグループ管理テーブル201eに格納する。前処理部201aは、グループ化計算モジュール201dの算出結果に従って性能データ(学習用データ215および評価用データ216)を分割(分類)するためのものである。
前処理部201aは、リソースグループ管理テーブル201eを参照することで、グループ化計算モジュール201dが同一のグループであると算出したリソースの組について、性能データの中からリソースおよびメトリクスの系列を選択して部分的なデータを作成する。グループ評価モジュール201fと後処理部201cについては後で説明する。
図8は、グループ化計算モジュール201dによって算出されたリソースグループの情報であって、リソースグループ管理テーブル201eの例を示す図である。リソースグループは相関の高いリソースまたはメトリクス同士の組である。
リソースグループ管理テーブル201eには、リソースグループの識別子(グループID列201e−1)に対してリソースの識別子(リソースID列201e−2)およびメトリクス(メトリクス列201e−3)が保持される。
説明を簡単にするため、リソースID列201e−2に保持されるリソースの識別子は、ストレージ構成管理プログラム204が扱うストレージ構成情報210の識別子と同一とする。ただし、名寄せの仕組みによって別途対応付けることが可能であれば、異なる識別子が用いられてもよい。
同様に、メトリクス列201e−3に保持されるメトリクスについても、原則としてストレージ性能管理プログラム202が扱うストレージ性能情報211のメトリクスと同一とする。
また、状態が観測可能であれば、稼働中のストレージ機能を表すタスクがリソースの一種として計上されていてもよく、リソースグループ管理テーブル201eの最終行の「Copy Task 26」は、コピー機能を稼働させるタスクをリソースとして保持する例である。ただし前述の通り、ここで保持できるリソースは、ストレージ性能管理プログラム202によって性能データが提供されるものに限る。
リソースグループの識別子(グループID列201e−1)はリソースの集合を示すいわゆるラベルであり、識別子が時間変化に対して一定であることよりも、どのリソースとどのリソースが同じグループに分類されるかを保持することのほうが重要である。従って、リソースグループの識別子は、同じ学習用データ215から算出されたものについて可換である。
グループ評価モジュール201fは、時間経過に対して(例えば定期的に)複数の世代のリソースグループを記録し、それらを比較する。ストレージ装置100にリソースの構成変更があれば、あるいはアプリケーション13の大幅な作成または削除があれば、リソースグループはそれに対応して変化し、数理モデルがストレージ装置100の挙動と乖離することで分析の精度が低下する。
そのため、複数の世代を比較して予め設定された閾値を超える顕著な差異があれば、計算機システムに大きな変更があったとみなし、数理モデルを作成しなおすことで、分析の精度を改善できる可能性がある。従って、グループ評価モジュール201fによってグループ化計算モジュール201dの出力値に予め設定された閾値を超える変化があったことを検出された場合、数理モデルの再計算を行ってもよい。
リソースグループは後述するように、主に性能データを用いて計算されるものであるから、ストレージ構成情報210を詳細に解析せずともシステムの構成変更を検知し、システムの実際の状態に数理モデルを追従させることができる。
モデル処理部201bにおいて、モデル学習モジュール201gが学習用データ215から数理モデルを学習し、モデル評価モジュール201hが性能データ(評価用データ216)に対して評価を行う。
モデル学習モジュール201gおよびモデル評価モジュール201hが使用する数理モデルは同一のものであるが、前処理部201aにおいてグループ化され分割された学習用データ215の部分集合毎に複数の数理モデルが作成(学習)される。各数理モデルの学習および評価は、部分集合毎に独立して実行可能であるから、それらを並列実行することで全体の処理時間を短縮する効果が見込まれる。
モデル学習モジュール201gによる数理モデルの学習、およびその数理モデルを使用したモデル評価モジュール201hによる評価は、一般的な分析手法が適用可能であって、いわゆる異常検知を行うアルゴリズムである。
このようなアルゴリズムには、SVM(Support Vector Machine)や各種クラスタ分析を利用するものが知られているが、ここではデータセットが得られないことを想定した教師なし機械学習の一つである、k平均法を用いた処理を一例として説明する。
まず、学習用データ215をストレージ装置100の正常状態を表すデータとし、前処理部201aにおいて前述のグループ化やスケーリングなどを施す。モデル学習モジュール201gでは、前処理を経た学習用データ215が各メトリクスを軸とする多次元空間上の集合であるとみなし、k平均法によるクラスタリングが行なわれる。
ここでの学習用データ215は、ストレージ装置100の各リソースの正常状態における時系列性能値であり、ワークロードの特性または時間帯による利用度合いを反映した複数のクラスタに分けられる。
これらのクラスタは正常状態におけるストレージ装置100の振る舞いを表しているため、例えばクラスタ中心からの距離(スケーリングされている場合はマハラノビス距離)が状態の異常さを表す定量指標であり、これを異常度と呼ぶ。
従って、このようなクラスタリングに基づく数理モデルはリソースグループ毎に分割された多次元空間において定義される、k平均法によって得られたクラスタ中心およびクラスタの大きさを表す標準偏差として定式化される。モデル評価モジュール201hは評価用データ216に対して最近傍クラスタ中心からの距離を計算し、異常度を算出する。
前処理部201aは、モデル処理部201bで処理を行うのに適切な形式となるように、学習用データ215と評価用データ216を加工するためのものである。前処理部201aは、データ分析の分野で行われる一般的な前処理と、必要に応じて本計算機システムに特有な前処理とが組み合わせられてもよい。
前処理は基本的に学習用データ215および評価用データ216の両者に対して共通した処理であるが、詳細な設定(例えば欠損値の補間処理などの設定)は共通しなくてもよい。一般的な前処理は例えば、ストレージ性能情報211に含まれる可能性のある欠損値、不正値、または外れ値に対応するための加工や、異なる単位のメトリクスを扱うための正規化を含むスケーリングの処理である。
本計算機システムに特有な前処理は、リソースIDとメトリクスIDなどの対応付け、および性能データ(評価用データ216)をリソースグループの定義(リソースグループ管理テーブル201eの情報)に従って分割(分類)するグループ化処理を含む。
後処理部201cは、数理モデルの評価結果をさらに加工し、分析結果として整形するためのものである。例えば、後処理部201cは、異常度が許容範囲内であるか否かを予め設定された閾値で判定し、要因と推定されるメトリクスなどの付加的情報とともに分析結果217として管理コンピュータ200の他の管理プログラムに出力したり、管理者に表示できるようにしたりする。
異常度の判定に用いられる閾値(正値)は、性能データが正規分布に従うと仮定してパーセンタイルの概念から例えば標準偏差の2倍としてもよい。k平均法によるモデル化では、異常度は単に、対象とする多次元空間において正常状態と異なる振る舞いをしているか否かを与える指標であり、どのメトリクスが要因となっているかという情報までは含んでいない。
異常度が高く、性能上の問題と判定される傾向が検出された場合には、後処理部201cによって要因となりえるメトリクスを推定する処理を別途実行することが望ましい。最も簡便には、後処理部201cが、クラスタ中心からの距離が大きい成分(メトリクス)から順に複数を列挙してもよい。
以上のストレージ性能分析プログラム201内の各処理部および各モジュールにかかる処理の実行は、分析ジョブ管理モジュール201iの処理により制御される。例えば、分析ジョブ管理モジュール201iは、評価用データ216の入力に応じて前処理部201a、モデル処理部201b、後処理部201cを順序的に実行させるためのものである。
また、分析ジョブ管理モジュール201iの処理は、必要に応じて(何らかの予め設定された条件を判定して)学習用データ215からリソースグループの算出および数理モデルの学習を行って分析処理の精度を持続的に改善してもよい。
ストレージ性能分析プログラム201内で各手順が実行される際、分析ジョブ管理モジュール201iの処理は、分析を実施する管理者に対して事前に承認を得るほか、事前に定義された頻度に応じて定期的に各手順を実行させる、あるいはグループ評価モジュール201fなどの各部の処理結果に応じて別の処理を開始させてもよい。
図9は、リソースグループの算出についての例を示す図である。グループ化計算モジュール201dは、各リソースについてのメトリクス同士について計算される相関行列に基づいてリソースグループを算出する。
ストレージ性能管理プログラム202から得られた学習用データ215を、各メトリクスについての時系列データ(ストレージ性能情報211)とし相関を計算すると(相関計算220)、対象の総メトリクス数を次数に持つ相関行列221が得られる。
ここでの相関とは、ある二つのメトリクスを組とすると、一方のメトリクスの時間変化に対して他方のメトリクスの値が比例して変化する場合(正の相関)または半比例して変化する場合(負の相関)に高くなり、値の変化が同調していなければ低くなる量である。
相関行列221は一般に対称行列であり、その行または列方向を新たなベクトルとみなし、所定のリソースグループ数222によってクラスタリング223することで相関の高いメトリクス同士を同じグループ(クラスタ)に分類する。
このようにグループに属するリソースの組、またはリソースに付随するメトリクスの組をリソースグループと定義する。算出されたリソースグループは、図8に示したリソースグループ管理テーブル201eのような形式で表現される。
図1に示した計算機システムにおいて複数のストレージ装置100が接続される場合には、ストレージ装置100の識別子を別途組み合わせるか、リソースIDが複数のストレージ装置100をまたがって唯一となるよう付与されてもよい。
図5に示したストレージ性能情報211のように、リソースは複数のメトリクスを持つ。各リソースの複数のメトリクスについてリソースグループを計算してもよいが、同一リソースの複数のメトリクスは当然に相関が高いものとみなせるので、代表的なメトリクス(代表メトリクス)が一つ選び出され、相関行列が計算されてもよい。
代表メトリクスの選び方は、少なくとも同じリソース種別に対して共通であるとする。例えば、あるストレージポートAの代表メトリクスをIOPSとしたとき、その他のストレージポートB以降も代表メトリクスをIOPSとする。
一つのリソースに対して複数のメトリクスを用いて計算した場合には、異なるリソースグループに単一のリソースが重複して選択される(同一リソースのメトリクスが異なるグループにクラスタリングされる)可能性がある。
一方で、代表メトリクスとしてリソース毎に一つのメトリクスを用いて相関を計算した場合には、リソースが重複なくグループ化される。ただし、代表メトリクスを用いる場合は、同じリソースに属するメトリクスがすべて同一のリソースグループに属するものとする。
リソースグループの数222は、数理モデルの学習に用いるデータの次元数が数理モデルの精度に関わるため、計算機システムの構成に合わせて適切に定めるのが望ましい。そもそも、ワークロードの特性を加味するというのが、本実施例の基本的なアプローチである。
このアプローチからすれば、ユーザや用途が独立しているワークロードの数(アプリケーション13数や複数のアプリケーションから構成されるシステム数)を用いて、リソースグループの数222を決定することが適切な可能性が高い。
しかしながら、前述のようにストレージ装置100内にはストレージポート61のような、より少数でかつ共有される構造があり、共有される構造では互いに影響を受けるため、ストレージ装置100を使用するワークロードは独立でない。
さらに、アプリケーション13の情報はインスタンス構成管理プログラム206のようにストレージ管理プログラム群の外で管理されており、ストレージ性能分析プログラム201はワークロードの影響範囲を判別できない。そこで本実施例では、ストレージ装置100内の各部を複数のリソース階層に分けた時に最小であるリソースの要素数を用いてリソースグループの数222を決定する。
図10は、リソース階層とリソースグループの例を示す図である。図10に示すように、ストレージ装置100を構成する各リソースは任意に接続されるのではなく、階層的に接続される。
ストレージ装置100は、各ストレージポート61からなるストレージポート層500a、キャッシュ153の各割り当て領域501bからなるキャッシュ層500b、各プロセッサ151のコア501cからなるプロセッサ層500c、およびストレージ機能の実行プロセス501dからなるストレージ機能層500dの各階層を含む。
さらにストレージ装置100は、各ボリューム101からなるボリューム層500e、各ストレージプール106からなるストレージプール層500f、各RAIDグループ104からなるRAIDグループ層500gの各階層を含む。
従って、各リソース同士で相関を調べると、同じ階層内の別のリソース同士よりも、上下に接する階層それぞれにあるリソース同士で相関が高くなる。ここでは、各リソース階層の要素と相関が高く、より少数でかつ対象のリソース全体において支配的であるという意味でこの最小数のリソースを結節点と呼ぶことにする。
結節点のより実際的な例は、本実施例におけるストレージプール106である。ストレージプール106は、ボリューム101とRAIDグループ104の間にあって、入出力処理を集約する構造であるほか、ストレージプール106にドライブ装置105のメディア配分が管理される。
あるいは、本実施例において、ストレージプール106をユーザのテナント用環境、本番用環境、またはテスト用環境など一定用途のシステムを構築する単位として割り当てる運用が行われることがあるなど、ユーザによるシステムの使用法とある程度関連した構造であると言える。
実験的にも図10に示すように、例えば特定のストレージプール「SP002」に対して相関を調べると、各階層から相関の高いリソースが選出され、一つのリソースグループを構成することが多い。
本実施例ではこのように、相関の高いリソース同士が、特定のワークロードの影響を受けて動作しているものとする。結節点をリソースグループの数の決定の基本とし、さらにストレージ装置100または計算機システムの運用に関する知見に基づく設定を利用して、例えばストレージ機能の同時稼働タスク数を結節点の数に加味してリソースグループの数を決定してもよい。
また前述のように、他のどのリソースとも相関の低いリソースを分類するためのリソースグループが設けられて、このようにして設けられたリソースグループの数が、結節点に基づく数に加算されてもよい。その他、対象の挙動を集約するようなリソース階層を選択する限りにおいて、例外的に結節点となるリソース階層が分析者により選ばれてもよい。
例えば、ストレージプール106の数よりも少数のプロセッサ151が搭載される環境(ストレージ装置100)において、分析者がストレージプール106を支配的であると考えてストレージプール106を選択すれば、その選択によりストレージプール106に基づいてリソースグループの数が決定されてもよい。
より具体的には、例えばプロセッサ151の処理能力を多く消費するようなストレージ機能がほとんど使用されておらず、記憶領域の広範囲にわたってデータ変更が生じるような用途においては、プロセッサ151よりもストレージプール106のほうが、ストレージ装置100の挙動を律速するリソース階層である。
一方で、共有される度合が低くワークロードを集約しないリソース階層や、リソース内の構成要素であって他のリソース階層と関連しない構成要素は、結節点として不適切である。具体的には例えば、ボリューム101は複数のワークロードに共有されることは少ないし、物理的に搭載されるキャッシュ153の回路基板の枚数は他の論理的なリソースとは直接的に関連しないという点においていずれも結節点として不適切である。
リソース階層とリソース階層に含まれるリソースのリソース識別子は、ストレージ構成管理プログラム204によって取得される。このために、ストレージ構成管理プログラム204は、一般に管理プログラムと連携するために提供されているインタフェース(API)を調べることで、外部仕様となるリソース種別や名称を取得してもよい。
<分析プログラムの処理フロー>
図11は、リソースグループの計算の処理フロー510および学習用データ215のモデル学習の処理フロー511の例を示す図である。処理フロー510と処理フロー511は同期して実行される必要はないが、処理フロー511において処理フロー510の実行により作成されたリソースグループが使用される。
処理フロー510では、ストレージ性能分析プログラム201により入力される性能データからリソースグループを算出する。処理フロー510が開始される契機には、例えば分析者による指示、計算機システムの構成変更の頻度に応じた定期的な起動、あるいは学習用データ215または評価用データ216の到着の検出などがある。ただし、処理フロー510の実行制御は分析ジョブ管理モジュール201iによる。
ステップ512において、グループ化計算モジュール201dは性能データを入力する。入力される性能データに対して、欠損値の処理またはスケーリングなどの前処理部201aによる前処理と同じ前処理が適用されてもよい。
ステップ513において、グループ化計算モジュール201dはリソースグループの数を定める。リソースグループの数は、結節点が静的に与えられる場合、事前に設定され結節点の数が、そのままリソースグループの数として定められてもよい。
また、リソースグループの数が動的に変更される場合は、ストレージ構成管理プログラム204の実行によりストレージ構成情報210の情報として結節点の数が取得され、取得された結節点の数が、リソースグループの数として定められてもよい。ここで、ストレージ構成管理プログラム204の実行により与えられる情報は、結節点の数であって、それ以外のストレージ構成情報210の情報を含まなくてもよい。
ステップ514において、グループ化計算モジュール201dは、入力された性能データから時系列のメトリクスを抽出し、抽出されたメトリクスから相関行列を計算する。さらに、算出された相関行列をステップ513において定めたリソースグループの数でクラスタリングする。
ステップ515において、グループ化計算モジュール201dは、クラスタリングにより得られたリソースまたはメトリクスのクラスタそれぞれをリソースグループとして算出する。ここで、代表メトリクスが用いられた場合は、同一リソースに含まれる代表メトリクス以外のメトリクスも、代表メトリクスと同一リソースグループに含まれるとしてリソースグループの情報が修正される。
ステップ516において、グループ評価モジュール201fは、グループ化計算モジュール201dから、リソースグループの計算結果を取得し、過去に算出されたリソースグループと比較し、予め設定された閾値を超える差異がないと判定すると、処理フロー510の処理を完了する。
ステップ516において、グループ評価モジュール201fは、予め設定された閾値を超える差異があると判定すると、ステップ517に進む。なお過去に算出されたリソースグループが存在しない場合、すなわち初期化された直後のストレージ性能分析プログラム201の実行の場合、ステップ516の比較をせずにステップ517に進み。
ステップ517において、グループ化計算モジュール201dまたはグループ評価モジュール201fは、リソースグループの計算結果を用いてリソースグループ管理テーブル201eを更新する。
ステップ517が実行されてリソースグループが更新される際には、数理モデルの精度が変化することが予想されるため、ステップ517が実行されると数理モデルを再度作成するように処理フロー511が開始されてもよい。
あるいは、学習用データ215から数理モデルを作成するためのモデル学習の処理フロー511を開始する契機は、例えば分析者による指示、システムの構成変更の頻度に応じた定期的な起動、あるいは学習用データ215の到着の検出などであってもよい。ただし、処理フロー511の実行制御は分析ジョブ管理モジュール201iによる。
ステップ518において、ストレージ性能管理プログラム202が、予め設定された長さの学習用データ215を取得する。これにより、数理モデルの作成に十分な長さの性能データが確保される。
ステップ519において、前処理部201aは、学習用データ215に対し前処理を適用する。ここでの前処理は、欠損値の処理、不正値の処理、または正規化を含むスケーリングなどデータ分析の分野で一般的な前処理のほか、学習用データ215に固有の処理を含んでもよい。
ステップ520において、前処理部201aは、リソースグループ管理テーブル201eに保持されたリソースグループの定義に従い、学習用データ215を分割する。学習用データ215が分割されて部分データにされ、モデル学習の手順は部分データ毎に並列に実行される。
ステップ521において、モデル処理部201bのモデル学習モジュール201gは、部分データ毎に数理モデルを作成する。なお、部分データ毎に並列に実行する場合、部分データは互いに独立であるため、モデル学習として他の数理モデルの作成が完了することを待ち合わせる必要はない。
ステップ522において、モデル学習モジュール201gは、モデル評価モジュール201hと共有するためのモデル定義が更新される。本実施例における数理モデルは、リソースグループの定義に基づき構成される多次元空間上のクラスタ中心やクラスタの標準偏差である。数理モデルの更新が省略される条件の設定があってもよい。
図12は、評価用データ216のモデル評価の処理フローの例を示す図である。図12に示した処理フローは、評価用データ216の異常度を算出するためのモデル評価の処理フロー530と、その後処理からなる。
モデル評価の処理フロー530を開始する契機としては、例えば分析者による指示、システムの構成変更の頻度に応じた定期的な起動、あるいは評価用データ216の到着の検出などがある。ただし、処理フロー530および後処理の実行制御は分析ジョブ管理モジュール201iによる。
ステップ531において、ストレージ性能管理プログラム202は、評価用データ216を入力する。評価用データ216の長さは、数理モデルの要件および期待される分析対象の要件に依存する。より具体的には例えば、数理モデルが複数点の平均や時系列における差分を要求する場合は、一定度の長さが必要となる。この長さは予め設定されてもよい。
ステップ532において、前処理部201aは、評価用データ216に対し前処理を適用する。ここでの前処理は、前述の学習時におけるステップ519と同様である。ステップ533において、前処理部201aは、リソースグループ管理テーブル201eに保持されたリソースグループの定義に従い、評価用データ216を分割して部分データにする。
この分割のためのリソースグループの定義は、モデル学習時と同一である。仮に評価中にリソースグループの定義が更新された場合、分析ジョブ管理モジュール201iによって評価の処理フロー530が中止される。分割が完了した時点で、以降のモデル評価の手順は各部分データについて並列に実行される。
ステップ534において、モデル処理部201bのモデル評価モジュール201hは、部分データ毎に異常度を評価する。ここで使用される数理モデルは、モデル学習時と同一である。仮に評価中に数理モデルの定義が更新された場合には、分析ジョブ管理モジュール201iによってステップ534が中止される。
ステップ535において、後処理部201cは、異常度を大きくする要因となっているリソースを特定する。分析の要件上、要因となっているリソース(およびメトリクス)を特定する必要がない場合はステップ535が省略される(スキップされる)。分析の要件条の必要性は予め設定されてもよい。
また、評価用データ216として入力された性能データについて異常度が小さく、正常な稼動状態にあると判断できる場合にも、例えば異常度と予め設定された閾値とが比較されて異常度が小さいと判定された場合にも、ステップ535は省略されてよい。
ステップ536において、後処理部201cは、分析処理の分析結果217を出力する。他の管理プログラムとの連携に必要であれば、後処理部201cは、リソースグループ毎の異常度やその要因と特定されたものを列挙して分析結果217とし、分析結果217を特定のデータ構造に整形してもよいし、ユーザに提示する場合はユーザに提示するための形式に整形してもよい。
本実施例によれば、計算機システムの中で記憶装置として共有されるストレージ装置100において、ワークロードとの関連を加味してリソース性能を効率的に分析する分析手法が提供される。様々なワークロードが混在しており、性能データも混在しているため、顕著な挙動がモデル化できない場合においても、ワークロード毎に有効な成分を抽出してモデル化することができる。
性能データ同士の相関からリソースグループを算出することにより、対象システムの厳密で完全な構成情報が入手できない場合においても、精度の高い分析が可能となる。また、部分データ毎にモデルの学習および評価を独立に行えることから、分析処理を並列化し、分析処理にかかる所要時間を短縮することができる。
本実施例においては、ストレージ装置100を対象として性能情報の分析の例を説明したが、本実施例が提供する分析は、他の対象についても容易に拡張可能である。例えば、図13に示すようにデータセンタを対象とする場合には、ストレージ装置100の他、サーバ装置10、ネットワークスイッチ550、電源装置551、および図示を省略した空調設備などのファシリティも分析の対象となるように拡張可能である。
図13に示した例では、例えば装置の種別が同じ装置は同じ階層としてリソースの階層を定義し、ネットワークスイッチ550またはVLAN IDなどを結節点とすることでリソースグループが定義されてもよい。
さらには、図13に示したデータセンタにネットワーク仮想化技術またはストレージ仮想化技術と組み合わせられた場合、コントローラアプライアンスを結節点とすることで、リソースグループが定義され、その定義されたリソースグループを用いて、本実施例で説明した分析を適用してもよい。
例えば図14に示すように、分散ソフトウェアストレージ環境の実装例では、サーバ装置10c、10dに仮想マシンインスタンス11c、11dと共存する形で、あるいはサーバ装置10eを占有する形で、分散ストレージコントローラ560が一種の仮想マシンとして稼動し、サーバ装置10c〜10e内蔵のドライブ装置が、LAN50に接続された図示省略の各ノードへ共有可能なボリューム561として提供される。
図14のような場合は、複数のサーバ装置10の連携により記憶領域が提供され、データの保存先も動的に変更されるが、例えば分散ストレージコントローラ560を結節点としてリソースグループが定義され、本実施例で説明した分析を適用することで、ワークロードの特性が反映されたモデル化が可能である。
一般にデータセンタ内には、多数かつ提供者が異なるハードウェアやソフトウェアが混在するため、管理体系と論理構成が一様でなく、データセンタ内のシステムの詳しい構成情報を得ることが困難である。そのような場合であっても、本実施例のようにリソースグループが定義されて分析可能となる。
以上で説明したように、大規模な次元数の大きい性能データの分析を、より低次元数かつ複数の部分問題に変換することが可能になるので、モデル化の精度を向上できる。また、使用するデータの局所化により、分析処理を実行する管理コンピュータのリソースを効率的に利用でき、分析処理の並列化により求解にかかる所要時間を短縮できる。
さらには、完全な構成情報を必要としないため、構成情報が不足している場合や誤っている場合、最新の構成情報が入手できない場合などにおいても、精度の高いモデル化が可能である。関連性の高いものの組み合わせの変化を検出することによって、リソース構成の変更やワークロードの変更が行われたことを推定することも可能となる。
201:ストレージ性能分析プログラム
201a:前処理部
201b:モデル処理部
201d:グループ化計算モジュール
201e:リソースグループ管理テーブル

Claims (13)

  1. 管理計算機による計算機システムの性能分析方法であって、
    前記管理計算機は、
    プロセッサと、
    前記プロセッサが実行するプログラムが格納された記憶装置とを備え、
    前記計算機システムは、
    複数のリソースから構成され、
    前記プロセッサは、
    前記リソース間の性能データの変化の相関に基づき、前記複数のリソースを複数のリソースグループに分割し、
    分割された前記リソースグループ毎に性能データを分析すること
    を特徴とする性能分析方法。
  2. 請求項1に記載の性能分析方法であって、
    前記複数のリソースは、複数の階層で構成され、前記複数の階層のうちの一つの階層に属するリソースを結節点とし、
    前記プロセッサは、
    前記リソースグループの数を前記結節点の数に基づき決定し、
    前記リソース間の性能データの変化の相関と、前記結節点の数とに基づき、前記複数のリソースを前記複数のリソースグループに分割すること
    を特徴とする性能分析方法。
  3. 請求項2に記載の性能分析方法であって、
    前記計算機システムは、
    前記複数のリソースが複数のリソース階層を構成し、
    前記プロセッサは、
    前記リソースグループの数を、前記リソース階層毎のリソースの数の最小数を結節点の数とすること
    を特徴とする性能分析方法。
  4. 請求項2に記載の性能分析方法であって、
    前記計算機システムは、
    複数のストレージプールを備えたストレージ装置を備え、
    前記プロセッサは、
    前記複数のストレージプールの数を前記結節点の数とすること
    を特徴とする性能分析方法。
  5. 請求項2に記載の性能分析方法であって、
    前記プロセッサは、
    予め設定された数を前記結節点の数とすること
    を特徴とする性能分析方法。
  6. 請求項2に記載の性能分析方法であって、
    前記プロセッサは、
    前記リソースの性能データとして、前記リソース毎に複数のメトリクスの値を、前記計算機システムから取得し、
    取得された前記メトリクス毎の値を時系列に蓄積し、
    蓄積された前記メトリクスの値の時刻の経過に従った変化と、蓄積された他の前記メトリクスの値の時刻の経過に従った変化との相関を計算することにより、前記リソース間の性能データの変化の相関を得ること
    を特徴とする性能分析方法。
  7. 請求項6に記載の性能分析方法であって、
    前記プロセッサは、
    蓄積された一つの前記リソースの前記複数のメトリクスの中から一つの代表メトリクスを選択することにより、蓄積された前記複数のリソースそれぞれの前記代表メトリクスを選択し、
    前記代表メトリクスの値の時刻の経過に従った変化と、他の前記代表メトリクスの値の時刻の経過に従った変化との相関を計算することにより、前記リソース間の性能データの変化の相関を得ること
    を特徴とする性能分析方法。
  8. 請求項7に記載の性能分析方法であって、
    前記プロセッサは、
    前記代表メトリクスの値の時刻の経過に従った変化と、他の前記代表メトリクスの値の時刻の経過に従った変化との相関を計算することにより、前記リソース間の性能データの変化の相関を得て、
    得られた前記リソース間の性能データの変化の相関に基づき、複数の前記代表メトリクスを前記複数のリソースグループに分割し、
    前記代表メトリクスそれぞれの属する前記リソースの他の前記メトリクスを、前記代表メトリクスそれぞれと同じ前記リソースグループに分割することにより、前記複数のリソースを前記複数のリソースグループに分割すること
    を特徴とする性能分析方法。
  9. 請求項6に記載の性能分析方法であって、
    前記プロセッサは、
    前記複数のリソースグループを記録し、
    記録された前記複数のリソースグループを比較し、
    比較された前記複数のリソースグループに、予め設定された閾値を超える差異があれば、性能データを分析するための前記リソースグループを変更すること
    を特徴とする性能分析方法。
  10. 請求項9に記載の性能分析方法であって、
    前記プロセッサは、
    分割された前記リソースグループ毎に学習して数理モデルを作成し、
    作成された数理モデルを用いて、分割された前記リソースグループ毎に評価することにより、性能データを分析すること
    を特徴とする性能分析方法。
  11. 請求項10に記載の性能分析方法であって、
    前記プロセッサは、
    比較された前記複数のリソースグループに、予め設定された閾値を超える差異があれば、性能データを分析するための前記リソースグループを変更し、
    前記リソースグループの変更が、前記評価の途中であれば、前記評価を中止すること
    を特徴とする性能分析方法。
  12. 複数のリソースから構成される計算機システムを性能分析する管理計算機であって、
    前記管理計算機は、
    プロセッサと、
    前記プロセッサが実行するプログラムが格納された記憶装置とを備え、
    前記プロセッサは、
    前記リソース間の性能データの変化の相関に基づき、前記複数のリソースを複数のリソースグループに分割し、
    分割された前記リソースグループ毎に性能データを分析すること
    を特徴とする管理計算機。
  13. 請求項12に記載の管理計算機であって、
    前記複数のリソースは、複数の階層で構成され、前記複数の階層のうちの一つの階層に属するリソースを結節点とし、
    前記プロセッサは、
    前記リソースグループの数を前記結節点の数に基づき決定し、
    前記リソース間の性能データの変化の相関と、前記結節点の数とに基づき、前記複数のリソースを前記複数のリソースグループに分割すること
    を特徴とする管理計算機。
JP2018083972A 2018-04-25 2018-04-25 性能分析方法および管理計算機 Active JP6842440B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018083972A JP6842440B2 (ja) 2018-04-25 2018-04-25 性能分析方法および管理計算機
US16/286,121 US10986006B2 (en) 2018-04-25 2019-02-26 Performance analysis method and management computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018083972A JP6842440B2 (ja) 2018-04-25 2018-04-25 性能分析方法および管理計算機

Publications (2)

Publication Number Publication Date
JP2019191929A true JP2019191929A (ja) 2019-10-31
JP6842440B2 JP6842440B2 (ja) 2021-03-17

Family

ID=68293050

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018083972A Active JP6842440B2 (ja) 2018-04-25 2018-04-25 性能分析方法および管理計算機

Country Status (2)

Country Link
US (1) US10986006B2 (ja)
JP (1) JP6842440B2 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10599354B1 (en) * 2018-04-30 2020-03-24 Amazon Technologies, Inc. Block storage with volume locality placement based on performance requirements
US10831580B2 (en) * 2018-09-26 2020-11-10 International Business Machines Corporation Diagnostic health checking and replacement of resources in disaggregated data centers
US11188408B2 (en) 2018-09-26 2021-11-30 International Business Machines Corporation Preemptive resource replacement according to failure pattern analysis in disaggregated data centers
US10754720B2 (en) 2018-09-26 2020-08-25 International Business Machines Corporation Health check diagnostics of resources by instantiating workloads in disaggregated data centers
US10838803B2 (en) 2018-09-26 2020-11-17 International Business Machines Corporation Resource provisioning and replacement according to a resource failure analysis in disaggregated data centers
US11050637B2 (en) 2018-09-26 2021-06-29 International Business Machines Corporation Resource lifecycle optimization in disaggregated data centers
US10761915B2 (en) 2018-09-26 2020-09-01 International Business Machines Corporation Preemptive deep diagnostics and health checking of resources in disaggregated data centers
CN111046007B (zh) * 2018-10-12 2023-08-18 伊姆西Ip控股有限责任公司 管理存储系统的方法、装置和计算机程序产品
US10949322B2 (en) * 2019-04-08 2021-03-16 Hewlett Packard Enterprise Development Lp Collecting performance metrics of a device
US20200136943A1 (en) * 2019-12-27 2020-04-30 Intel Corporation Storage management in a data management platform for cloud-native workloads
WO2021166228A1 (ja) * 2020-02-21 2021-08-26 日本電信電話株式会社 ネットワーク管理装置、方法およびプログラム
CN113157048B (zh) * 2021-04-23 2022-08-26 杭州安恒信息技术股份有限公司 一种基于多终端时间轴的行为数据分析方法及相关组件
CN115529268B (zh) * 2021-06-24 2024-01-19 瞻博网络公司 处理配置网络设备的指令
US20230023869A1 (en) * 2021-07-23 2023-01-26 Dell Products, L.P. System and method for providing intelligent assistance using a warranty bot
CN117270795B (zh) * 2023-11-23 2024-02-09 北京中超伟业信息安全技术股份有限公司 一种大容量数据存储设备及其数据销毁方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008276279A (ja) * 2007-04-25 2008-11-13 Hitachi Ltd 装置性能管理方法、装置性能管理システム、および管理プログラム
WO2010032701A1 (ja) * 2008-09-18 2010-03-25 日本電気株式会社 運用管理装置、運用管理方法、および運用管理プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7016972B2 (en) * 2001-04-23 2006-03-21 International Business Machines Corporation Method and system for providing and viewing performance analysis of resource groups
US7292531B1 (en) * 2002-12-31 2007-11-06 Packeteer, Inc. Methods, apparatuses and systems facilitating analysis of the performance of network traffic classification configurations
US9037826B1 (en) * 2012-02-29 2015-05-19 Amazon Technologies, Inc. System for optimization of input/output from a storage array
US10701030B2 (en) * 2016-07-06 2020-06-30 Hiro Media Ltd. Real-time monitoring of web page code
US10965534B2 (en) * 2017-10-27 2021-03-30 Cisco Technology, Inc. Hierarchical fog nodes for controlling wireless networks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008276279A (ja) * 2007-04-25 2008-11-13 Hitachi Ltd 装置性能管理方法、装置性能管理システム、および管理プログラム
WO2010032701A1 (ja) * 2008-09-18 2010-03-25 日本電気株式会社 運用管理装置、運用管理方法、および運用管理プログラム

Also Published As

Publication number Publication date
US20190334795A1 (en) 2019-10-31
JP6842440B2 (ja) 2021-03-17
US10986006B2 (en) 2021-04-20

Similar Documents

Publication Publication Date Title
JP6842440B2 (ja) 性能分析方法および管理計算機
Ismaeel et al. Proactive dynamic virtual-machine consolidation for energy conservation in cloud data centres
US9635101B2 (en) Proposed storage system solution selection for service level objective management
US11372663B2 (en) Compute platform recommendations for new workloads in a distributed computing environment
US11128696B2 (en) Compute platform optimization across heterogeneous hardware in a distributed computing environment
US10824412B2 (en) Method and apparatus for data driven and cluster specific version/update control
US10855791B2 (en) Clustered storage system path quiescence analysis
US8924328B1 (en) Predictive models for configuration management of data storage systems
US20220413891A1 (en) Compute Platform Optimization Over the Life of a Workload in a Distributed Computing Environment
WO2015145664A1 (ja) リソース管理方法およびリソース管理システム
US11068312B2 (en) Optimizing hardware platform utilization for heterogeneous workloads in a distributed computing environment
US10353730B2 (en) Running a virtual machine on a destination host node in a computer cluster
US11360795B2 (en) Determining configuration parameters to provide recommendations for optimizing workloads
US20190286509A1 (en) Hierarchical fault determination in an application performance management system
US11409453B2 (en) Storage capacity forecasting for storage systems in an active tier of a storage environment
US20220036224A1 (en) Determination of storage configuration for enterprise distributed environment
CN110474799A (zh) 故障定位方法及装置
EP3948537B1 (en) Compute platform optimization over the life of a workload in a distributed computing environment
US10318369B2 (en) Application performance management system with collective learning
US11915153B2 (en) Workload-oriented prediction of response times of storage systems
US11561824B2 (en) Embedded persistent queue
JP6878369B2 (ja) ボリューム配置管理装置、ボリューム配置管理方法、及びボリューム配置管理プログラム
US11782801B2 (en) Systems and methods for selecting optimal proxy devices for backup and restore operations for virtual machines
US20220292001A1 (en) Predictive optimal queue length management for backup sessions using distributed proxies
US10235262B2 (en) Recognition of operational elements by fingerprint in an application performance management system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190620

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200623

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200813

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210219

R150 Certificate of patent or registration of utility model

Ref document number: 6842440

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150