JP7106603B2 - 計算機システム及び計算機システムの運用管理方法 - Google Patents

計算機システム及び計算機システムの運用管理方法 Download PDF

Info

Publication number
JP7106603B2
JP7106603B2 JP2020103539A JP2020103539A JP7106603B2 JP 7106603 B2 JP7106603 B2 JP 7106603B2 JP 2020103539 A JP2020103539 A JP 2020103539A JP 2020103539 A JP2020103539 A JP 2020103539A JP 7106603 B2 JP7106603 B2 JP 7106603B2
Authority
JP
Japan
Prior art keywords
service
required resource
node
computer system
host
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020103539A
Other languages
English (en)
Other versions
JP2021196922A (ja
Inventor
司 柴山
彰 出口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2020103539A priority Critical patent/JP7106603B2/ja
Priority to US17/197,240 priority patent/US20210392087A1/en
Publication of JP2021196922A publication Critical patent/JP2021196922A/ja
Application granted granted Critical
Publication of JP7106603B2 publication Critical patent/JP7106603B2/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
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/805QOS or priority aware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/822Collecting or measuring resource availability data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/83Admission control; Resource allocation based on usage prediction

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、計算機システム及び計算機システムの運用管理方法に関する。
近年、計算機システムなどの運用コストを削減するため、運用管理操作の自動化が進んでおり、テンプレートや構成定義ファイルを利用して一連の運用管理操作を自動実行する技術がある。例えば特許文献1には、サービステンプレートを作成し、サービステンプレートと、サービステンプレートの入力プロパティへの入力値とに基づいて運用サービスを生成し実行することで対象装置を運用する管理システムが開示されている。
国際公開第2016/084255号公報
しかしながら、上述の従来技術では、サービステンプレート実行後に、負荷が偏りリソースを効率よく利用できない場合があるという問題がある。サービステンプレートを実行することで一連の運用管理操作を自動化しても、運用サービスの実行基盤について知識がある管理者が管理ツールなどで負荷状況等を把握しなければ、負荷の偏る処理を実行してしまう可能性がある。特にプライベートクラウドのように多くのワークロードが動作する環境や、スケールアウト環境のような大規模環境では、負荷が偏りリソースを効率よく利用できないことで、運用コストが増大する。
本発明は、上述の点を考慮してなされたものであって、負荷を考慮した対象装置の運用管理の自動化を実現することを1つの目的とする。
上記課題を解決するために、本発明においては、一態様として、プロセッサを有する複数のノードと、記憶装置とを有し、前記ノードは、プロセッサにより、ホストが前記記憶装置に入出力するデータを処理する計算機システムにおいて、管理部は、ホストが提供するサービスを記載したサービステンプレートと、所定のパラメータにて前記サービスを実行するために前記ノードが要するリソースのリソース量を記載した必要リソース表と、を保持し、前記管理部は、前記サービステンプレート及びパラメータの入力を受け付け、前記必要リソース表を参照し、前記入力されたサービステンプレート及びパラメータの組み合せに基づいて必要リソース量を算出し、前記算出した必要リソース量の条件を充足するノードを選択して、サービステンプレートにかかるサービスを実行させ、前記サービスの実行前と実行中の前記リソースの負荷の変化に基づいて、前記必要リソース表を更新するようにした。
本発明によれば、例えば、負荷を考慮した対象装置の運用管理の自動化を実現することができる。
実施形態1の概要の説明図。 実施形態1にかかる計算機システムの全体構成を示す図。 実施形態1にかかるノードの構成図。 実施形態1にかかるホストの構成図。 実施形態1にかかる計算機システムの論理構成を示す図。 実施形態1にかかるノード内のメモリ上のプログラム及び情報を示す図。 実施形態1にかかる装置ハードウェア構成表に含まれるノードハードウェア情報を示す図。 実施形態1にかかる装置ハードウェア構成表に含まれるノードポートハードウェア情報を示す図。 実施形態1にかかる装置ハードウェア構成表に含まれるドライブハードウェア情報を示す図。 実施形態1にかかる装置ハードウェア構成表に含まれるホストポートハードウェア情報を示す図。 実施形態1にかかる論理構成表に含まれるプール構成情報を示す図。 実施形態1にかかる論理構成表に含まれるボリューム構成情報を示す図。 実施形態1にかかる稼働情報管理表に含まれるボリュームIO量稼働情報を示す図。 実施形態1にかかる稼働情報管理表に含まれるノード性能稼働情報を示す図。 実施形態1にかかるサービステンプレートを示す図。 実施形態1にかかる必要リソース表を示す図。 実施形態1にかかるサービス実行処理を示すフローチャート。 実施形態1にかかる必要リソース表更新処理を示すフローチャート。 実施形態2にかかる計算機システムの機能構成を示す図。 実施形態2にかかるノード内のメモリ上のプログラム及びデータを示す図。 実施形態2にかかる論理構成表にさらに含まれるデータストア構成情報を示す図。 実施形態2にかかる論理構成表にさらに含まれるVM構成情報を示す図。 実施形態2にかかる稼働情報管理表にさらに含まれるVM性能稼働情報を示す図。 実施形態3にかかる計算機システムの全体構成を示す図。 実施形態4にかかるノード内のメモリ上のプログラム及びデータを示す図。 実施形態4にかかるSLA表を示す図。 実施形態4にかかるホスト割り当てリソース表を示す図。 実施形態4にかかるサービス実行処理を示すフローチャート。 実施形態4にかかるサービス実行処理を示すフローチャート。
以下、本発明の好適な実施形態を説明する。以下において、同一又は類似の要素及び処理に同一の符号を付して差分を説明し、重複説明を省略する。また、後出の実施形態では、既出の実施形態との差分を説明し、重複説明を省略する。
また、以下の説明及び各図で示す構成及び処理は、本発明の理解及び実施に必要な程度で実施形態の概要を例示するものであり、本発明に係る実施の態様を限定することを意図する趣旨ではない。また、各実施形態及び各変形例は、本発明の趣旨を逸脱せず、整合する範囲内で、一部又は全部を組合せることができる。
以下において、数字に付加された添え字や枝番号によって区別される符号が付与された類似の要素を、数字のみの符号によって、添え字や枝番号に関係なく総称する。例えば「100a」「100b」や「200-1」「200-2」といった符号が付与された要素を、「100」や「200」といった符号を付与して総称する。また、「XXインターフェース14a」「YYインターフェース14b」といった、数字に添え字や枝番が付加された符号が付与された類似の要素を、「インターフェース14」のように、要素の名称の共通部分と数字のみの符号部分を以って総称する。
また、以下において、各種情報を表(テーブル)形式にて説明するが、情報は表形式に限らず、ドキュメント形式やその他の形式であってもよい。また、表の構成は一例であり、表は適宜統合及び分散できる。また、以下において、各表の項目(カラム)として挙げられているIDや名前は、レコードを区別可能であれば、番号及び文字列の何れでもよい。
また、以下では、「プログラム」を主語として処理を説明する場合がある。プログラムは、プロセッサ(例えばCPU(Central Processing Unit)によって実行されることで、定められた処理を、適宜に記憶資源(例えばメモリ)及び/又は通信インターフェイスデバイス(例えば通信ポート)等を用いながら行うため、処理の主語がプロセッサとされてもよい。プログラムを主語として説明された処理は、プロセッサあるいはそのプロセッサを有する装置が行う処理としてもよい。
また、プログラムを実行するプロセッサを、目的の処理機能を実現する装置として「XXX部」と呼ぶこともできる。また、プロセッサは、処理の一部又は全部を行うハードウェア回路を含んでもよい。プログラムは、プログラムソースから各コントローラにインストールされてもよい。プログラムソースは、例えば、プログラム配布計算機又は計算機が読み取り可能な記憶メディアであってもよい。
[実施形態1]
<実施形態1の概要>
先ず図1を参照して、本発明の実施形態1の概要を説明する。図1は、実施形態1の概要の説明図である。図1に例示する計算機システム1Sは、ノード10a,10bを含んで構成されるストレージのクラスタ1を有する。クラスタ1が有するメモリ12は、ストレージサービス管理プログラム1212、稼働情報取得プログラム1213、装置ハードウェア構成表1221、稼働情報管理表1223、サービステンプレート1224、及び必要リソース表1225を記憶する。ノード10a,10bのそれぞれは、クラスタ1に対してIOを発行するホストへVolume(ボリューム)を提供する。
ステップS1は、稼働情報取得処理である。稼働情報取得プログラム1213は、ステップS1の処理を定期的に実行する。ステップS1では、稼働情報取得プログラム1213は、管理対象の全装置(図1ではノード10a,10b)から稼働情報を収集する。稼働情報は、例えばボリュームの場合はホストとの間のIO数などの時系列情報であり、ノードの場合はCPU使用率、メモリ使用量、使用通信帯域などの時系列情報である。続いて、稼働情報取得プログラム1213は、収集した稼働情報を、稼働情報管理表1223へ履歴として保存する。
ステップS2~S6は、サービス実行処理である。ステップS2では、ストレージサービス管理プログラム1212は、運用管理者hによる管理操作に応じて、サービステンプレート1224から、実行するサービスのテンプレート(処理とその実行順序が記載されたテンプレート)を選択する。
次にステップS3では、ストレージサービス管理プログラム1212は、運用管理者hにより管理端末を介して入力された、ステップS3で選択されたサービステンプレートに対するパラメータ値の入力を受け付ける。パラメータは、サービス実行によって動作するアプリケーション(以下、アプリと呼ぶ)の要件(アプリ要件)を含む。
次にステップS4では、ストレージサービス管理プログラム1212は、ステップS3で選択されたサービステンプレートと、ステップS3で入力されたパラメータに基づいて処理を決定する。次にステップS5では、ストレージサービス管理プログラム1212は、必要リソース表1225に、ステップS3で入力されたパラメータが同一のサービステンプレートが存在すれば、そのサービス実行に必要なリソース情報(必要リソース量)を確認する。
次にステップS6では、ストレージサービス管理プログラム1212は、ステップS6で確認した必要リソース量の条件を充足するノード10を探索し、条件を充足するノード10で、ステップS4で決定した処理を実行(サービス実行)する。図1の例では、処理がボリュームデプロイであり、条件が計算機リソースの充足であり、最も条件が良い(例えば最も負荷が低い)ノード10bにボリュームをデプロイする。
なお、処理は、ストレージボリュームデプロイのほか、プール作成、スナップショット作成、コピーなど、ストレージに係る各種運用操作がある。また、条件には、計算機リソースの充足のほか、例えば処理を複数のノードで行い障害耐性を高めるといった可用性充足がある。
ステップS7~S10は、サービス実行後の必要リソース表更新処理である。ステップS7では、ストレージサービス管理プログラム1212は、稼働情報管理表1223を参照し、サービス実行前後の稼働情報の差分を計算する。
次にステップS8では、ストレージサービス管理プログラム1212は、装置ハードウェア構成表1221を取得する。次にステップS9では、ストレージサービス管理プログラム1212は、ステップS7で計算した稼働情報の差分と装置ハードウェア構成表1221から、サービス実行後の必要リソース量を計算する。次にステップS10では、ストレージサービス管理プログラム1212は、ステップS9で計算した必要リソース量をもとに必要リソース表1225を更新する。
このようにして更新された必要リソース表1225をもとにサービスを実行することで、個々の顧客環境に適し、かつ顧客環境の動的な負荷の変化を考慮して適切な場所で処理を実行できるように運用管理の自動化を実現する。
<実施形態1の計算機システム1Sの全体構成>
図2は、実施形態1にかかる計算機システム1Sの全体構成を示す図である。計算機システム1Sは、クラスタ1と、1以上のホスト2と、管理端末3とを含む。計算機システム1Sにおいて、ホスト2とノード10は、フロントエンドネットワークN1を介して接続される。また、ノード10同士は、バックエンドネットワークN2を介して接続される。また、管理端末3とノード10は、管理ネットワークN3を介して接続される。
なお、フロントエンドネットワークN1、バックエンドネットワークN2、及び管理ネットワークN3は、同一ネットワークでも異なるネットワークでも何れでもよい。また、これらのネットワークは冗長化されていてもよい。また、これらのネットワークは、Ethernet(登録商標、以下同様)、InfiniBand(登録商標、以下同様)、無線の何れでもよい。
クラスタ1は、1以上のノード10を含んで構成される。ノード10は、一般的な汎用サーバで構築されたストレージノードである。
ホスト2は、クラスタ1に対してデータIOを発行する。ホスト2は、ベアメタルサーバでもハイパーバイザが稼働するサーバでもよい。ハイパーバイザが稼働するサーバであれば、ハイパーバイザ上で仮想マシン(VM:Virtual Machine)が動作する。
管理端末3は、クラスタ1内のストレージサービス管理プログラム1212を操作するための端末である。例えば、管理端末3は、ブラウザなどのGUIを介して入力された操作リクエストを、ストレージサービス管理プログラム1212(図6を参照して後述)へ送信する。また、管理端末3は、クラスタ1内のメモリ12に記憶されるストレージサービス管理プログラム1212、稼働情報取得プログラム1213や、各種テーブルを記憶してもよい。
なお、図2では、クラスタ1が、ノード10a,10b,10cを含んで構成される例を示す。また、図2では、ホスト2が、ホスト2a,2bの2つである例を示す。しかし、クラスタ1を構成するノード10の数及びホスト2の数はこれに限らない。
<実施形態1のノード10の構成>
図3は、実施形態1にかかるノード10の構成図である。ノード10は、プロセッサの一例であるCPU(Central Processing Unit)11、記憶部の一例であるメモリ12、Drive(ドライブ)13、及びネットワークI/F14を有する。CPU11及びメモリ12の数は、図示に限らない。Drive13は、HDD(Hard Disk Drive)やSSD(Solid State Drive)、その他の不揮発メモリ(SCM:Storage Class Memory)など何れでもよい。また、図3では、Drive13として、NVMe(登録商標、以下同様)_Drive13a、SAS_Drive13b、SATA_Drive13cの3つを例示するが、ドライブのインターフェース種別及びドライブ数は図示に限らない。
ネットワークI/F14には、FE(Front End)ネットワークI/F14a、BE(Back End)ネットワークI/F14b、及び管理ネットワークI/F14cが含まれる。FEネットワークI/F14aは、ホスト2と通信するためのフロントエンドネットワークN1と接続するインターフェースである。BEネットワークI/F14bは、ノード10間で通信するためのバックエンドネットワークN2と接続するインターフェースである。管理ネットワークI/F14cは、管理端末3と通信するための管理ネットワークN3と接続するためのインターフェースである。
なお、ネットワークI/F14は、Fibre Channel、Ethernet、InfiniBandの何れのインターフェースでもよい。ネットワークI/F14は、ネットワーク毎に設けられていても、共通のインターフェースとして設けられていてもよい。
<実施形態1のホスト2の構成>
図4は、実施形態1にかかるホスト2の構成図である。ホスト2は、CPU21、メモリ22、Drive(ドライブ)23、及びネットワークI/F24を有する。CPU21及びメモリ22の数は、図示に限らない。Drive23は、HDDやSSD、その他の不揮発メモリなど何れでもよい。また、図4では、Drive23として、NVMe_Drive23a、SAS_Drive23b、SATA_Drive23cの3つを例示するが、ドライブのインターフェース種別及びドライブ数は図示に限らない。
ネットワークI/F24には、FEネットワークI/F24a及び管理ネットワークI/F24cが含まれる。FEネットワークI/F24aは、ホスト2と通信するためのフロントエンドネットワークN1と接続するインターフェースである。管理ネットワークI/F24cは、管理端末3と通信するための管理ネットワークN3と接続するためのインターフェースである。
<実施形態1の計算機システム1Sの論理構成>
図5は、実施形態1にかかる計算機システム1Sの論理構成を示す図である。図5に示す計算機システム1Sの論理構成例において、Drive(Drive10a1,10b1,10c1)のみが各ノード10(10a,10b,10c)に物理的に紐付けられており、Drive以外は論理的なリソースである。Pool(10a2,10b2)より上の階層は、ストレージサービス管理プログラム1212(図6を参照して後述)から見た論理構成を示している。
図5に示すように、1つのクラスタ1内に1つ以上のPoolがある。Poolは、ノード10を跨いで設けられてもノード10内に閉じて設けられても何れでもよい。また、Poolは、管理容易化のために階層構造になっていてもよい。階層構造としては、ノード10内に閉じるPoolを1つ以上組み合わせてノード10を跨るPoolとする例がある。
Poolの物理記憶領域は、Driveから割り当てられる。Volume(Volume10a3,10b3,10c3)は、Poolから切り出される。Volumeは、ノード10内に閉じてもよいし、ノード10を跨ってもよい。なお、Poolを定義せず、Volumeに1つ以上のDriveの物理記憶領域を直接割り当ててもよい。
ホスト2には、VM(Virtual Machine)を管理するためのHypervisorが動作するサーバと、Volumeを直接マウントするベアメタルサーバとがある。図5の例では、ホスト2aが、Hypervisorが動作するサーバであり、ホスト2bがベアメタルサーバである。
Hypervisorが動作するサーバは、マウントしたVolumeを論理記憶領域として利用するDatastoreを作成する。図5の例では、ホスト2aは、ノード10aのVolume10a3を論理記憶領域として利用するDatastore2a1と、ノード10bのVolume10b3を論理記憶領域として利用するDatastore2a2を作成する。
ベアメタルサーバは、サーバ上のOS(Operating System)がVolumeを論理記憶領域としてマウントする。図5の例では、ホスト2bは、サーバ上のOSがノード10cのVolume10c3を論理記憶領域としてマウントする。
ホスト2aは、DatastoreからVMをデプロイする。図5の例では、Datastore2a1からVM2a11をデプロイし、Datastore2a2からVM2a21,2a22をデプロイする。
なお、VolumeとDataStoreとVMの数の関係は、特に限定されるものではなく、任意の正整数x,y,zについてVolume:Datastore:VM=x:y:zである。VolumeとDataStoreとVMの関係は、後述するように、メモリ12内のストレージサービス管理プログラム1212と、論理構成表1222によって管理される。
<実施形態1のノード10内のメモリ12上のプログラム及びデータ>
図6は、実施形態1にかかるノード10内のメモリ12上のプログラム及び情報を示す図である。メモリ12には、ストレージIO制御プログラム1211、ストレージサービス管理プログラム1212、及び稼働情報取得プログラム1213が記憶されている。また、メモリ12には、装置ハードウェア構成表1221、論理構成表1222、稼働情報管理表1223、サービステンプレート1224、及び必要リソース表1225が記憶されている。
なお、図6に示すようにメモリ12に記憶される各種プログラム及び情報は、クラスタ1を構成する何れか1つのノード10のメモリ12に記憶されていても、クラスタ1を構成する複数のノード10のメモリ12に、同一内容が配置されても分散配置されてもよく、限定されない。
ストレージIO制御プログラム1211は、ストレージコントローラを実現するプログラムであり、ホスト2との間のIOを制御する。すなわちホスト2に提供するVolumeに対するRead/WriteのIOを制御する。
ストレージサービス管理プログラム1212は、ストレージサービス全般の管理機能を提供するプログラムである。すなわち、ストレージサービス管理プログラム1212は、ストレージ管理機能(ボリューム作成削除、ボリュームパス設定、コピー作成削除機能等)と、サービス管理機能(サービステンプレート1224に記載された処理を解釈し実行する機能等)を提供する。
稼働情報取得プログラム1213は、ストレージIO制御プログラム1211と連携して、ノード10及びVolumeの稼働情報(IOPS、Latency、帯域幅、CPU利用率、メモリ利用率等)を取得し、保存するプログラムである。
装置ハードウェア構成表1221は、ノード10に関連するハードウェア情報としてCPU、メモリ、FE/BEポート、ドライブの情報を示し、ホスト2に関連するハードウェア情報としてクラスタ1と接続するポートの情報を示す。装置ハードウェア構成表1221には、ノードハードウェア情報1221a、ノードFE/BEポートハードウェア情報1221b、ドライブハードウェア情報1221c、及びホストポートハードウェア情報1221dが含まれる。
ノードハードウェア情報1221aは、図7Aに示すように、クラスタ1を構成するノード10(ノードID)毎に、CPU11のコア数、周波数、及び処理単価と、メモリ12の容量及び処理単価とを管理する。ノードFE/BEポートハードウェア情報1221bは、ノード10が有するポートの情報を管理し、図7Bに示すように、ID毎に、ノードID、FE/BEのネットワーク種別、プロトコル、速度、及び処理単価を管理する。
ドライブハードウェア情報1221cは、図7Cに示すように、ドライブID毎に、ノードID、ドライブ種別、容量、速度、Latency、及び処理単価を管理する。
ホストポートハードウェア情報1221dは、図7Dに示すように、ホスト2のInitiatorのID毎に、ホストID、プロトコル、速度、及び処理単価を管理する。
処理単価情報は、「1つのIOを処理するために必要な時間又はその計算モデル」を示し、ハードウェア毎に異なる。例えばHDDの場合の処理単価は、「シークタイム+回転待ち時間+データ転送時間」等でモデル化される。ドライブのIOPS(1秒当たりの処理)は、処理単価の逆数から理論上計算できる。本実施形態では、この処理単価情報は、事前にハードウェア毎に測定又は計算したモデルを用いるが、ユーザ入力等により設定及び変更可能としてもよい。
論理構成表1222は、リソース毎にストレージの論理リソースを示す情報である。ここでは代表的なものとして、論理リソースとして、プール及びボリュームの例を示す。例えば、論理構成表1222には、プール構成情報1222a及びボリューム構成情報1222bが含まれる。
プール構成情報1222aは、図8Aに示すように、プールID、名前、プールの全容量、全空き容量、プールへ物理記憶領域を割り当てるドライブのID、プールを構成するノードIDとそのノード毎の物理容量、及び空き容量を管理する。
ボリューム構成情報1222bは、図8Bに示すように、ボリュームID、名前、容量、ブロックサイズ、ボリュームが属するプールのID、IO接続可能なホスト2のInitiator情報を管理する。Initiator情報が指定されていない場合は、ホスト2からのアクセス設定が完了していない状態である。
稼働情報管理表1223は、ボリュームやノード10などの稼働情報を時系列で管理する。ここでは稼働情報管理表1223が、ボリュームIO稼働情報1223a及びノード性能稼働情報1223bを含む例を説明する。
図9Aでは、ボリュームIO稼働情報1223aとして、ボリュームID毎に、5秒毎のIO数(Read IO回数、Write IO回数)を記載している。しかし、IO数に限らず、レイテンシ(応答時間)や転送量であってもよい。また、Read/Writeも、Sequential R/W及びRandom R/Wの区別があってもよい。時刻も任意の時間間隔でよい。また、図9Aでは、瞬時値を記しているが,IOPSのように時刻間の平均値を管理してもよい。
また、図9Bでは、ノード性能稼働情報1223bとして、ノードID毎に、CPU利用率、メモリ利用量、及び通信帯域などのメトリックに対する5秒毎の量を記載している。しかし、メトリックはこれらに限らず、CPU11が余力としてさらに処理可能なIO量(CPU残り利用率(100%-CPU利用率)と単位時間にRead/Write可能なIO数から計算)や、メモリ利用率等の情報を保持してもよい。また、メトリックとして、他にポートのデータ転送量、ドライブの稼働率などの情報を保持してもよい。
サービステンプレート1224は、サービスと、サービスを実現する構成の作成のための一連の処理及び順序を記載したテンプレートである。サービステンプレート1224は、図10に示すように、テンプレートID、テンプレートの名前、処理内容、アプリ要件、その他構成を作成するために必要なその他入力情報などを含む。なお、サービス及びアプリは、ストレージを含んだ計算機システム1Sの用途の一例である。
処理内容は、サービスを実現するための構成の作成のための処理を実行順で記載した疑似コードであり、図10では一例を記載している。アプリ要件は、該当サービスを実現するための規模、可用性などの、ストレージ装置構成とは直接関係しないアプリの要件を設定する。ただし、一連の処理を自動で実現するためにサービステンプレート1224を利用する場合は、ストレージ装置構成を示すパラメータを入力する場合もある。アプリ要件は、1つだけでなく複数個入力してよい。アプリ要件は、テンプレートの種類(処理内容に記載されている一連の処理)によって決まる。
その他入力情報は、アプリ要件だけでは決定されない必須入力情報を示し、図10では“Initiators”の1つのみを示すが、複数個入力してよい。
図10に示す例は、“メールサーバアプリA向け”で必要な構成をデプロイするための操作のテンプレートを示す。メールを利用するユーザ数の規模により必要となるデータ領域とログ領域のサイズと必要なボリューム数が異なるため、アプリ要件としてメールサービスのユーザ数の入力が必要になる。また、図10は、構成を作成するためにさらに必要な、どのホスト2とパス設定をするかを示すInitiator情報を、その他入力情報として入力する必要があることを示している。
必要リソース表1225は、サービステンプレート1224のテンプレートIDとパラメータ(アプリ要件)の組み合わせ毎に、必要とされるリソース量を保持する情報である。必要リソース表1225は、構成のデプロイ又はデプロイ変更時に、適所に構成をデプロイするために利用される。必要リソース表1225は、サービスをデプロイするために必要なリソース量を示し、ストレージサービス管理プログラム1212により管理される。必要リソース表1225は、図11に示すように、必要リソースID毎に、テンプレートID、名前、アプリ要件、及び必要リソース量の対応関係を示す。
アプリ要件は、該当アプリを実行するための要件となる情報であり、図10で示したアプリ要件と同様の情報である。図11の例では、必要リソースID:1のレコードには、メールサーバアプリAの利用ユーザ数を意味する“100”がアプリ要件に設定されている。アプリ要件には、ユーザ数のほか、複数の情報を含めてよい。
必要リソース量は、該当アプリで設定されたアプリ要件を満たすために必要なハードウェアの要件を示す。必要リソースID:1の場合は、CPU利用率が10%必要、メモリが10GB必要、ということを示している。すなわち、メールサーバアプリAをユーザ数100でデプロイする場合は、CPU10%、メモリ10GBの空きリソースのあるノード10にデプロイすべき、と判断される。
なお、図11の例では、全てのノード10のハードウェアスペックが均質として、必要リソース表1225において、各必要リソースIDに対して、必要リソース量が1行だけの場合を示している。しかし、これに限らず、各必要リソースIDに対して、物理リソース毎に行を分けて複数行の必要リソース量を持ち、各ノードのハードウェア毎に必要リソース量を記載してよい。必要リソース表1225における、同一の必要リソースIDに対する複数行の必要リソース量に基づいて、ノード10を分散させて複数のボリュームをデプロイすることもできる。
また、同じアプリをデプロイするテンプレートであっても、アプリ要件が異なる場合は、必要リソース量が異なってくるため、別の必要リソースIDを設定する。
そして、必要リソース表1225は、図13を参照して後述する必要リソース量更新処理において、構成のデプロイ及び変更というサービス実行後に必要リソースの見直しを行った際、見直し結果を反映するために更新される。必要リソース表1225の更新時において、必要リソース表1225における未登録のアプリとアプリ要件の組み合わせの場合には、レコードを新規追加する。
なお、必要リソース表1225は、図13に示す必要リソース量更新処理におけるサービス実行後に更新されるが、運用当初ではアプリとアプリ要件の組み合わせに対応する該当レコードが存在しない。このため、必要リソース表1225に、一般的に想定される必要リソース量の値を予め設定したレコードを用意しておいてもよい。
<実施形態1の処理フロー>
実施形態1における処理フローは、サービス実行処理と、サービス実行後の必要リソース表更新処理の2つの処理フローに分かれる。サービス実行処理及びサービス実行後の必要リソース表更新処理は、稼働情報取得プログラム1213によって、管理対象の全装置から稼働情報が定期的に収集され、稼働情報管理表1223に保存されていることを前提とする。
<実施形態1のサービス実行処理>
先ず、サービス実行処理について説明する。図12は、実施形態1にかかるサービス実行処理を示すフローチャートである。
先ずステップS11では、ストレージサービス管理プログラム1212は、管理端末3を介してユーザにより入力されたサービステンプレート選択(テンプレートID)及びパラメータ(アプリ要件とその他項目情報)を受け付ける。
次にステップS12では、ストレージサービス管理プログラム1212は、ステップS11で選択されたテンプレートと、入力されたパラメータの値から処理を決定する。次にステップS13では、ストレージサービス管理プログラム1212は、必要リソース表1225に、ステップS11で入力されたものと同一のサービステンプレートとアプリ要件の組み合わせのレコードが存在するか否かを確認する。サービステンプレートとアプリ要件の組み合わせは、完全一致でなくてもよく、事前に決められた範囲内の値であれば同一とみなしてもよい。
ストレージサービス管理プログラム1212は、必要リソース表1225に、ステップS11で入力されたものと同一のテンプレートIDとアプリ要件の組み合わせのレコードが存在する場合(ステップS14Yes)、ステップS15へ処理を移し、存在しない場合(ステップS14No)、ステップS19へ処理を移す。
ステップS15では、ストレージサービス管理プログラム1212は、ステップS14で同一と判断した必要リソース表1225のレコードに記載されている必要リソース量の条件を満足するノード10を探索する。次にステップS16では、ストレージサービス管理プログラム1212は、必要リソース量の条件を満足するノード10が存在するか否かを判定する。ストレージサービス管理プログラム1212は、必要リソースの条件を満足するノード10が存在する場合(ステップS16Yes)、ステップS17へ処理を移し、存在しない場合、ステップS18へ処理を移す。
なお、アプリ要件が、N倍(又は1/N倍)すれば一致するように比例関係にある場合は、N倍(又は1/N倍)の必要リソースが必要となるとみなしてもよい。例えば、ステップS11で入力されたサービステンプレートがメールサーバアプリA向け(テンプレートID:1)でアプリ要件がUserNum(ユーザ数)=300であれば、図11に示す必要リソース表1225において、必要リソースID:1、テンプレートID:1、・・・、アプリ要件:UserNum=100に対応する必要リソース量(CPU:10%、メモリ:10GB)に、アプリ要件の倍数N=3を乗じたCPU:30%、メモリ:30GBを、ステップS15のノード探索の条件とする必要リソース量としてもよい。
または、必要リソース表1225のレコードを例えばクラスタリングなどによりグループ化しておく。そして、ステップS13では、ステップS11で選択されたテンプレート及び入力されたパラメータの値の組み合わせと所定以上の類似度を有するテンプレート及びパラメータのグループの必要リソース量を、ステップS15のノード探索の条件とする必要リソース量としてもよい。
ステップS17では、ストレージサービス管理プログラム1212は、必要リソースの条件を満足する何れかのノード10でサービスを実行する。一方、ステップS18では、ストレージサービス管理プログラム1212は、必要リソースの条件を満足するノード10が存在しない旨を、管理端末3を介してユーザへ通知する。
またステップS19では、ストレージサービス管理プログラム1212は、任意のノード10でサービスを実行する。
サービス実行処理の結果、サービステンプレート1224に記載されている一連の処理が実行される。初回実行時に必要リソース表1225においてテンプレートID及びアプリ要件の組み合わせに該当する必要リソース量の情報が存在しない場合は、任意のノード10で実行される。2回目以降は、必要リソース表1225における必要リソース量の情報に基づいて、必要リソースの条件を充足する適切なノード10で処理を実行することが可能となる。
<実施形態1の必要リソース表更新処理>
次に、必要リソース表更新処理について説明する。図13は、実施形態1にかかる必要リソース表更新処理を示すフローチャートである。必要リソース表更新処理は、前回のサービス実行後の運用の負荷傾向を見るため、前回のサービス実行から一定時間経過してから次のサービス実行までの間に実行される。
先ずステップS21では、ストレージサービス管理プログラム1212は、稼働情報管理表1223を参照し、稼働情報を取得する。例えば、ステップS21で取得する稼働情報は、サービス実行前を基準とした過去24時間分の稼働情報と、サービス実行後を基準とした過去24時間分の稼働情報である。
次にステップS22では、ストレージサービス管理プログラム1212は、サービス実行前とサービス実行後の稼働情報の差を計算する。
次にステップS23では、ストレージサービス管理プログラム1212は、装置ハードウェア構成表1221に含まれる各ハードウェア情報を取得する。次にステップS23で取得したハードウェア情報とサービス実行前後で変動した稼働情報の値から、今回のサービス実行による影響(サービス実行後に必要なリソース量)を再計算する。
ここで、サービス実行の影響の計算は、一般的な性能見積もり計算方法を利用する。一例として、過去24時間の平均IOPSの最大値増加数を見る。サービス処理実行前後で増加した平均IOPSと、図7AのCPUの処理単価から、必要なCPU利用率が算出できる。また、実際に増加したCPU利用率も取得し、算出されたCPU利用率と乖離がないかチェックする。このとき、乖離があれば、高い方のCPU利用率を採用する。同様にメモリやドライブの処理単価から必要な物理リソースを計算する。
より精度を上げるためには、時系列で必要リソース量を保存しておき、影響計算において、一定時間(例えば1時間単位)といった時間刻みで必要リソース量を再計算する。これにより、特定のアプリの時刻や日単位でのワークロード特性を考慮したノード配置が可能となる。
なお、リソース量を見積もるための計算方法(IOの処理単価に基づく見積り)や計算対象(IOPSの算出起点)は、限定されるものではなく、例えば単純なCPU利用率等の最大値増加量を見たり、計算対象をデータ転送量起点としてIOPSと図8Bに記載のブロックサイズから計算する方法などを用いたりしてもよい。
次にステップS25では、ストレージサービス管理プログラム1212は、必要リソース表1225に、実行されたサービス処理と同一のサービステンプレート(テンプレートID)とアプリ要件の組み合わせのレコードが存在するか否かを確認する。
ストレージサービス管理プログラム1212は、必要リソース表1225に、実行されたサービス処理と同一のテンプレートIDとアプリ要件の組み合わせのレコードが存在する場合(ステップS26Yes)、ステップS27へ処理を移し、存在しない場合(ステップS26No)、ステップS28へ処理を移す。
ステップS27では、ストレージサービス管理プログラム1212は、ステップS26で存在するとされた必要リソース表1225の該当レコードの必要リソース量の値を更新する。必要リソース表1225の更新方法は、単純に上書きする方法や、前回と今回の計算の平均値をとる方法、再計算された必要リソース量または過去に更新された必要リソース表1225を履歴として保存しておき、履歴の学習結果に基づいて必要リソース表1225を更新するといった任意の手段であってもよい。履歴の学習結果に基づいて必要リソース表1225を更新することで、極端に外れた値は除外するなど、必要リソース量の精度を向上させることができる。
一方ステップS28では、ストレージサービス管理プログラム1212は、今回実行したサービステンプレートと、アプリ要件と、今回算出した必要リソース量の各値を持つ必要リソース表1225の行を新規追加する。
本実施形態によれば、対象装置の運用管理操作において、アプリ要件などのパラメータさえ入力すれば、アプリやサービスの実行基盤や負荷状態を管理者が把握しなくても、個々の顧客環境により適した、負荷バランスが考慮された構成の作成や変更を行うことができる。
[実施形態2]
実施形態1では、ストレージのクラスタ1が、Hypervisor上にDatastoreとVMがマウントされたホスト2を含まない構成を説明した。これに対し、実施形態2では、HCI(Hyper Converged Infrastructure)構成を採用し、ストレージのクラスタ1Bが、Hypervisor上にDatastoreとVMがマウントされたホストを内包する構成について説明する。
<実施形態2の計算機システム2Sの機能>
図14は、実施形態2にかかる計算機システム2Sの機能構成を示す図である。図14に示すように、計算機システム2Sは、クラスタ1Bを含む。図14において、ホスト及び管理端末の図示を省略している。
クラスタ1Bは、ノード10Ba、10Bb、及び10Bcを含む。ノード10Baは、Drive10a1、Pool10a2、Volume10a3、Datastore10a4、及びVM10a5を含む。ノード10Bbは、Drive10b1、Pool10b2、Volume10b3、Datastore10b4、VM10b5、及びVM10b6を含む。ノード10Bcは、Drive10c1、Pool10b2、Volume10c3、Datastore10c4、VM10c5、及びVM10c6を含む。Pool10b2は、ノード10Bb及びノード10Bcに跨って設けられる。なお、VMは、Volumeと同一のノードに確保されても、Volumeと異なるノードに確保されても何れでもよい。
<実施形態2のメモリ12上のプログラム及びデータ>
図15は、実施形態2にかかるノード10B内のメモリ12上のプログラム及びデータを示す図である。実施形態1と比較して、実施形態2では、メモリ12上に、さらにVM管理プログラム1214が記憶されている。
VM管理プログラム1214は、VMの作成及び削除など、VMに関する操作を実行すると共に、VMの稼働情報を管理するプログラムである。VM管理プログラム1214は、ストレージサービス管理プログラム1212がサービスを実行する過程でVM操作を行う場合に呼び出される。また、VM管理プログラム1214は、稼働情報取得プログラム1213から受け付けたVMに関する稼働情報の問い合わせに対して、稼働情報を返す。
また、実施形態1と比較して、実施形態2では、論理構成表1222にさらにデータストア構成情報1222c及びVM構成情報1222dが含まれている。データストア構成情報1222cは、図16Aに示すように、データストアID、データストアの名前、容量、及びデータストアが利用するVolumeのIDを管理する。VM構成情報1222dは、図16Bに示すように、VM_ID、VMの名前、容量、及びVMが利用するデータストアのIDを管理する。
また、実施形態2では、稼働情報管理表1223にさらにVM性能稼働情報1223cが含まれている。VM性能稼働情報1223cは、図17に示すように、VMのID毎に、IOPS及びLatencyなどのメトリックに対する5秒毎の量を管理する。実施形態1と同様、時刻は任意の時間間隔でよい。なお、メトリックは、図17の図示のものに限らない。
本実施形態によれば、ストレージのクラスタが、Hypervisor上にDatastoreとVMがマウントされたホストを内包するHCI構成においても、VMを考慮した必要リソース量をもとに、実施形態1と同様に、個々の顧客環境により適した、負荷バランスが考慮された構成の作成や変更を行うことができる。
[実施形態3]
実施形態3は、実施形態1及び2と比較して、各ノードのメモリ12に記憶される各種プログラム及びデータが、外部の管理サーバ3Cに記憶される点が異なる。また、管理サーバ3Cが、複数のストレージクラスタを管理対象とし、またクラスタ構成でないストレージシステムも管理対象とする点が異なる。
図18は、実施形態3にかかる計算機システム3Sの全体構成を示す図である。管理サーバ3Cは、プログラムを実行するCPUとメモリ(不図示)を有する。管理サーバ3Cは、そのメモリ上に、図6に示したメモリ12上のプログラム及び情報のうち、ストレージIO制御プログラム1211を除く、ストレージサービス管理プログラム1212、稼働情報取得プログラム1213、装置ハードウェア構成表1221、論理構成表1222、稼働情報管理表1223、サービステンプレート1224、及び必要リソース表1225を記憶する。また、管理サーバ3Cは、クラスタ及びストレージシステム毎に、装置ハードウェア構成表1221、論理構成表1222、稼働情報管理表1223、サービステンプレート1224、及び必要リソース表1225を管理する。これらの表には、例えば、クラスタ又はストレージシステムを識別するIDを格納する列が追加される。
本実施形態によれば、複数のクラスタ及びストレージシステムが管理サーバにより管理される構成であっても、クラスタ毎に、実施形態1と同様に、個々の顧客環境により適した、負荷バランスが考慮された構成の作成や変更を行うことができる。
[実施形態4]
実施形態4では、実施形態1と比較して、アプリ要件だけでなく、実行するユーザ毎にSLAの要件(以下、SLA要件という)が設定される例を説明する。SLA(Service Level Agreement)は、一般的に、サービス提供事業者とユーザとの間で決定される、遵守すべきサービスのレベルである。
本実施形態では、SLAの情報をもとに実行する制御の例として、ユーザ毎にSLA要件とユーザが利用するホストとを対応付け、SLA要件を遵守するようにホスト毎にリソースを割り当てる。これにより、サービスのレベルが保証される。割り当てるリソースは、物理的なリソース(CPUコア、メモリ、ドライブ、ポート)でもよいし、仮想的なリソースであってもよい。仮想的なリソースとは、物理的なリソースを仮想的な世界にマッピングし分割したリソースであり、物理的なリソースと仮想的なリソースとのマッピング情報が必要である。本実施形態では、簡単のために、物理的なリソースを割り当てる例を示す。
図19は、実施形態4にかかるノード内のメモリ12上のプログラム及びデータを示す図である。図6と比較して、メモリ12上に、SLA表1226及びホスト割り当てリソース表1227がさらに記憶されている点が異なる。
<SLA表1226>
図20は、実施形態4にかかるSLA表1226を示す図である。SLA表1226は、SLAを保証する単位であるユーザ毎のSLAの情報を表し、ストレージサービス管理プログラム1212によって管理される。SLA表1226は、SLAの識別子となるSLA_ID、ユーザID、ユーザ名、テンプレートID、ユーザが利用するホストのID、SLA値を含む。ホストIDは、1つのホストIDに限らず、複数のホストIDを持ってもよい。SLA値は、ユーザが利用するサービスで遵守されるべきサービスのレベルを示す。
例えば図20に示す例では、SLA_ID:1のレコードは、テンプレートID:1、ホストID:1及び2のホストを利用するユーザID:1には、IOPSが100以上であり、Latencyが50msec以内であることが保証されることを示す。
<ホスト割り当てリソース表1227>
図21は、実施形態4にかかるホスト割り当てリソース表1227を示す図である。ホスト割り当てリソース表1227は、ストレージサービス管理プログラム1212によって管理され、ホスト毎に割り当てるリソースを示す。本実施形態では、簡単のために、物理リソースを割り当てる例を示すが、仮想リソースを管理し、その仮想リソースを割り当ててもよい。
ホスト割り当てリソース表1227は、ホストの識別子となるホストID、CPUコアの識別子となるCPUコアID、メモリの識別子となるメモリID、FEポートの識別子となるFEポートID、BEポートの識別子となるBEポートID、Driveの識別子となるドライブIDなどの値を持つ。
図21の例では、1レコードに対して各列の値を1つずつ持つ例を示しているが、これに限らず、各列についてそれぞれ複数の値を持ってもよい。また、同一リソースを異なるホストIDのホストに同時に割り当ててもよい。また、ホスト割り当てリソース表1227において、各ホストIDに対して各列に該当する全てのリソースが割り当てられる必要はなく、設定されず空欄があってもよい。
<実施形態4のサービス実行処理>
以下、実施形態4のサービス実行処理について説明する。図22A及び図22Bは、実施形態4にかかるサービス実行処理を示すフローチャートである。
先ずステップS31では、ストレージサービス管理プログラム1212は、管理端末3を介してユーザにより入力されたサービステンプレート選択(テンプレートID)、パラメータ(アプリ要件とその他項目情報)、利用するホストID、及びSLA値を受け付ける。ストレージサービス管理プログラム1212は、受け付けたテンプレートID、利用するホストID、及びSLA値に基づいてSLA表1226を更新する。なお、SLA表1226は、ユーザ毎に事前に設定されていてもよい。
次にステップS32では、ストレージサービス管理プログラム1212は、SLA表1226のSLA値を保証するために必要なリソース量を計算し、ホスト割り当てリソース表1227において未割り当てのリソースの中に、計算した必要リソース量を割り当て可能なノード及びリソースが存在するか否かを探索する。ステップS32において、SLA表1226のSLA値から必要なノード及びリソース量を計算する方法は、実施形態1の図13のステップS24のサービス影響の算出で用いた一般的な必要性能見積もり方式を利用する。例えば、SLAのうちIOPS:100を保証したい場合には、IOPSの逆数からCPUの処理単価を計算し、空きのあるCPUがあるかを探索する。同様にメモリ、ポート、ドライブについても処理単価を計算し、必要リソースを見積もる。
次にステップS33では、ストレージサービス管理プログラム1212は、ステップS22の探索の結果、割り当て可のノード及びリソースが存在するか否かを判定する。ストレージサービス管理プログラム1212は、割り当て可のノード及びリソースが存在する場合(ステップS33YES)にステップS24へ処理を移し、割り当て可のリソースが存在しない場合(ステップS33NO)に図22BのステップS43へ処理を移す。
次にステップS34では、ストレージサービス管理プログラム1212は、ステップS33で存在すると判定された割り当て可のリソース及びノードを、利用候補として記憶領域に一時記憶する。
ステップS34に続くステップS35、S36、及び図22BのステップS37は、それぞれ図12のステップS12、S13、及びS14と同様である。
図22BのステップS38では、ストレージサービス管理プログラム1212は、ステップS27で同一と判断した必要リソース表1225のレコードに記載されている必要リソース量の条件を満足するノード10及びリソースを探索する。次にステップS39では、ストレージサービス管理プログラム1212は、必要リソース量の条件を満足するノード10及びリソースが存在するか否かを判定する。ストレージサービス管理プログラム1212は、必要リソースの条件を満足するノード10及びリソースが存在する場合(ステップS29Yes)、ステップS40へ処理を移し、存在しない場合、ステップS43へ処理を移す。
ステップS40では、ストレージサービス管理プログラム1212は、ステップS29で存在すると判定された条件を満足するノード及びリソースが、ステップS34で一時記憶した利用候補に存在するか否かを判定する。ストレージサービス管理プログラム1212は、利用候補に存在する場合(ステップS30YES)にステップS41へ処理を移す。一方、ストレージサービス管理プログラム1212は、利用候補に存在しない場合(ステップS30NO)にステップS43へ処理を移す。
ステップS41では、ストレージサービス管理プログラム1212は、ホスト割り当てリソース表1227において、ユーザが利用するホストに対してステップS33で割り当て可と判定されたノード及びリソースの情報を追加する。次にステップS42では、ストレージサービス管理プログラム1212は、ステップS41でホスト割り当てリソース表1227に追加したノード及びリソースの情報に従って、該当ノードで該当リソースを割り当てるように、サービスを実行する。リソースが、ホスト毎に固定で割り当てられることで、SLAの保証精度を高めることができる。
他方、ステップS43では、ストレージサービス管理プログラム1212は、条件を充足するノード及びリソースが存在しない旨をユーザへ通知する。ステップS42又はS43が終了すると、ストレージサービス管理プログラム1212は、実施形態4のサービス実行処理を終了する。
なお、必要リソース表更新処理は、実施形態と同様であるため、説明を省略する。
本実施形態では、アプリ要件に基づく必要リソース量と、SLAを保証するための必要リソース量の両方の条件を充足するかを検証し、両方の条件を充足するリソースをホストに割り当てる。アプリ要件に基づく必要リソース量の条件が無い場合には、SLAを保証するための必要リソース量の条件を充足するリソースを割り当てる。
よって、本実施形態によれば、SLA値をもとにQoS(Quality of Service)やキャッシュメモリ論理分割機能などの設定を実施することができるため、計算機システムの運用において、顧客に対して性能保証をしつつ、実施形態1と同様に、個々の顧客環境により適した、負荷バランスが考慮された構成の作成や変更を行うことができる。
なお、本発明は上記した実施形態に限定されるものではなく、様々な変形例を含む。例えば、上記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、矛盾しない限りにおいて、ある実施形態の構成の一部を他の実施形態の構成で置き換え、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、構成の追加、削除、置換、統合、又は分散をすることが可能である。また実施形態で示した構成及び処理は、処理効率又は実装効率に基づいて適宜分散、統合、又は入れ替えることが可能である。
1S,2S,3S:計算機システム、1,1B:クラスタ、2,2a,2b:ホスト、3:管理端末、3C:管理サーバ、10,10a,10b,10c,10B,10Ba,10Bb,10Bc:ノード、11:CPU、12:メモリ、13:Drive、1224:サービステンプレート、1225:必要リソース表、1226:SLA表、1227:ホスト割り当てリソース表

Claims (6)

  1. プロセッサを有する複数のノードと、記憶装置とを有し、
    前記ノードは、プロセッサにより、ホストが前記記憶装置に入出力するデータを処理する計算機システムにおいて、
    管理部は、ホストが提供するサービスを記載したサービステンプレートと、所定のパラメータにて前記サービスを実行するために前記ノードが要するリソースのリソース量を記載した必要リソース表と、を保持し、
    前記管理部は、
    前記サービステンプレート及びパラメータの入力を受け付け、
    前記必要リソース表を参照し、前記入力されたサービステンプレート及び前記入力されたパラメータと、レコードをグループ化した前記必要リソース表におけるサービステンプレート及びパラメータとの類似度を計算し、該類似度が所定以上である該サービステンプレート及び該パラメータの組み合せにかかる必要リソース量を用いて、前記入力されたサービステンプレート及び前記入力されたパラメータの必要リソース量を算出し、
    前記算出した必要リソース量の条件を充足するノードを選択して、サービステンプレートにかかるサービスを実行させ、
    前記サービスの実行前と実行中の前記リソースの負荷の変化に基づいて、前記必要リソース表を更新する
    ことを特徴とする計算機システム。
  2. 請求項1に記載の計算機システムにおいて、
    前記管理部は、
    前記サービスの実行前と実行中の前記リソースの負荷の変化を記録し、記録した前記リソースの負荷の変化を学習して前記必要リソース表を更新する
    ことを特徴とする計算機システム。
  3. 請求項1に記載の計算機システムにおいて、
    前記管理部は、
    さらに、前記サービスに係るSLA(ServiceLevelAgreement)に基づいて、前記必要リソース量を算出する
    ことを特徴とする計算機システム。
  4. 請求項1に記載の計算機システムにおいて、
    前記ノードの上で前記サービスにかかるホストの処理を行うハイパーコンバージドインフラストラクチャ構成である
    ことを特徴とする計算機システム。
  5. 請求項1に記載の計算機システムにおいて、
    複数のノードで構成されるストレージクラスタを複数と、前記管理部を有する管理サーバとを含み、
    前記管理部は、
    前記ストレージクラスタ毎に前記必要リソース表を保持し、
    前記ストレージクラスタ毎の前記必要リソース表を参照し、前記ストレージクラスタ毎に受け付けた前記入力されたサービステンプレート及び前記入力されたパラメータの組み合せに基づいて必要リソース量を算出し、
    前記算出した必要リソース量の条件を充足するノードを前記ストレージクラスタ毎に選択し、
    前記ストレージクラスタ毎に選択したノードで、前記ストレージクラスタ毎に受け付けた前記選択されたサービステンプレートに記載されたサービスを実行する
    ことを特徴とする計算機システム。
  6. プロセッサを有する複数のノードと、記憶装置とを有し、
    前記ノードは、プロセッサにより、ホストが前記記憶装置に入出力するデータを処理する計算機システムの運用管理方法において、
    管理部は、ホストが提供するサービスを記載したサービステンプレートと、所定のパラメータにて前記サービスを実行するために前記ノードが要するリソースのリソース量を記載した必要リソース表と、を保持し、
    前記管理部が、
    前記サービステンプレート及びパラメータの入力を受け付け、
    前記必要リソース表を参照し、前記入力されたサービステンプレート及び前記入力されたパラメータと、レコードをグループ化した前記必要リソース表におけるサービステンプレート及びパラメータとの類似度を計算し、該類似度が所定以上である該サービステンプレート及び該パラメータの組み合せにかかる必要リソース量を用いて、前記入力されたサービステンプレート及び前記入力されたパラメータの必要リソース量を算出し、
    前記算出した必要リソース量の条件を充足するノードを選択して、サービステンプレートにかかるサービスを実行させ、
    前記サービスの実行前と実行中の前記リソースの負荷の変化に基づいて、前記必要リソース表を更新する
    ことを特徴とする計算機システムの運用管理方法。
JP2020103539A 2020-06-16 2020-06-16 計算機システム及び計算機システムの運用管理方法 Active JP7106603B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020103539A JP7106603B2 (ja) 2020-06-16 2020-06-16 計算機システム及び計算機システムの運用管理方法
US17/197,240 US20210392087A1 (en) 2020-06-16 2021-03-10 Computer system and operation management method for computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020103539A JP7106603B2 (ja) 2020-06-16 2020-06-16 計算機システム及び計算機システムの運用管理方法

Publications (2)

Publication Number Publication Date
JP2021196922A JP2021196922A (ja) 2021-12-27
JP7106603B2 true JP7106603B2 (ja) 2022-07-26

Family

ID=78826161

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020103539A Active JP7106603B2 (ja) 2020-06-16 2020-06-16 計算機システム及び計算機システムの運用管理方法

Country Status (2)

Country Link
US (1) US20210392087A1 (ja)
JP (1) JP7106603B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115269206B (zh) * 2022-09-27 2023-01-10 湖南三湘银行股份有限公司 一种基于资源分配的数据处理方法及平台

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009134640A (ja) 2007-11-30 2009-06-18 Hitachi Ltd リソース割当方法、リソース割当プログラム、および、運用管理装置
JP2011048419A (ja) 2009-08-25 2011-03-10 Nec Corp 資源管理装置、処理システム、資源管理方法、及びプログラム
WO2011071010A1 (ja) 2009-12-08 2011-06-16 日本電気株式会社 負荷特性推定システム、負荷特性推定方法およびプログラム
WO2016084255A1 (ja) 2014-11-28 2016-06-02 株式会社日立製作所 サービスを作成する管理システム及び管理方法
JP2017129988A (ja) 2016-01-19 2017-07-27 富士通株式会社 バッチ制御システム、バッチ制御プログラム、及びバッチ制御方法
JP2018156146A (ja) 2017-03-15 2018-10-04 日本電気株式会社 情報処理装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009134640A (ja) 2007-11-30 2009-06-18 Hitachi Ltd リソース割当方法、リソース割当プログラム、および、運用管理装置
JP2011048419A (ja) 2009-08-25 2011-03-10 Nec Corp 資源管理装置、処理システム、資源管理方法、及びプログラム
WO2011071010A1 (ja) 2009-12-08 2011-06-16 日本電気株式会社 負荷特性推定システム、負荷特性推定方法およびプログラム
WO2016084255A1 (ja) 2014-11-28 2016-06-02 株式会社日立製作所 サービスを作成する管理システム及び管理方法
JP2017129988A (ja) 2016-01-19 2017-07-27 富士通株式会社 バッチ制御システム、バッチ制御プログラム、及びバッチ制御方法
JP2018156146A (ja) 2017-03-15 2018-10-04 日本電気株式会社 情報処理装置

Also Published As

Publication number Publication date
US20210392087A1 (en) 2021-12-16
JP2021196922A (ja) 2021-12-27

Similar Documents

Publication Publication Date Title
JP6957431B2 (ja) Hci環境でのvm/コンテナおよびボリューム配置決定方法及びストレージシステム
US10922269B2 (en) Proactive optimizations at multi-tier file systems
Klimovic et al. Selecta: Heterogeneous cloud storage configuration for data analytics
US10129333B2 (en) Optimization of computer system logical partition migrations in a multiple computer system environment
US9116914B1 (en) Data migration between multiple tiers in a storage system using policy based ILM for QOS
US9501322B2 (en) Systems and methods for path-based management of virtual servers in storage network environments
CN103765372B (zh) 配置用于输入/输出操作的对象存储系统
US9100343B1 (en) Storage descriptors and service catalogs in a cloud environment
CN102971724B (zh) 与数据中心环境内的基于单元式虚拟资源的管理有关的方法和装置
US9003414B2 (en) Storage management computer and method for avoiding conflict by adjusting the task starting time and switching the order of task execution
US8732654B2 (en) Dependency-based impact analysis using multidimensional models of software offerings
EP2539817A1 (en) Methods and apparatus for movement of virtual resources within a data center environment
US20210089226A1 (en) Adaptive wear leveling for drive arrays
CN105302536A (zh) MapReduce应用的相关参数的配置方法和装置
JP2019133291A (ja) 情報処理装置,情報処理システムおよび制御プログラム
JP7106603B2 (ja) 計算機システム及び計算機システムの運用管理方法
JP5130169B2 (ja) 仮想化ボリュームへの物理ボリューム領域割り当方法及びストレージ装置
US9798483B2 (en) Object storage power consumption optimization
JPWO2013145512A1 (ja) 管理装置及び分散処理管理方法
CN117149098B (zh) 一种条带单元分配方法、装置、计算机设备及存储介质
JP6489978B2 (ja) 計算機システム及びデータ配布方法
JP7247651B2 (ja) 情報処理装置、情報処理システム及び情報処理プログラム
JP7229214B2 (ja) 計算機システム及び負荷分散方法
WO2016203580A1 (ja) 管理計算機、リソース移動管理方法、及び計算機システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210521

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220419

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220426

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220614

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220713

R150 Certificate of patent or registration of utility model

Ref document number: 7106603

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150