JP7468651B2 - サーバ群選択システム、サーバ群選択方法、および、プログラム - Google Patents

サーバ群選択システム、サーバ群選択方法、および、プログラム Download PDF

Info

Publication number
JP7468651B2
JP7468651B2 JP2022532198A JP2022532198A JP7468651B2 JP 7468651 B2 JP7468651 B2 JP 7468651B2 JP 2022532198 A JP2022532198 A JP 2022532198A JP 2022532198 A JP2022532198 A JP 2022532198A JP 7468651 B2 JP7468651 B2 JP 7468651B2
Authority
JP
Japan
Prior art keywords
server
physical
container
virtual machine
servers
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
JP2022532198A
Other languages
English (en)
Other versions
JPWO2021260908A1 (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2021260908A1 publication Critical patent/JPWO2021260908A1/ja
Application granted granted Critical
Publication of JP7468651B2 publication Critical patent/JP7468651B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • G06F11/1484Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/501Performance criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/505Clust

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Hardware Redundancy (AREA)

Description

本発明は、サーバ群選択システム、サーバ群選択方法、および、プログラムに関する。
汎用サーバ上の仮想化基盤を用いたサービス提供における性能・可用性の保証を両立させる対策が必要である。検討の一つとして、物理サーバ上の仮想マシン(VM:Virtual Machine)やコンテナの配置制御技術が提案されている。
性能を目的関数とした最適配置技術例として、特許文献1がある。特許文献1には、複数機能で構成されるブラックボックスNFVアプリに対する最適配置推定技術が記載されている。
更に可用性を目的関数とした最適配置技術例として、非特許文献1がある。非特許文献1には、冗長構成システム及び方法が記載されている。
国際公開第2009/081736号
A. Zhou et al.,"Cloud Service Reliability Enhancement via Virtual Machine Placement Optimization", in IEEE Transactions on Services Computing, vol. 10, no. 6, pp. 902-913, 1 Nov.-Dec. 2017.
これら特許文献1や非特許文献1では、物理サーバの故障のリスクが考慮されていないという問題がある。配置問題を考える際、配置先の物理サーバは、位置情報(設置場所/ネットワーク・トポロジー)とリソースの空き状況以外の特性が一様とする暗黙の前提条件が存在していた。しかし実際には、配置先の物理サーバは、例えば稼働時間や温度などの様々な要因により故障のリスクが異なると考えられる。よって、これらの要因を無視して仮想マシンやコンテナの配置先を選択すると、故障のリスクが高い物理サーバを選択してしまうおそれがあった。
そこで、本発明は、物理サーバの故障の要因に基づき、配置先のサーバ群を決定することを課題とする。
前記した課題を解決するため、請求項1に記載の発明では、複数の物理サーバを、各前記物理サーバから収集した当該物理サーバの稼働時間、ストレージの書き込み回数、当該物理サーバ内の温度センサが示す温度、MTBF(平均故障間隔)、故障率曲線のうち何れかまたはこれらを含む組み合わせに基づいて複数のクラスタに分類する分類部と、前記分類部が分類した複数のクラスタのうち、増設対象の仮想マシンまたはコンテナの配置に必要なリソースを確保できるクラスタの何れかを配置先として選択し、更に前記仮想マシンまたは前記コンテナの初期デプロイの場合、稼動時間がより少なく、ストレージ書き込み回数がより少なく、温度センサが示す温度がより低く、MTBFがより長く、故障率曲線がより低いことの何れかにより故障の蓋然性がより低いクラスタに分類された物理サーバを優先的に配置先とする選択部と、を備えることを特徴とするサーバ群選択システムとした。
本発明によれば、物理サーバの故障の要因に基づき、配置先のサーバ群を決定することが可能となる。
本実施形態に係るシステムの構成図である。 仮想マシンやコンテナを搭載可能なサーバをクラスタリングしたグラフである。 仮想マシンやコンテナを搭載可能なサーバをクラスタリングし、更にサーバ配置場所でフィルタリングしたグラフである。 仮想マシンやコンテナを搭載可能なサーバを抽出して位置情報をマッピングしたサーバグラフである。 仮想マシンやコンテナを搭載可能なサーバで構成されたクラスタから初期デプロイの候補を選択するグラフである。 仮想マシンやコンテナを搭載可能なサーバで構成されたクラスタから冗長化の候補を選択するグラフである。 仮想マシンやコンテナを搭載可能なサーバで構成されたクラスタからスケールアウトの候補を選択するグラフである。 仮想マシン/コンテナ搭載サーバ選択方法を示すフローチャート(その1)である。 仮想マシン/コンテナ搭載サーバ選択方法を示すフローチャート(その2)である。 仮想マシン/コンテナ搭載サーバ選択方法を示すフローチャート(その3)である。
以降、本発明を実施するための形態を、各図を参照して詳細に説明する。
図1は、本実施形態に係るシステムの構成図である。
図1に示すように、システムSは、監視・解析機能部1と、推定・制御部2とを含んで構成される。システムSは、既存の仮想マシン/コンテナの最適配置技術を適用する準備として、拠点3a~3cに設置されたサーバの個体差を考慮し、故障要因と関連するパラメータで分類したクラスタの中からデプロイ先のサーバ候補群を決定するものである。なお図面では、仮想マシンのことを“VM”と省略して記載している場合がある。
監視・解析機能部1は、拠点3a~3cとは別のサーバ上で動作し、推定・制御部2は、拠点3a~3c内のサーバ上に複数存在するコントローラごとに存在する。
監視・解析機能部1は、データ収集部11と、データストア12と、データ解析部13とを含んで構成される。監視・解析機能部1は、データ収集部11によって拠点3a~3cに設置されたサーバを監視してデータを収集すると共に、データ解析部13によって各サーバから収集した情報を解析するものである。
データ収集部11によって拠点3a~3cに設置されたサーバから収集したデータは、データストア12に格納される。データ解析部13によって解析されたデータは、後記する推定・制御部2に出力される。
推定・制御部2は、分類部21と、配置先選択部22と、配置制御部23とを含んで構成される。推定・制御部2は、仮想マシンまたはコンテナを何れかのサーバに配置するものであり、監視・解析機能部1から入力された各サーバの情報の解析結果を入力として、配置先のサーバを選択して、仮想マシンまたはコンテナを選択したサーバに配置する。
分類部21は、拠点3a~3cに設置された物理サーバの個体差を考慮し、物理サーバの故障要因と関連するパラメータでクラスタに分類する。つまり分類部21は、複数の物理サーバを、各物理サーバから収集したパラメータに基づいて複数のクラスタに分類する。分類部21には、データ解析部13によって各サーバから収集した情報が入力され、これら情報で分類されたサーバ群であるクラスタが配置先選択部22に出力される。
配置先選択部22は、新たに配置する仮想マシンまたはコンテナが1台目(初期デプロイ)か、2台目(SBYまたはスケールアウト)、3台目以降(スケールアウト)の何れかによって、これを配置するサーバ群であるクラスタを選択する。配置先選択部22にはクラスタと、新たに配置する仮想マシンまたはコンテナの種別とが入力され、これを配置するサーバ群であるクラスタが出力される。
配置先選択部22は、分類部21が分類した複数のクラスタのうち、増設対象の仮想マシンまたはコンテナの配置に必要なリソースを確保できるクラスタの何れかを配置先として選択する。
配置制御部23は、仮想マシンまたはコンテナをサーバ群(クラスタ)のうち何れかに配置するものである。配置制御部23には、仮想マシンまたはコンテナを配置するサーバ群(クラスタ)が入力され、仮想マシンまたはコンテナを配置するサーバに対しての配置コマンドが出力される。
なお、監視・解析機能部1と推定・制御部2を搭載する物理サーバの場所は問わない。また、これら2つの部位がセットである必要はない。
本実施形態の物理サーバ群選択方法は、分類部21と配置先選択部22のためのものであり、配置制御部23は、既存の最適配置技術の手法が適用される。また、これら分類部21と配置先選択部22は、不図示のコンピュータのCPU(Central Processing Unit)がプログラムを実行することによって具現化される。
《物理サーバ群選択方法》
分類部21は、各サーバの特性を示すパラメータを用いて、これらサーバを分類する。分類部21は、k-means法などの非階層クラスタリング手法や重心法などの階層クラスタリング手法により、サーバをクラスタに分類する。
《配置先サーバ群(クラスタ)決定方法》
配置検討の対象となる仮想マシンまたはコンテナが1台目(初期デプロイ)か、2台目(例:SBY用)、3台目以上(例:スケールアウト)の場合でクラスタ決定方法は異なる。2台目以降の配置ではリスク分散を考慮し、すでに搭載されている同種の仮想マシンまたはコンテナが所属するクラスタと異なる特性を持つクラスタを選択する。
《サーバの特性分類のパラメータ》
分類部21は、OS(Operating System)から取得可能な情報や、サーバ設置時に取得可能な初期情報や、過去の運用データに基づく統計情報のうち何れかまたはこれらの組み合わせに基づいて、サーバをクラスタに分類する。これにより分類部21は、機械的に取得可能な情報のみで、物理サーバをクラスタに分類し、クラスタを構成するサーバ群の故障の蓋然性を評価できる。
OSから取得可能な情報とは、サーバが搭載可能な仮想マシン台数、サーバの稼働時間、ストレージの書き込み回数、サーバ内の温度センサが示す温度などである。
サーバ設置時に取得可能な初期情報とは、サーバが配置されているデータセンタの拠点、ラック番号、ラック棚番号、サーバのメーカ、製造時期、製造ロット番号などである。
過去の運用データに基づく統計情報とは、MTBF(平均故障間隔)や、故障率曲線などである。
図2は、仮想マシンやコンテナを搭載可能なサーバをクラスタリングしたグラフである。
図2は、3軸の立体グラフであり、ディスク書き込み回数の軸と、稼働時間の軸と、温度の軸とを含んで構成される。これにより各サーバは、これらのパラメータが比較的小さいクラスタと、中程度のクラスタと、比較的大きいクラスタの3つに大別される。データ収集部11は、各サーバのディスク書き込み回数と稼働時間と温度のデータを収集し、収集したデータをデータストア12へ保存する。
なお、この3軸に限られず、選択されたサーバのハードウエア情報や配置場所(拠点またはラック)、で分類されてもよい。また、ディスク書き込み回数は多いが、稼働時間は中程度で、温度が低いなどのように、各パラメータに偏りがあるクラスタであってもよい。
同一のクラスタに属するサーバ群は、ディスク書き込み回数と稼働時間と温度のパラメータが近似している。よって、サーバ群は、同様な傾向で故障が発生すると推定される。これらサーバ群は、同一の要因で同時期に故障が発生する可能性もある。よって、サービスの可用性を高めるため、現用系と予備系の仮想マシンまたはコンテナは、異なるクラスタに属するサーバに配置するとよい。更にスケールアウト用の複数の仮想マシンまたはコンテナは、できる限り異なるクラスタに属するサーバに配置するとよい。
図3は、仮想マシンやコンテナを搭載可能なサーバをクラスタリングし、更にサーバ配置場所でフィルタリングしたグラフである。
破線で示す丸印は、サーバ配置場所によってフィルタリングした結果、配置場所の候補から外れたサーバである。
図4は、仮想マシンやコンテナを搭載可能なサーバを抽出して位置情報をマッピングしたサーバグラフである。
このサーバグラフは、拠点3a~3cが矩形で示されている。拠点3aは、複数のサーバ31と、これらサーバ31をスター接続するハブ32を含んでいる。そして各ハブ32はそれぞれ相互に接続されている。他の拠点3b,3cも同様に接続されている。
拠点3a~3cは、ハブ33を介してスター接続されている。これにより拠点3a~3cは、ネットワークを構成する。
同一の拠点のサーバ間の経路は短いため、サーバに配置された複数の仮想マシンまたはコンテナ間の通信時間は短くなる。よって、スケールアウト用の複数の仮想マシンまたはコンテナは、同一の拠点のサーバに配置すると好適である。
図5は、仮想マシンやコンテナを搭載可能なサーバで構成されたクラスタから初期デプロイの候補を選択するグラフである。
クラスタ41は、ディスク書き込み回数と稼働時間と温度のパラメータが比較的小さい。クラスタ42は、ディスク書き込み回数と稼働時間と温度のパラメータが中程度である。クラスタ43は、ディスク書き込み回数と稼働時間と温度のパラメータが比較的大きい。ここでは、クラスタ41を仮想マシンまたはコンテナの配置先のサーバ群として選択することで、他のクラスタを選択した場合よりも、仮想マシンまたはコンテナの故障頻度を減らすことができる。
図6は、仮想マシンやコンテナを搭載可能なサーバで構成されたクラスタから冗長化の候補を選択するグラフである。
クラスタ41のうち太線で示したサーバは、現用系(ACT)の仮想マシンまたはコンテナがデプロイされている。このとき、現用系(ACT)の仮想マシンまたはコンテナを搭載するサーバを含むクラスタ41とは異なるクラスタ42,43のうち何れかを予備系(SBY)の仮想マシンまたはコンテナのデプロイ先として選択するとよい。これにより、同一要因によって現用系(ACT)と予備系(SBY)とが同時に故障する可能性を減らすことができる。
なお、ここでは冗長化に伴う予備系(SBY)の候補を選択することについて説明したが、スケールアウトに伴う2台目の仮想マシンまたはコンテナのデプロイ先の候補も、同様に選択するとようい。
図7は、仮想マシンやコンテナを搭載可能なサーバで構成されたクラスタからスケールアウトの候補を選択するグラフである。
太線で示したサーバは、同種のスケールアウトの仮想マシンまたはコンテナがデプロイされている。このとき、同種の仮想マシンまたはコンテナを搭載するサーバを含むクラスタ41,42とは異なるクラスタ43を新たなスケールアウトの仮想マシンまたはコンテナのデプロイ先として選択するとよい。
図8Aから 図8Cは、仮想マシン/コンテナ搭載サーバ選択方法を示すフローチャートである。
ステップS10~S15は、全てのデータセンタ内のサーバについての繰り返し処理である。
ステップS11において、データ解析部13は、このサーバの各属性を、配列mの新たな要素に代入する。ここで属性、拠点の識別情報と、ラック番号と、ラック内におけるサーバの番号と、サーバの空きリソース量と稼働時間とディスク(ストレージ)書き込み回数と温度である。サーバの空きリソース量は、具体的には仮想マシンまたはコンテナの搭載可能台数である。温度とは、サーバ内の温度センサが示す温度である。
ステップS12において、データ解析部13は、このサーバの空きリソース量が0を超えているか否かを判定する。ステップS12において、データ解析部13は、このサーバの空きリソース量が0ならば(No)、ステップS15に進む。
データ解析部13は、空きリソース量が0を超えているならば(Yes)、このサーバの属性を配列m*の新たな要素に追加し(S13)、この新しい配列m*の要素数M*に1を加算する(S14)。データ解析部13は、空きリソース量が0ならば、ステップS15に進む。
ステップS15において、データ解析部13は、データセンタ内のサーバについて未処理のものがあれば、ステップS10に戻り、全てのサーバを処理していたならば、ステップS16に進む。
ステップS16~S18は、配列m*で示されるサーバについての繰り返し処理である。ここで、配列m*で示されるサーバとは、仮想マシンまたはコンテナを1台以上搭載可能な空きリソースを有するサーバである。
ステップS17において、分類部21は、このサーバをk-means法などのクラスタリング手法により、サーバのディスク書き込み回数と稼働時間と温度に応じてクラスタ番号x7が1からNcまでのうち何れかのクラスタに分類する。Ncとは、クラスタの個数である。なお、分類部21は、OSから取得可能な情報、サーバ設置時に取得可能な初期情報、および、過去の運用データに基づく統計情報のうち何れかに基づいて、クラスタに分類してもよい。
ステップS18において、分類部21は、配列m*で示されるサーバについて未処理のものがあれば、ステップS16に戻り、全ての配列m*のサーバを処理していたならば、図8BのステップS19に進む。
図8BのステップS19において、分類部21は、配置場所を考慮するか否かを判定する。分類部21は、配置場所を考慮するならば(Yes)、M*台のサーバを拠点毎に分ける(S20)。そして分類部21は、配列m*のうち、空きリソースあり台数が最大となる拠点に属するサーバを新しい配列m**に代入する(S21)。なお、サーバの物理的距離を考慮する配置制御技術を適用する場合は、事前にサーバグラフ上の距離でフィルタリングするとよい。
分類部21は、空きリソースありサーバ台数が最大となる拠点の前記台数を新たにM**とすると(S22)、ステップS25の処理に進む。
図8BのステップS19において、分類部21は、配置場所を考慮しないならば(No)、全ての配列m*を新しい配列m**に代入し(S23)、空きリソースありサーバ台数M*を新たにM**とすると(S24)、ステップS25の処理に進む。
つまり、分類部21は、各物理サーバの設置場所に基づいて、この物理サーバをフィルタリングしたものをクラスタに分類する。
ステップS25~S33は、全てのクラスタの繰り返し処理である。クラスタ候補が複数存在する場合、故障の蓋然性が低い順、例えばサーバのディスク書き込み回数が低い順、稼働時間が短い順、温度が低い順にサーバ群を候補とする。
ステップS26において、配置先選択部22は、新たに配備したい仮想マシンまたはコンテナが初期デプロイであるか否かを判定する。配置先選択部22は、新たに配備したい仮想マシンまたはコンテナが初期デプロイであったならば(Yes)、このクラスタnのサーバの空きリソース量の合計値Cを計算する(S29)。
そして、ステップS30において、配置先選択部22は、新たに配備したい仮想マシンまたはコンテナ数が、サーバの空きリソース量の合計値C以下であるか否かを判定する。
ステップS30において、配置先選択部22は、新たに配備したい仮想マシンまたはコンテナの数が、サーバの空きリソース量の合計値C以下ならば(Yes)、図8CのステップS38に進む。そして、ステップS38において、配置先選択部22は、このクラスタnを配備先として採用し、配置制御部23へ配列m**と要素数M**を伝達すると、図8Cの処理を終了する。
つまり、配置先選択部22は、仮想マシンまたはコンテナの初期デプロイの場合、故障の蓋然性がより低いクラスタを優先的に配置先としている。
ステップS30において、配置先選択部22は、新たに配備したい仮想マシンまたはコンテナの数が、サーバの空きリソース量の合計値Cを超えていたならば(No)、ステップS33に進む。
ステップS26において、配置先選択部22は、新たに配備したい仮想マシンまたはコンテナが初期デプロイでなかったならば(No)、ステップS27に進み、2台目であるか否かを判定する。
ステップS27において、配置先選択部22は、新たに配備したい仮想マシンまたはコンテナが2台目ならば(Yes)、このクラスタn内に初期デプロイした同種の仮想マシンまたはコンテナが有るか否かを判定する(S28)。なお図8Bでは、ステップS28を「クラスタn内に初期デプロイVM有」と省略して記載している。ステップS28の判定がYesの場合は、前述した冗長化や、スケールアウトによる2台目の配備に該当する。
配置先選択部22は、このクラスタn内に初期デプロイした同種の仮想マシンまたはコンテナが無いならば(No)、ステップS29に進み、このクラスタnの空きリソース量が許すならば、このクラスタnを配備対象とする。
ステップS28において、配置先選択部22は、このクラスタn内に初期デプロイした同種の仮想マシンまたはコンテナが有るならば(Yes)、ステップS33に進み、このクラスタnを配備対象としない。
つまり配置先選択部22は、仮想マシンまたはコンテナの冗長化の場合、現用系の仮想マシンまたはコンテナが配置されておらず、かつ故障の蓋然性がより低いクラスタを優先的に配置先とする。よって、配置先選択部22は、現用系と予備系の両方が同時に停止する可能性を低くすることができる。
配置先選択部22は、仮想マシンまたはコンテナのスケールアウトの2台目の場合、1台目のマシンまたはコンテナが配置されておらず、かつ故障の蓋然性がより低いクラスタを優先的に配置先とする。よって、配置先選択部22は、同種の2台の仮想マシンまたはコンテナが同時に停止する可能性を低くすることができる。
ステップS27において、配置先選択部22は、新たに配備したい仮想マシンまたはコンテナが2台目でないならば(No)、このクラスタn内に存在する同種の仮想マシンまたはコンテナの数Nnをカウントする(S31)。この場合は、前述したスケールアウトのうち3台目以降に該当する。配置先選択部22は、同種の仮想マシンまたはコンテナの数Nnが0でないならば(No)、ステップS33に進み、このクラスタnを配備対象としない。
配置先選択部22は、同種の仮想マシンまたはコンテナの数Nnが0ならば(Yes)、ステップS29に進み、このクラスタnがデプロイに必要リソースを確保できるサーバ群ならば、配備対象とする。
つまり配置先選択部22は、仮想マシンまたはコンテナのスケーリングの場合、同種の仮想マシンまたはコンテナが配置されておらず、かつ故障の蓋然性がより低いクラスタを優先的に配置先とする。よって配置先選択部22は、スケーリングしたサービスが同時に停止する可能性を低くすることができる。
ステップS33において、配置先選択部22は、クラスタについて未処理のものがあれば、ステップS25に戻り、全てのクラスタを処理していたならば、ステップS34に進む。
ステップS34~S37は、全てのクラスタの繰り返し処理である。
配置先選択部22は、このクラスタnのサーバの空きリソース量の合計値Cを計算する(S35)。
ステップS36において、配置先選択部22は、新たに配備したい仮想マシンまたはコンテナ数が、サーバの空きリソース量の合計値C以下であるか否かを判定する。配置先選択部22は、新たに配備したい仮想マシンまたはコンテナの数が、サーバの空きリソース量の合計値C以下ならば(Yes)、ステップS38に進み、このクラスタnを配備先として採用して、配置制御部23へ配列m**と要素数M**を伝達すると、図8Cの処理を終了する。
配置先選択部22は、新たに配備したい仮想マシンまたはコンテナの数が、サーバの空きリソース量の合計値Cを超えているならば、ステップS37に進み、このクラスタnを配備対象としない。
ステップS37において、配置先選択部22は、クラスタについて未処理のものがあれば、ステップS34に戻り、全てのクラスタを処理していたならば、図8Cの処理を終了する。
《本実施形態の効果》
本システムは、仮想マシンまたはコンテナの冗長構成をとる際、同時に故障が発生する確率が低いサーバを選択する。これにより、システムの可用性を向上させる。
本システムは、物理サーバへの負荷を分散させている。これにより、故障が同時発生する確率を下げることができる。
更に、搭載先の物理サーバ候補数を減らすことで、最適配置のための計算量を削減することができる。
《本発明とその効果》
(1)複数の物理サーバを、各前記物理サーバから収集したパラメータに基づいて複数のクラスタに分類する分類部と、前記分類部が分類した複数のクラスタのうち、増設対象の仮想マシンまたはコンテナの配置に必要なリソースを確保できるクラスタの何れかを配置先として選択する選択部と、を備えることを特徴とするサーバ群選択システムとした。
このようにすることで、物理サーバの故障の要因に基づき、配置先のサーバ群を決定することができる。
(2)前記分類部が各前記物理サーバを分類する際に用いるパラメータには、OSから取得可能な情報、サーバ設置時に取得可能な初期情報、および、過去の運用データに基づく統計情報のうち何れかが含まれる、ことを特徴とする請求項1に記載のサーバ群選択システムとした。
このようにすることで、機械的に取得可能な情報によって物理サーバをクラスタに分類できる。
(3)前記選択部は、前記仮想マシンまたは前記コンテナの初期デプロイの場合、故障の蓋然性がより低いクラスタを優先的に配置先とする、ことを特徴とする請求項1または2に記載のサーバ群選択システムとした。
このようにすることで、故障の蓋然性の低いサーバ群を優先的に配置先とすることができる。
(4)前記選択部は、前記仮想マシンまたは前記コンテナの冗長化の場合、現用系の前記仮想マシンまたは前記コンテナが配置されておらず、かつ故障の蓋然性がより低いクラスタを優先的に配置先とする、ことを特徴とする請求項1または2に記載のサーバ群選択システムとした。
このようにすることで、故障の蓋然性の低いサーバ群を優先的に配置先とすることができ、かつ現用系と予備系とを出来るだけ異なるクラスタに配置できる。よって、現用系と予備系の両方が同時に停止する可能性を低くすることができる。
(5)前記選択部は、前記仮想マシンまたは前記コンテナのスケーリングの場合、同種の前記仮想マシンまたは前記コンテナが配置されておらず、かつ故障の蓋然性がより低いクラスタを優先的に配置先とする、ことを特徴とする請求項1または2に記載のサーバ群選択システムとした。
このようにすることで、故障の蓋然性の低いサーバ群を優先的に配置先とすることができ、かつ同種の仮想マシンまたはコンテナを出来るだけ異なるクラスタに配置できる。よってスケーリングしたサービスが同時に停止する可能性を低くすることができる。
(6)前記分類部は、各前記物理サーバの設置場所に基づいて、当該物理サーバをフィルタリングしたものをクラスタに分類する、ことを特徴とする請求項1に記載のサーバ群選択システムとした。
このようにすることで、配置先のサーバ群を近距離に設置されたものに絞りこめるので、システムの応答時間を短縮できる。
(7)複数の物理サーバを、各前記物理サーバから収集したパラメータに基づいて複数のクラスタに分類するステップと、前記複数のクラスタのうち、増設対象の仮想マシンまたはコンテナの配置に必要なリソースを確保できるクラスタの何れかを配置先として選択するステップと、を実行することを特徴とするサーバ群選択方法とした。
このようにすることで、物理サーバの故障の要因に基づき、配置先のサーバ群を決定することができる。
(8) コンピュータに、複数の物理サーバを、各前記物理サーバから収集したパラメータに基づいて複数のクラスタに分類する工程、前記複数のクラスタのうち、増設対象の仮想マシンまたはコンテナの配置に必要なリソースを確保できるクラスタの何れかを配置先として選択する工程、を実行させるためのプログラムとした。
このようにすることで、物理サーバの故障の要因に基づき、配置先のサーバ群を決定することができる。
《変形例》
本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で、変更実施が可能であり、例えば、次の(a)~(c)のようなものがある。
(a) 分類部21がサーバをクラスタに分類する方法は、k-means法に限定されず、これ以外の非階層クラスタリング手法や重心法などの階層クラスタリング手法であってもよい。
(b) サーバをクラスタに分類するためのパラメータは、サーバの稼働時間、ストレージの書き込み回数、サーバ内の温度センサが示す温度に限定されない。サーバが搭載可能な仮想マシン台数、サーバが配置されているデータセンタの拠点、ラック番号、ラック棚番号、サーバのメーカ、製造時期、製造ロット番号、これらサーバのMTBF(平均故障間隔)や故障率曲線などであってもよい。
(c) サーバをクラスタに分類するためのパラメータは、OSから取得可能な情報、サーバ設置時に取得可能な初期情報、および、過去の運用データに基づく統計情報のうち何れかが含まれていればよい。
S システム (サーバ群選択システム)
1 監視・解析機能部
11 データ収集部
12 データストア
13 データ解析部
2 推定・制御部
21 分類部
22 配置先選択部 (選択部)
23 配置制御部
3a 拠点
3b 拠点
3c 拠点
31 サーバ
32,33 ハブ
41~43 クラスタ

Claims (7)

  1. 複数の物理サーバを、各前記物理サーバから収集した当該物理サーバの稼働時間、ストレージの書き込み回数、当該物理サーバ内の温度センサが示す温度、MTBF(平均故障間隔)、故障率曲線のうち何れかまたはこれらを含む組み合わせに基づいて複数のクラスタに分類する分類部と、
    前記分類部が分類した複数のクラスタのうち、増設対象の仮想マシンまたはコンテナの配置に必要なリソースを確保できるクラスタの何れかを配置先として選択し、更に前記仮想マシンまたは前記コンテナの初期デプロイの場合、稼動時間がより少なく、ストレージ書き込み回数がより少なく、温度センサが示す温度がより低く、MTBFがより長く、故障率曲線がより低いことの何れかにより故障の蓋然性がより低いクラスタに分類された物理サーバを優先的に配置先とする選択部と、
    を備えることを特徴とするサーバ群選択システム。
  2. 複数の物理サーバを、各前記物理サーバから収集した当該物理サーバの稼働時間、ストレージの書き込み回数、当該物理サーバ内の温度センサが示す温度、MTBF(平均故障間隔)、故障率曲線のうち何れかまたはこれらを含む組み合わせに基づいて複数のクラスタに分類する分類部と、
    前記分類部が分類した複数のクラスタのうち、増設対象の仮想マシンまたはコンテナの配置に必要なリソースを確保できるクラスタの何れかを配置先として選択し、更に前記仮想マシンまたは前記コンテナの冗長化の場合、現用系の前記仮想マシンまたは前記コンテナが配置されておらず、かつ、稼動時間がより少なく、ストレージ書き込み回数がより少なく、温度センサが示す温度がより低く、MTBFがより長く、故障率曲線がより低いことの何れかにより故障の蓋然性がより低いクラスタに分類された物理サーバを優先的に配置先とする選択部と、
    を備えることを特徴とするサーバ群選択システム。
  3. 複数の物理サーバを、各前記物理サーバから収集した当該物理サーバの稼働時間、ストレージの書き込み回数、当該物理サーバ内の温度センサが示す温度、MTBF(平均故障間隔)、故障率曲線のうち何れかまたはこれらを含む組み合わせに基づいて複数のクラスタに分類する分類部と、
    前記分類部が分類した複数のクラスタのうち、増設対象の仮想マシンまたはコンテナの配置に必要なリソースを確保できるクラスタの何れかを配置先として選択し、更に前記仮想マシンまたは前記コンテナのスケーリングの場合、同種の前記仮想マシンまたは前記コンテナが配置されておらず、かつ稼動時間がより少なく、ストレージ書き込み回数がより少なく、温度センサが示す温度がより低く、MTBFがより長く、故障率曲線がより低いことの何れかにより故障の蓋然性がより低いクラスタに分類された物理サーバを優先的に配置先とする選択部と、
    を備えることを特徴とするサーバ群選択システム。
  4. 前記分類部が各前記物理サーバを分類する際に用いるパラメータには、OSから取得可能な情報である前記物理サーバが搭載可能な仮想マシン台数、および、サーバ設置時に取得可能な初期情報である前記物理サーバが配置されているデータセンタの拠点、ラック番号、ラック棚番号、前記物理サーバのメーカ、製造時期、製造ロット番号のうち何れかが更に含まれる、
    ことを特徴とする請求項1から3のうち何れか1項に記載のサーバ群選択システム。
  5. 前記分類部は、各前記物理サーバの設置場所に基づいて、当該物理サーバをフィルタリングしたものをクラスタに分類する、
    ことを特徴とする請求項1から3のうち何れか1項に記載のサーバ群選択システム。
  6. 複数の物理サーバを、各前記物理サーバから収集した当該物理サーバの稼働時間、ストレージの書き込み回数、当該物理サーバ内の温度センサが示す温度、MTBF(平均故障間隔)、故障率曲線のうち何れかまたはこれらを含む組み合わせに基づいて複数のクラスタに分類するステップと、
    前記複数のクラスタのうち、増設対象の仮想マシンまたはコンテナの配置に必要なリソースを確保できるクラスタの何れかを配置先として選択するステップと、
    前記仮想マシンまたは前記コンテナの初期デプロイの場合、稼動時間がより少なく、ストレージ書き込み回数がより少なく、温度センサが示す温度がより低く、MTBFがより長く、故障率曲線がより低いことの何れかにより故障の蓋然性がより低いクラスタに分類された物理サーバを優先的に配置先とするステップと、
    を実行することを特徴とするサーバ群選択方法。
  7. コンピュータに、
    複数の物理サーバを、各前記物理サーバから収集した当該物理サーバの稼働時間、ストレージの書き込み回数、当該物理サーバ内の温度センサが示す温度、MTBF(平均故障間隔)、故障率曲線のうち何れかまたはこれらを含む組み合わせに基づいて複数のクラスタに分類する工程、
    前記複数のクラスタのうち、増設対象の仮想マシンまたはコンテナの配置に必要なリソースを確保できるクラスタの何れかを配置先として選択する工程、
    前記仮想マシンまたは前記コンテナの初期デプロイの場合、稼動時間がより少なく、ストレージ書き込み回数がより少なく、温度センサが示す温度がより低く、MTBFがより長く、故障率曲線がより低いことの何れかにより故障の蓋然性がより低いクラスタに分類された物理サーバを優先的に配置先とする工程、
    を実行させるためのプログラム。
JP2022532198A 2020-06-26 2020-06-26 サーバ群選択システム、サーバ群選択方法、および、プログラム Active JP7468651B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/025170 WO2021260908A1 (ja) 2020-06-26 2020-06-26 サーバ群選択システム、サーバ群選択方法、および、プログラム

Publications (2)

Publication Number Publication Date
JPWO2021260908A1 JPWO2021260908A1 (ja) 2021-12-30
JP7468651B2 true JP7468651B2 (ja) 2024-04-16

Family

ID=79282156

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022532198A Active JP7468651B2 (ja) 2020-06-26 2020-06-26 サーバ群選択システム、サーバ群選択方法、および、プログラム

Country Status (3)

Country Link
US (1) US20230281089A1 (ja)
JP (1) JP7468651B2 (ja)
WO (1) WO2021260908A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011013822A (ja) 2009-06-30 2011-01-20 Nec Corp 情報システム、制御装置、そのデータ処理方法およびプログラム
JP2012150657A (ja) 2011-01-19 2012-08-09 Mitsubishi Electric Corp 計算機システム
WO2015182471A1 (ja) 2014-05-28 2015-12-03 Kddi株式会社 Itシステムにおけるサーバの性能の抽象化方法および資源管理方法
JP2016126562A (ja) 2015-01-05 2016-07-11 富士通株式会社 情報処理システム、管理装置、及び情報処理システムの制御方法
WO2018181961A1 (ja) 2017-03-31 2018-10-04 日本電気株式会社 仮想ネットワーク機能管理装置、仮想インフラストラクチャ管理装置、及び仮想ネットワーク機能構築方法
JP2019511051A (ja) 2016-04-07 2019-04-18 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 非集約型計算システムを実現するための方法、装置、コンピュータ・プログラム製品、およびデータセンタ・ファシリティ

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011013822A (ja) 2009-06-30 2011-01-20 Nec Corp 情報システム、制御装置、そのデータ処理方法およびプログラム
JP2012150657A (ja) 2011-01-19 2012-08-09 Mitsubishi Electric Corp 計算機システム
WO2015182471A1 (ja) 2014-05-28 2015-12-03 Kddi株式会社 Itシステムにおけるサーバの性能の抽象化方法および資源管理方法
JP2016126562A (ja) 2015-01-05 2016-07-11 富士通株式会社 情報処理システム、管理装置、及び情報処理システムの制御方法
JP2019511051A (ja) 2016-04-07 2019-04-18 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 非集約型計算システムを実現するための方法、装置、コンピュータ・プログラム製品、およびデータセンタ・ファシリティ
WO2018181961A1 (ja) 2017-03-31 2018-10-04 日本電気株式会社 仮想ネットワーク機能管理装置、仮想インフラストラクチャ管理装置、及び仮想ネットワーク機能構築方法

Also Published As

Publication number Publication date
WO2021260908A1 (ja) 2021-12-30
US20230281089A1 (en) 2023-09-07
JPWO2021260908A1 (ja) 2021-12-30

Similar Documents

Publication Publication Date Title
US10866840B2 (en) Dependent system optimization for serverless frameworks
US8140817B2 (en) Dynamic logical partition management for NUMA machines and clusters
US10855791B2 (en) Clustered storage system path quiescence analysis
US20060069761A1 (en) System and method for load balancing virtual machines in a computer network
US10419437B2 (en) Quasi-agentless cloud resource management
KR101123491B1 (ko) 가상화 스토리지 실행 제어기
JP2019191929A (ja) 性能分析方法および管理計算機
US8495294B2 (en) Management computer for managing storage system capacity and storage system capacity management method
KR102016238B1 (ko) 도커 컨테이너 관리 시스템 및 방법, 이를 수행하기 위한 기록매체
US11693679B2 (en) Systems and methods for recommending optimized virtual-machine configurations
US11409453B2 (en) Storage capacity forecasting for storage systems in an active tier of a storage environment
US20190179679A1 (en) Methods and systems for managing service level objectives in a networked storage environment
JP7003692B2 (ja) 情報処理装置,情報処理システムおよび制御プログラム
US10069906B2 (en) Method and apparatus to deploy applications in cloud environments
EP4029197B1 (en) Utilizing network analytics for service provisioning
US10210023B2 (en) Methods and systems for managing service level objectives in a networked storage environment
US20230132476A1 (en) Global Automated Data Center Expansion
US10782922B2 (en) Storage device volume selection for improved space allocation
US11561824B2 (en) Embedded persistent queue
US11237740B2 (en) Automatically determining sizing configurations for storage components using machine learning techniques
JP7468651B2 (ja) サーバ群選択システム、サーバ群選択方法、および、プログラム
US10860236B2 (en) Method and system for proactive data migration across tiered storage
US20200076681A1 (en) Volume allocation management apparatus, volume allocation management method, and volume allocation management program
US20230176859A1 (en) Automated methods and systems for predicting behavior of a distributed application in response to a proposed change to the distributed application
KR20200013129A (ko) 클라우드 컴퓨팅 시스템에서 가상 머신 재배치 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231024

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231218

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240318

R150 Certificate of patent or registration of utility model

Ref document number: 7468651

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150