JP2017506776A - ラックスケールアーキテクチャコンピューティングシステムのためのワークロード最適化、スケジューリング及び配置 - Google Patents

ラックスケールアーキテクチャコンピューティングシステムのためのワークロード最適化、スケジューリング及び配置 Download PDF

Info

Publication number
JP2017506776A
JP2017506776A JP2016546019A JP2016546019A JP2017506776A JP 2017506776 A JP2017506776 A JP 2017506776A JP 2016546019 A JP2016546019 A JP 2016546019A JP 2016546019 A JP2016546019 A JP 2016546019A JP 2017506776 A JP2017506776 A JP 2017506776A
Authority
JP
Japan
Prior art keywords
computing
metric
rack
determining
hardware component
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
JP2016546019A
Other languages
English (en)
Other versions
JP6438035B2 (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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of JP2017506776A publication Critical patent/JP2017506776A/ja
Application granted granted Critical
Publication of JP6438035B2 publication Critical patent/JP6438035B2/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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/147Network analysis or design for predicting network behaviour
    • 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/14Network analysis or design
    • H04L41/149Network analysis or design for prediction of maintenance
    • 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/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • 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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5009Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
    • 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/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5054Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
    • 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/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • 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
    • 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/0876Aspects of the degree of configuration automation
    • H04L41/0883Semiautomatic configuration, e.g. proposals from system

Landscapes

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

Abstract

データセンタ管理のための複数の技術は、それぞれがラックコントローラを含む1又は複数のコンピューティングラックを含む。ラックコントローラは、コンピューティングラックの複数の要素について、システム、性能、又は健全性測定基準を受信してよい。ラックコントローラは、コンポーネント寿命を予測する回帰モデルを生成し、含まれるハードウェアコンポーネントの寿命に基づいて、論理的な機械寿命を予測してよい。ラックコントローラは、残っている要素又は論理的機械寿命に基づいて、複数の通知を生成してよく、又はメンテナンスセッションを計画してよい。ラックコントローラは、複数の論理マシンを、同様の残りの寿命を有する複数の要素を用いて構成してよい。いくつかの実施形態において、ラックコントローラは、コンポーネント故障の確率に基づいて、アプリケーションを実行する前にサービスレベルアグリーメントを認証してよい。管理インタフェースは、システム状態のインタラクティブな可視化を生成してよく、可視化に対して応答する人間の入力から派生した複数の最適化ルールに基づいて、データセンタスケジュールを最適化してよい。他の複数の実施形態が記載され、特許請求される。

Description

[関連する応用に対する相互参照] 本出願は、米国特許法第119条(e)の定めにより、2014年2月27日に出願された「WORKLOAD OPTIMIZATION FOR RACK COMPUTING ARCHITECTURES」と題する米国特許仮出願第61/945,588号及び2014年2月27日に同様に出願された「GRAY BOX OPTIMIZATION FOR DATACENTER WORKLOAD SCHEDULING AND PLACEMENT」と題する米国特許仮出願第61/945,597号の優先権を主張する。
「クラウド」コンピューティングとは、サービスとしての複数のコンピューティングリソースのプロビジョニングを指すのにしばしば用いられる用語であり、通常は、複数のサービスが要求される場所から離れた場所で共にネットワーク接続される多数のコンピュータサーバによって行われる。クラウドデータセンタは、通常、クラウド又はクラウドの特定の一部を成す複数のサーバの物理的配置を指す。例えば、複数のサーバは、データセンタにおいて複数の空間、グループ、列及びラックへと物理的に配置され得る。データセンタは、複数のサーバの1又は複数の空間を含み得る1又は複数のゾーンを有してよい。各空間は、1又は複数の列のサーバを有してよく、各列は、1又は複数のラックを含んでよい。各ラックは、1又は複数の個々のサーバノードを含んでよい。ゾーン、空間、ラック及び/又は列内のサーバは、電力、エネルギー、熱、温度及び/又は複数の他の要件を含み得るデータセンタ施設の複数の物理的インフラストラクチャ要件に基づいて、複数の仮想グループへと配置され得る。
クラウドコンピューティングの人気が増すにつれて、顧客は、複数のクラウドサービスプロバイダにそれらの契約の範囲内でサービスレベルアグリーメント(SLA)を含むようにますます要求する。そのような複数のSLAは、複数のクラウドサービスプロバイダに、1又は複数の測定基準(例えば、システムアップタイム、スループット等)で測定され得る少なくとも特定のレベルのサービスを顧客に提供することに同意するよう要求する。(サービス配信目標(SDO)及びサービスレベル目標(SLO)のゴールを含む)複数のSLAゴール、複数の効率ターゲット、複数のコンプライアンス目標、複数の施設を含む複数のエネルギーターゲット、及び複数の他の環境及びコンテクスト上の制約もまた全て考慮され得る。そのような複数の取り決めを満たすためには、複数のクラウドサービスプロバイダが、複数の物理的サーバ及び/又は複数のノードもしくはリソースの間での複数の顧客ワークロードを同じサーバ上で最適に割り当てることが重要である。しかしながら、典型的にはそのような割り当ては、新たな、又は保留中のワークロードが生成される場合にどの複数のリソースが利用可能であるかに基づいており、それがハードウェア故障の確率を考慮しない。それは、サービスプロバイダがSLAを満たすことをできなくさせ得る。
ブラックボックスの最適化は、多数の領域で応用されてきたが、設計者及び/又は制御者のループ中に人間を含むための問題及び必要性の動的な発展性により、計算の最適化が首尾よく適用されてこなかった多くの状況が未だにある。従来の複数の最適化アルゴリズムは、複数の厳格な制約、例えばカッティング及びパッキングアルゴリズムの(例えば、標準の輸送コンテナに格納された複数の物理的商品の最も有益な組み合わせを決定すること)に対処してよい。例えば、混合整数の問題解決は、複数の厳格な制約を対処してよい従来のアルゴリズムの1つの代表的な例である。ブラックボックスの最適化の複数の解決策は、問題がアルゴリズムで、複数の特定の領域のコンテクストの詳細を概して参照することなく記載されるように要求し得る。従って、これらのシステムは、ユーザ規定の知識を容易には統合しなくてよく、又は動的な複数の変更を検出もしくは考慮しなくてもよい。加えて、複数のブラックボックスの最適化アルゴリズムは、全てのユーザには直接アクセス可能又は閲覧可能でなくてもよい。
本明細書において記載される複数の概念は、例として示されるものであり、添付の複数の図において限定の目的で示されるものではない。説明を簡潔かつ明確にすべく、複数の図において示される複数の要素は必ずしも縮尺どおりに描かれてはいない。適切とみなされる場合には、複数の参照ラベルは、複数の対応する又は類似の要素を示すために、複数の図の間で繰り返されている。
ラックスケールコンピューティングアーキテクチャにおけるワークロード最適化、スケジューリング、及び配置のためのシステムの少なくとも1つの実施形態の簡易ブロックダイアグラムである。
図1のシステムのラックコントローラの環境の少なくとも1つの実施形態の簡易ブロックダイアグラムである。
図1及び図2のラックコントローラによって実行され得るデータセンタ管理の方法の少なくとも1つの実施形態の簡略化したフロー図である。
図1のシステムのいくつかの環境の少なくとも1つの実施形態の簡易ブロックダイアグラムである。
図1及び図4のラックコントローラによって実行され得るワークロード最適化、スケジューリング、及び配置の方法の少なくとも1つの実施形態の簡略化したフロー図である。
図1及び図4の性能データサーバによって実行され得る予測ワークロードデータ取得の方法の簡略化したフロー図である。
図1及び図4のラックコントローラによって実行され得る性能監視の方法の少なくとも1つの実施形態の簡略化したフロー図である。
図1及び図4の性能データサーバによって実行され得る性能データ管理の方法の簡略化したフロー図である。
図1及び図4のシステムによって実行され得るワークロードスケジューリング及び配置を最適化するための方法の簡略化したフロー図である。
本開示の複数の概念は、様々な変更及び代替的な形態に影響されやすい一方で、それらの複数の具体的な実施形態は、複数の図面において例として示され、本明細書で詳細に記載されるであろう。しかしながら、本開示の複数の概念を開示された特定の複数の形態に限定する意図はなく、反対に、本開示及び添付された特許請求の範囲に一致する全ての変更、均等物及び代替物を包含することを意図することが理解されるべきである。
明細書における「一実施形態」、「実施形態」、「例示的な実施形態」等についての複数の言及は、記載される実施形態が特有の機能、構造又は特性を含み得ることを示しているが、いずれの実施形態も、それら特有の機能、構造または特性を含んでもよく、又は、必ずしも含まなくてもよい。さらに、そのような複数の語句は、必ずしも同じ実施形態を指すわけではない。さらに、特定の機能、構造または特性が、ある実施形態と関連して記載される場合、明示的に記載されているか否かに関わらず、このような特徴、構造または特性を他の複数の実施形態に関連してもたらすことは、当業者の知識の範囲内にあるとされる。加えて、「少なくとも1つのA、B、及びC」の形におけるリストに含まれる複数のアイテムは、(A)、(B)、(C)、(A及びB)、(A及びC)、(B及びC)、又は(A、B、及びC)を意味し得るものとして理解されるべきである。同様、「A、B、又はCの少なくとも1つ」の形で列挙された複数のアイテムは、(A)、(B)、(C)、(A及びB)、(A及びC)、(B及びC)又は(A、B、及びC)を意味し得る。
開示される複数の実施形態は、場合によっては、ハードウェア、ファームウェア、ソフトウェア、又は、それらの任意の組み合わせにおいて実装されてもよい。開示される複数の実施形態は、また、1又は複数のプロセッサによって読み取られ実行され得る、1又は複数の一時的又は非一時的機械可読(例えば、コンピュータ可読)記憶媒体によって運ばれる又はそれに格納されている複数の命令として実装されてよい。機械可読記憶媒体は、任意のストレージデバイス、メカニズム、又は機械によって可読な形態で情報を格納又は送信するための他の物理的構造(例えば、揮発性または不揮発性メモリ、メディアディスク又は他のメディアデバイス)として具現化されてもよい。
複数の図面において、いくつかの構造的又は方法の特徴が、複数の具体的な配置及び/又は順序で示されてよい。しかしながら、そのような複数の具体的な配置及び/又は複数の順序が必要とされなくてもよいことが理解されるべきである。むしろ、いくつかの実施形態において、そのような特徴は、例示的な複数の図において示されるものとは異なる態様及び/又は順序で構成されてもよい。加えて、特定の図において構造的又は方法の特徴を含むことにより、そのような特徴が全ての実施形態で必要とされることの示唆は意味しておらず、いくつかの実施形態では含まれなくてよく、又は、他の複数の特徴と組み合わされてもよい。
ここで図1を参照すると、例示的な実施形態において、ワークロード最適化、スケジューリング及び配置のためのシステム100は、ネットワーク108を介して通信している数個のコンピューティングラック102、管理インタフェース104、性能データサーバ106を含む。使用中、コンピューティングラック102のコントローラコンポーネントは、コンピューティングラック102のハードウェアコンポーネントに関連付けられたシステム測定基準、性能測定基準又は健全性測定基準を監視してよい。コントローラコンポーネントは、各要素について平均故障間隔値を予測するために用いられてよい各ハードウェアコンポーネントのための回帰モデルを決定する。コントローラコンポーネントは、また、コンピューティングラック102の複数のハードウェアコンポーネントで構成される各論理マシンについて、平均故障間隔値を決定してよい。コントローラコンポーネントは、例えば、複数の適切な警告又はアラームを生成し、メンテナンスセッションをスケジューリングし、あるいは同様の残りの寿命を持つ複数のコンポーネントから複数の論理マシンを構成することで、平均故障間隔値に基づいてコンピューティングラック102又はシステム100を管理してよい。従って、システム100は効率を改善し、複数のコンピューティングラック102のための複数のメンテナンスセッションの頻度を減らしてよい。
加えて、又は代替的に、コンピューティングラック102のコントローラコンポーネントは、使用中、実行されることになっているアプリケーションの記述を性能データサーバ106に送信してよい。それに応答して性能データサーバ106は、そのアプリケーション記述に関連付けられた予測ワークロードデータを送信する。予測ワークロードデータは、記述されたアプリケーションを実行することに関連付けられたコンピューティングラック102の様々なハードウェアコンポーネントについての複数の使用パターンを示す。性能データサーバ106は、多くのコンピューティングラック102から受信されたそのアプリケーションについての履歴ワークロードデータに基づいて、ワークロードデータを決定してよい。各コンピューティングラック102は、複数のハードウェア監視要素を用いて多数の性能測定基準を監視してよい。予想されるワークロードデータに基づいて、コンピューティングラック102は、アプリケーションに関連付けられたハードウェア故障の確率(例えば、予め定められた期間アプリケーションを実行する間に複数の特定のハードウェアコンポーネントが故障し得る確率)を決定する。故障の確率に基づいて、コンピューティングラック102は、複数の特定のハードウェアコンポーネント(例えば、最も低い故障の確率を持つ複数の要素)による実行のためのアプリケーションを計画してよく、またはアプリケーションに関連付けられた1又は複数のサービスレベルアグリーメントを検証してよい。従って、システムオペレータ(例えば、クラウドサービスプロバイダ、管理者等)は、顧客のアプリケーションによって、そのアプリケーションが実行される前に表されると予期される負荷のもとで、顧客のサービスレベルアグリーメント(SLA)をハードウェアコンポーネントの予期される寿命に一致させてよい。
加えて、又は代替的に、コンピューティングアプリケーション又は他の複数のワークロードは、使用中、システム100の利用可能な複数のコンピューティング要素(例えば、複数の計算ノード、メモリ、ストレージ、又はネットワーキング)を用いて任意の数のコンピューティングラック102に分散されてよい。管理インタフェース104は、例えば、複数のコンピューティングラック102の複数のコンピューティング要素の間における複数のワークロードの現在の分散及びスケジューリングを含む、現在のシステム状態のインタラクティブな可視化を生成する。管理インタフェース104は、可視化に応答して受信された人間の入力を、多数の機械可読のユーザ規定の最適化ルールに変換する。管理インタフェース104は、複数のユーザ規定の最適化ルール並びに複数の予め定められたゴール及び制約を用いてデータセンタワークロードを最適化(すなわち、システム100の複数のコンピューティング要素の間の複数のワークロードの配置及び/又はスケジューリングを最適化)する。ワークロードを最適化した後、管理インタフェース104は、システム状態をリフレッシュし、可視化及び最適化を繰り返す。従って、システム100は、複数の最適化アルゴリズムとの直観的な人間のインタラクションをサポートする「グレイボックスの最適化」システムであってよく、これにより、(最適化以外の分野の専門家を含む)複数のエンドユーザは、開発された解決策を改善するべくコンテクストの及び暗黙的な知識を最適化アルゴリズムに分け与える。システム100は、非常にヘテロジニアスである(すなわち、細分類された及び/又はモジュール式の)データセンタ環境における複数の内部(例えば、効率)及び/又は外部(例えば、サービス配信目標)の複数の制約を用いて、ワークロードの改善されたスケジューリング及び配置を可能にし得る。加えて、システム100は、複数のサービスプロバイダが、動作のコストを密に管理する一方でシステム100の全てのコンピューティング要素から最適に利益を得るサービスプロバイダの能力によって、複数の顧客に広範囲のサービスレベル及び複数のテンプレートを提供することを可能にし得る。加えて、管理インタフェース104により実行されるとして記載されたが、いくつかの実施形態では、それらの機能のいくつか又は全ては、1又は複数のコンピューティングラック102等、システム100の複数の他の要素によって実行され得る。
各コンピューティングラック102は、本明細書に記載される複数の機能を単独又は複数の他のコンピューティングラック102と組み合わせて実行することができるモジュール式コンピューティングデバイスとして具現化されてよい。例えば、コンピューティングラック102は、複数の計算トレイ、複数のストレージトレイ、複数のネットワークトレイ等、複数のラック取付けモジュール式コンピューティングユニット用の筐体、又は複数のサーバもしくはスイッチ等、従来のラックが搭載された複数の要素等として具現化されてよい。図1に示されるように、各コンピューティングラック102は、プールされたコンピュートエンクロージャ124(compute enclosure)、プールされたメモリエンクロージャ130、プールされたストレージエンクロージャ136、及びプールされたネットワークエンクロージャ142に結合されたラックコントローラ120及び相互接続122を例示的に含む。当然のことながら、各コンピューティングラック102は、複数の他の実施形態におけるサーバデバイス(例えば、電力分散システム、冷却システム、または様々な入出力デバイス)において一般に見られるもの等、複数の他の又は追加のコンポーネントを含んでよい。
いくつかの実施形態において、ラックコントローラ120、プールされたコンピュートエンクロージャ124、プールされたメモリエンクロージャ130、プールされたストレージエンクロージャ136、及びプールされたネットワークエンクロージャ142のそれぞれは、トレイ、拡張ボード、もしくはブレード、又は任意の他のフォームファクタとして具現化されてよいことは理解されるべきである。複数のそのような実施形態において、各エンクロージャは、アプリケーション又はワークロードに割り当てられ得る任意の数のコンピューティング要素を含んでよい。コンピューティングラック102が複数のトレイ、複数のブレード、又は複数の拡張ボードを含む複数の実施形態において、個々の要素は、置き換えられるか又はアップグレードされてよく、「ホットスワップ対応」のものであってよいことは理解されるべきである。例えば、いくつかの実施形態において、プールされたコンピュートエンクロージャ124は、複数のプロセッサ及び/又は処理/制御回路を含むCPUトレイとして具現化されてよい。複数のそのような実施形態において、追加の処理電力が、プールされたコンピュートエンクロージャ124を、より新しい及び/又はより有力な複数のプロセッサを含む別のプールされたコンピュートエンクロージャ124によりスワップアウトすることによってコンピューティングラック102に追加されてよい。
プールされたコンピュートエンクロージャ124は、計算トレイ、拡張ボード、ブレード、筐体、又は他のモジュール式ユニット等の任意のモジュール式コンピューティングユニットとして具現化されてよい。プールされたコンピュートエンクロージャ124は、1又は複数のプロセッサ126を含んでよい。例えば、プールされたコンピュートエンクロージャ124は、それぞれが1又は複数のプロセッサ126を含む多数の計算モジュール又はノードとして具現化されてよい。各プロセッサ126は、本明細書に記載された複数の機能を実行することが可能な任意のタイプのプロセッサとして具現化されてよい。例えば、各プロセッサは、1又は複数のシングルコアもしくはマルチコアプロセッサ、デジタル信号プロセッサ、マイクロコントローラ、又は他のプロセッサもしくは処理/制御回路として具現化されてよい。プロセッサ126は、ヘテロジニアスであってよい。例えば、複数のプロセッサ126のいくつかは、高性能サーバプロセッサとして具現化されてよく、その他の複数のプロセッサ126は、より高密度の配置に好適な複数の低電力のプロセッサとして具現化されてよい。プールされたコンピュートエンクロージャ124は、測定基準コンポーネント128を含んでよい。測定基準コンポーネント128は、プールされたコンピュートエンクロージャ124のプロセッサ126及び/又は複数の他のコンポーネントの複数の性能測定基準を生成、測定、又はそうでなければキャプチャすることが可能な任意の性能カウンタ、性能監視ユニット、又は他のハードウェアモニタとして具現化されてよい。
プールされたメモリエンクロージャ130は、メモリトレイ、拡張ボード、ブレード、筐体、又は他のモジュール式ユニット等の任意のモジュール式のメモリユニットとして具現化されてよい。プールされたメモリエンクロージャ130は、プールされたメモリ132を含む。プールされたメモリ132は、プールされたコンピュートエンクロージャ124の1又は複数のプロセッサ126による使用のために分割され、配分され、又はそうでなければ割り当てられることが可能である任意のメモリとして具現化されてよい。例えば、プールされたメモリ132は、多数の従来のRAM DIMM等、揮発性もしくは不揮発性メモリに結合されたプールされたメモリコントローラとして具現化されてよい。動作中、プールされたメモリエンクロージャ130は、複数のオペレーティングシステム、複数の仮想機械モニタ、及び複数のユーザワークロード等、コンピューティングラック102の動作中に用いられる様々なデータ及びソフトウェアを格納してよい。プールされたメモリエンクロージャ130は、測定基準コンポーネント134を含んでよい。測定基準コンポーネント134は、プールされたメモリエンクロージャ130のプールされたメモリ132及び/又は複数の他のコンポーネントの複数の性能測定基準を生成、測定、又はそうでなければキャプチャすることができる任意の性能カウンタ、性能監視ユニット、又は他のハードウェアモニタとして具現化されてよい。
同様に、プールされたストレージエンクロージャ136は、ストレージトレイ、拡張ボード、ブレード、筐体、又は他のモジュール式ユニット等、任意のモジュール式ストレージユニットとして具現化されてよい。プールされたストレージエンクロージャ136は、プールされたストレージ138を含む。プールされたストレージ138は、プールされたコンピュートエンクロージャ124のプロセッサ126の1又は複数による使用のために分割され、割り当てられ、又はそうでなければ割り当てられることが可能な任意のタイプのデータストレージとして具現化されてよい。例えば、プールされたストレージ138は、1又は複数のメモリデバイス及び回路、メモリカード、ハードディスクドライブ、ソリッドステートドライブ、又は他のデータストレージデバイスとして具現化されてよい。例えば、プールされたストレージ138は、コンピューティングラック102によって初期化及び/又は実行されることになっている1又は複数のオペレーティングシステムを格納するように構成されてよい。プールされたストレージエンクロージャ136は、測定基準コンポーネント140を含んでよい。測定基準コンポーネント140は、プールされたストレージエンクロージャ136のプールされたストレージ138及び/又は他のコンポーネントの複数の性能測定基準を生成、測定、又はそうでなければキャプチャすることが可能な任意の性能カウンタ、性能監視ユニット、又は他のハードウェアモニタとして具現化されてよい。
同様に、プールされたネットワークエンクロージャ142は、ネットワークトレイ、拡張ボード、ブレード、筐体、又は他のモジュール式ユニット等、任意のモジュール式ネットワークユニットとして具現化されてよい。プールされたネットワークエンクロージャ142は、複数のプールされたネットワークデバイス144を含む。プールされたネットワークデバイス144は、プールされたコンピュートエンクロージャ124のプロセッサ126の1又は複数による使用のために分割され、割り当てられ、又はそうでなければ割り当てられることが可能な、任意の通信回路、デバイス、又はそれらの集合として具現化されてよい。例えば、プールされたネットワークデバイス144は、任意の数のネットワークインタフェースポート、カード、又はスイッチとして具現化されてよい。いくつかの実施形態において、プールされたネットワークデバイス144は、ソフトウェア規定のネットワーク(SDN)において動作することが可能であってよい。プールされたネットワークデバイス144は、任意の1又は複数の通信技術(例えば、有線又は無線通信)及び複数の関連するプロトコル(例えばイーサネット(登録商標)、Bluetooth(登録商標)、Wi‐Fi(登録商標)、WiMAX等)を用いて、そのような通信をもたらすように構成され得る。
プールされたコンピュートエンクロージャ124、プールされたメモリエンクロージャ130、プールされたストレージエンクロージャ136、及びプールされたネットワークエンクロージャ142は、相互接続122を介して互いに、且つ複数の他のコンピューティングラック102に結合されている。相互接続122は、コンピューティングラック102の複数のコンピューティング要素間のデータ転送を容易にするべく、複数のメモリコントローラハブ、入出力コントロールハブ、ファームウェアデバイス、通信リンク(すなわち、ポイントツーポイントリンク、バスリンク、ワイヤ、ケーブル、ライトガイド、プリント回路基板トレース等)及び/又は複数の他のコンポーネント及びサブシステムとして具現化されてよく、又はそうでなければそれらを含んでよい。例えば、いくつかの実施形態において、相互接続122は、シリコンフォトニックスイッチファブリック及び多数の光相互接続として具現化されてよく、又はそれらを含んでよい。加えて、又は代替的に、いくつかの実施形態において、相互接続122は、トップオブラックスイッチ(top−of−rack switch)として具現化されてよく、又はそれを含んでよい。
ラックコントローラ120は、コンピューティングラック102のためのワークロード管理及びオーケストレーション(orchestration)機能を実行することができ、及びそうでなければ本明細書において記載される複数の機能を実行することができる任意のコンピューティングノード又は他のコンピューティングデバイスとして具現化されてよい。例えば、ラックコントローラ120は、1又は複数のコンピュータサーバ、埋め込み型コンピューティングデバイス、管理された複数のネットワークデバイス、管理された複数のスイッチ、又は複数の他の計算デバイスとして具現化されてよい。いくつかの実施形態において、ラックコントローラ120は、例えばトップオブラックスイッチにおいて、相互接続122に組み込まれてよく、又はそうでなければそれと組み合わされてよい。
上記のように、いくつかの実施形態において、システム100は、管理インタフェース104を含んでよい。管理インタフェース104は、ユーザがシステム100を編成し、運営し、又はそうでなければ管理するためのインタラクティブなインタフェースを提供するように構成されている。管理インタフェース104は、コンピュータ、マルチプロセッサシステム、サーバ、ラックマウント式サーバ、ブレードサーバ、ラップトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータ、ウェアラブルコンピューティングデバイス、ネットワーク機器、ウェブ機器、分散コンピューテイングシステム、プロセッサベースのシステム及び/又は家庭用電子機器を限定することなく含む、本明細書に記載される複数の機能を実行することが可能な任意のタイプの計算デバイス又はコンピュータデバイスとして具現化されてよい。いくつかの実施形態において、管理インタフェース104は、例えばいくつか又は全ての計算機能が複数のコンピューティングラック102により実行され、且つ複数のユーザインタフェース機能が管理インタフェース104により実行される分散システムとして具現化されてよい。加えて、いくつかの実施形態において、管理インタフェース140は、ネットワーク108をわたって分散された複数のコンピューティングデバイスから形成され、パブリック又はプライベートクラウドにおいて動作する「仮想サーバ」として具現化されてよい。従って、管理インタフェース104は、単一サーバコンピューティングデバイスとして具現化されることが図1に示されるが、管理インタフェース104は、以下に記載される機能を容易にするべく共に協働する複数のデバイスとして具現化されてよいことは理解されるべきである。図1に示されるように、管理インタフェース104は、プロセッサ140、入出力サブシステム142、メモリ144、データストレージデバイス146、及び通信回路148を例示的に含む。当然のことながら、管理インタフェース104は、複数の他の実施形態において、ワークステーションにおいて一般に見られる複数のもの(例えば、様々な入出力デバイス)等、複数の他の又は追加のコンポーネントを含んでよい。加えて、いくつかの実施形態において、複数の例示的な要素のうち1又は複数は、別の要素に組み込まれてよく、又はそうでなければその一部を形成してもよい。例えば、メモリ144又はそれらの複数部分は、いくつかの実施形態において、プロセッサ140に組み込まれてよい。
プロセッサ140は、本明細書において記載される複数の機能を実行することが可能な任意のタイプのプロセッサとして具現化されてよい。プロセッサ140は、1又は複数のシングルコアもしくはマルチコアプロセッサ、デジタル信号プロセッサ、マイクロコントローラ、又は他のプロセッサもしくは処理/制御回路として具現化されてよい。同様に、メモリ144は、本明細書において記載される複数の機能を実行することが可能な任意のタイプの揮発性または不揮発性メモリ又はデータストレージとして具現化されてよい。動作中、メモリ144は、複数のオペレーティングシステム、複数のアプリケーション、複数のプログラム、複数のライブラリ、及び複数のドライバ等、管理インタフェース104の動作中に用いられる様々なデータ及びソフトウェアを格納してよい。メモリ144は、管理インタフェース104のプロセッサ140、メモリ144、及び複数の他のコンポーネントを用いて複数の入出力操作を容易にするべく、電気回路及び/又は複数の要素として具現化され得るI/Oサブシステム142を介して、プロセッサ140に通信可能に結合される。例えば、I/Oサブシステム142は、入出力操作を容易にするべく、複数のメモリコントローラハブ、複数の入出力コントロールハブ、複数の統合センサハブ、複数のファームウェアデバイス、複数の通信リンク(すなわち、複数のポイントツーポイントリンク、複数のバスリンク、複数のワイヤ、複数のケーブル、複数のライトガイド、複数のプリント回路基板トレース等)及び/又は複数の他のコンポーネント及びサブシステムとして具現化されてよく、又はそうでなければそれらを含んでよい。いくつかの実施形態において、I/Oサブシステム142は、システムオンチップ(SoC)の一部を形成してよく、管理インタフェース104のプロセッサ140、メモリ144及び複数の他のコンポーネントと共に単一の統合回路チップ上に組み込まれてよい。
データストレージデバイス146は、例えば、複数のメモリデバイス及び回路、複数のメモリカード、複数のハードディスクドライブ、複数のソリッドステートドライブ、又は、複数の他のデータストレージデバイス等の、データの短期間もしくは長期間保存用に構成された任意のタイプのデバイスまたは複数のデバイスとして具現化されてもよい。管理インタフェース104の通信回路148は、ネットワーク経由108を介して管理インタフェース104、複数のコンピューティングラック102及び/又は複数の他のリモートデバイスの間における複数の通信を可能にすることができる任意の通信回路、デバイス、又はそれらの集合として具現化されてよい。通信回路148は、任意の1又は複数の通信技術(例えば、有線又は無線通信)及び複数の関連するプロトコル(例えばイーサネット(登録商標)、Bluetooth(登録商標)、Wi‐Fi(登録商標)、WiMAX等)を用いて、そのような通信をもたらすように構成され得る。
管理インタフェース104は、ディスプレイ150をさらに含む。管理インタフェース104のディスプレイ150は、液晶ディスプレイ(LCD)、発光ダイオード(LED)、プラズマディスプレイ、ブラウン管(CRT)又は他のタイプのディスプレイデバイス等のデジタル情報を表示することが可能な任意のタイプのディスプレイとして具現化されてよい。以下にさらに記載されるように、ディスプレイ150は、システム100の管理用のインタラクティブグラフィカルユーザインタフェースを提示してよい。
上記のように、いくつかの実施形態において、システム100は、性能データサーバ106を含んでよい。性能データサーバ106は、ワークロードデータを特定のアプリケーション記述に関連付けるアプリケーション性能データベース160を維持するように構成される。性能データサーバ106は、コンピュータ、マルチプロセッサシステム、サーバ、ラックマウント式サーバ、ブレードサーバ、ラップトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータ、ウェアラブルコンピューティングデバイス、ネットワーク機器、ウェブ機器、分散コンピューテイングシステム、プロセッサベースのシステム及び/又は家庭用電子機器を限定することなく含む、本明細書に記載される複数の機能を実行することが可能な任意のタイプの計算もしくはコンピュータデバイスとして具現化されてよい。性能データサーバ106は、サーバ又はプロセッサ、I/Oサブシステム、メモリ、データストレージデバイス、通信回路及び/又は他の複数の周辺機器等、同様のコンピューティングデバイスにおいて一般に見られる複数の要素及びデバイスを含んでよい。性能データサーバ106のそれらの個々の要素は、複数のコンピューティングラック102及び/又は管理インタフェース104の対応する複数のコンポーネントに類似してよく、その記述は、性能データサーバ106の対応する複数のコンポーネントに適用可能であり、本開示を不明確にしないように本明細書では繰り返されない。加えて、いくつかの実施形態において、性能データサーバ106は、ネットワーク108にわたって分散される複数のコンピューティングデバイスから形成され、パブリック又はプライベートクラウドにおいて動作する「仮想サーバ」として具現化されてよい。従って、性能データサーバ106は、単一サーバコンピューティングデバイスとして具現化されることが図1に示されるが、性能データサーバ106は、以下に記載される複数の機能を容易にするべく共に協働する複数のデバイスとして具現化されてよいことは理解されるべきである。
以下においてより詳細に検討されるように、複数のコンピューティングラック102、管理インタフェース104及び性能データサーバ106は、ネットワーク108を介して、互いに及び/又はシステム100の複数の他のデバイスとデータを送受信するように構成されてよい。ネットワーク108は、任意の数の様々な有線及び/又は無線ネットワークとして具現化されてよい。例えば、ネットワーク108は、有線又は無線ローカルエリアネットワーク(LAN)、有線又は無線ワイドエリアネットワーク(WAN)、セルラーネットワーク及び/又はインターネット等、公にアクセス可能なグローバルネットワークとして具現化されてよく、又はそうでなければそれらを含んでよい。そのように、ネットワーク108は、システム100の複数のデバイス間の複数の通信を容易にするべく、追加の複数のコンピュータ、複数のルータ、及び、複数のスイッチ等の任意の数の追加デバイスを含んでよい。
ラックスケールアーキテクチャ(RSA)システムとして示されているが、複数の他の実施形態において、システム100は、従来のデータセンタ、コンピューティングクラスタ、又は複数のコンピューティングマシンの他の集合として具現化されてよい。例えば、システム100は、ネットワークを介して通信においてラックマウントの又は独立している多数の計算ノード、ネットワーク切り替えファブリック、ストレージエリアネットワーク、クラウドコントローラ、又は他の複数の典型的なデータセンタ要素を含んでよい。加えて、いくつかの実施形態において、1又は複数の例示的な要素が別の要素に組み込まれてよく、又はそうでなければその一部を形成してよい。例えば、1又は複数のプールされたメモリエンクロージャ130又はそれらの複数部分は、いくつかの実施形態において、複数のプールされたコンピュートエンクロージャ124の1又は複数に組み込まれてよい。同様に、各コンピューティングラック102は、単一のプールされたコンピュートエンクロージャ124、プールされたメモリエンクロージャ130、プールされたストレージエンクロージャ136及びプールされたネットワークエンクロージャ142を含むとして示されているが、各コンピューティングラック102は、それらのモジュール式エンクロージャのうち任意の数のモジュール式エンクロージャ及び/又はそれらの任意の組み合わせを含んでよいことは理解されるべきである。
ここで図2を参照すると、例示的な実施形態においてラックコントローラ120は、環境200を動作中に確立する。例示的な環境200は、性能監視モジュール202、分析モジュール204及びデータセンタ管理モジュール210を含む。環境200の様々なモジュールは、ハードウェア、ファームウェア、ソフトウェア、又はそれらの組み合わせとして具現化されてよい。例えば、環境200の複数のモジュール、論理及び複数の他のコンポーネントのそれぞれは、ラックコントローラ120のプロセッサ又は他の複数のハードウェアコンポーネントの一部を形成してよく、又はそうでなければそれらによって確立されてよい。そのように、いくつかの実施形態において、環境200の複数のモジュールのうち1又は複数は、複数の電気デバイスの回路又は集合(例えば、性能監視回路、解析回路等)として具現化されてよい。加えて、又は代替的に、いくつかの実施形態において、環境200の一部又は全ては、1又は複数のプールされたコンピュートエンクロージャ124又は複数のコンピューティングラック102の複数の他のコンポーネントによって等、システム100の他の複数のエンティティ(entity)によって確立されてよい。
性能監視モジュール202は、コンピューティングラック102の複数のハードウェアコンポーネントと関連付けられた複数の測定基準を受信するように構成されている。複数のハードウェアコンポーネントは、複数の計算リソース、複数のメモリリソース、複数のストレージリソース及び/又は複数のネットワークリソースを含んでよい。以下にさらに記載されるように、複数の測定基準は、複数のシステム測定基準、複数の性能測定基準及び/又は複数の健全性測定基準を含んでよい。いくつかの実施形態において、性能監視モジュール202は、また、複数のサービスに関連付けられた複数の性能指標又はコンピューティングラック102により実行される複数の他のコンピューティングアプリケーションを受信するように構成されてもよい。
分析モジュール204は、関連する複数の測定基準に基づいて、コンピューティングラック102の各ハードウェアコンポーネントのための回帰モデルを決定するように構成されている。分析モジュール204は、関連する回帰モデルに基づいて各ハードウェアコンポーネントについての平均故障時間(MTTF)値を決定し、複数のハードウェアコンポーネントから構成される論理マシンについてのMTTF値を決定するようにさらに構成されている。平均故障時間は、複数のサービス保証の品質又は1又は複数のサービスレベルアグリーメントによって確立される他の複数のサービス配信目標に基づいてよい。分析モジュール204は、複数のハードウェアコンポーネント及び/又は複数の論理マシンについてのMTTF値を含む1又は複数のMTTFテーブルを維持してよい。分析モジュール204のそれらの機能は、1又は複数のサブモジュールによって、例えばMTTFテーブルモジュール206又はサービスレベルアグリーメント(SLA)モジュール208によって、実行されてよい。
データセンタ管理モジュール210は、コンピューティングラック102及び/又はシステム100を計算された平均故障間隔値に基づいて管理するように構成されている。データセンタ管理モジュール210は、各ハードウェアコンポーネントについての平均故障間隔値を、例えば複数の警告又はアラームを作成することによってユーザに通知するように構成されてよい。データセンタ管理モジュール210は、各論理マシンに関連付けられた平均故障間隔値に基づいて複数のメンテナンスセッションのための未来時を決定するように構成されてよい。データセンタ管理モジュール210は、複数のハードウェアコンポーネントを、関連する複数の平均故障間隔値に基づいて複数の論理マシン内に構成するように構成されてよい。例えば、データセンタ管理モジュール210は、同様の平均故障間隔値を有する複数のハードウェアコンポーネントを含む複数の論理マシンを作成するように構成されてよい。データセンタ管理モジュール210のそれらの機能は、1又は複数のサブモジュールによって、例えば通知モジュール212、計画的メンテナンスモジュール214、又は組立てモジュール216によって実行されてよい。
ここで図3を参照すると、ラックコントローラ120は、使用中、データセンタ管理のための方法300を実行してよい。方法300は、ブロック302で開始し、そこでラックコントローラ120はコンピューティングラック102の1又は複数のハードウェアコンポーネントのための複数の測定基準を受信する。複数の測定基準は、コンポーネント寿命予測を可能にする任意のタイプのデータとして具現化されてよい。複数の測定基準は、複数のシステム測定基準(例えば、複数の製造仕様、及び温度もしくは電力等の要素において直接測定可能な複数の値)又は健全性及び性能測定基準(例えば、帯域幅、レイテンシ、もしくはスループット等の要素の機能に関連する複数の測定基準)を含んでよい。複数の測定基準は、複数のサブコンポーネントログファイルへとコンパイルされてよく、次に処理及びストレージ用にラックコントローラ120に送信されてよい。
例示的には、プールされたコンピュートエンクロージャ124について、複数のシステム測定基準は、完全なCPU仕様、性能カウンタ監視データ(例えば、プロセッサ126によってリタイアされた複数の命令におけるデータ、プロセッサ126周波数、オンボードメモリコントローラ帯域幅、キャッシュミス統計値等)、温度データ、電力サイクルカウンタ、合計使用時間の複数のカウンタ又は複数の他の測定基準として具現化されてよい。プールされたコンピュートエンクロージャ124のための複数の健全性測定基準は、複数のカーネルパニックカウンタ(kernel panic counters)、複数のプロセッサ除外カウンタ、又は複数の他の測定基準として具現化されてよい。プールされたコンピュートエンクロージャ124のための複数の性能測定基準は、複数の一秒当たり命令カウンタ(instructions−per−second counters)(例えば、MIPS)又は複数の他の測定基準として具現化されてよい。
例示的には、プールされたメモリエンクロージャ130について、複数のシステム測定基準は、複数の完全な仕様、温度データ、複数の電力サイクルカウンタ、合計使用時間の複数のカウンタ、複数のメモリアクセスカウンタ、又は複数の他の測定基準として具現化されてよい。プールされたメモリエンクロージャ130についての複数の健全性測定基準は、複数のパリティエラーカウンタ又は複数の他の測定基準として具現化されてよい。プールされたメモリエンクロージャ130についての複数の性能測定基準は、観測されたメモリ帯域幅又は複数の他の測定基準として具現化されてよい。
例示的には、プールされたストレージエンクロージャ136について、複数のシステム測定基準は、複数の完全な仕様(例えば、ソリッドステートドライブ、ハードディスクドライブ、キャッシュサイズ等)、複数の読み取り/書き込みカウンタ、複数の秒当たりのI/Oオペレーション(IOPS)カウンタ、合計使用時間の複数のカウンタ、温度データ、又は複数の他の測定基準を含むストレージタイプとして具現化されてよい。プールされたストレージエンクロージャ136についての複数の健全性測定基準は、複数のブロック障害カウンタ、複数のページフォルトカウンタ、シークタイムデータ、レイテンシデータ、又は複数の他の測定基準として具現化されてよい。プールされたストレージエンクロージャ136についての複数の性能測定基準は、ランダム読み取りスループットデータ又は複数の他の測定基準として具現化されてよい。
例示的には、プールされたネットワークエンクロージャ142について、複数のシステム測定基準は、複数の完全な仕様(例えば、100Mbps、1000Mbps等)、温度データ、複数の電力サイクルカウンタ、合計使用時間の複数のカウンタ、又は複数の他の測定基準を含むネットワーク技術タイプとして具現化されてよい。プールされたネットワークエンクロージャ142について、複数の健全性測定基準は、複数のデータ受信及び送信カウンタ、複数の送受信エラーカウンタ、及び複数の他の測定基準として具現化されてよい。プールされたネットワークエンクロージャ142について、複数の性能測定基準は、帯域幅データ又は複数の他の測定基準として具現化されてよい。
いくつかの実施形態において、ブロック304では、ラックコントローラ120が1又は複数の専用ハードウェア監視コンポーネントから複数の測定基準を受信してよい。例えば、ラックコントローラ120は、プールされたコンピュートエンクロージャ124の測定基準コンポーネント128、プールされたメモリエンクロージャ130の測定基準コンポーネント134、プールされたストレージエンクロージャ136の測定基準コンポーネント140、又はプールされたネットワークエンクロージャ142の測定基準コンポーネント146から複数の測定基準を受信してよい。ラックコントローラ120は、また、1又は複数のファームウェアモジュール、埋め込み型ファームウェアデバイス、複数のマネージャビリティエンジン(manageability engine)、又はコンピューティングラック102の他の複数の帯域外管理要素からも複数の測定基準を受信してよい。いくつかの実施形態において、ブロック306では、ラックコントローラ120が1又は複数のソフトウェアモニタから複数の測定基準を受信してよい。複数のソフトウェアモニタから複数の測定基準を収集することにより、コンピューティングラック102によって実行される他のソフトウェアを変更するか、又はそうでなければそれに合わせる必要があるかもしれない。
ブロック308で、ラックコントローラ120は、関連する残りのハードウェア寿命を推定するために用いられ得るコンピューティングラック102の各要素について回帰モデルを生成する。回帰モデルは、数式y=Xbを用いて生成されてよい。ここでyは応答ベクトル(例えば、健全性又は性能測定基準のいずれか)であり、Xは複数の観測(例えば、複数のシステム測定基準)のマトリックスであり、bは適合パラメータの推定値を表すベクトルである。
いくつかの実施形態において、ブロック310で、ラックコントローラ120は線形回帰モデリングを実行する。ラックコントローラ120は、ロバスト多線形回帰アプローチを用いてよい。ラックコントローラ120は、複二乗重み関数を用いる(QR分解を用いて実現される)マトリックス因数分解で最小二乗を反復して重み付け直してよい。従って、線形回帰モデリングは、複数の大規模なデータセンタにより必要とされるように大規模で効率的に計算されてよい。
いくつかの実施形態において、ブロック312で、ラックコントローラ120が非線形回帰モデリングを実行する。ラックコントローラ120は、一般化線形モデル(GLM)を用いる。ラックコントローラ120は、ロジスティック回帰を生成するためにプロビットリンク及び2項分布を用いる。非線形回帰モデリングは、線形の場合に複数の二乗平均平方根エラーが考慮されるべきであるときに好ましい。
ブロック314で、ラックコントローラ120は、回帰モデルに基づいて各ハードウェアコンポーネントについての平均故障時間(MTTF)値を決定する。回帰モデルは、複数のハードウェアコンポーネントの健全性又は性能に対する将来的な複数の変更を(例えば、健全性測定基準又は性能測定基準の将来値を予測することによって)予測するために用いられてよい。複数の予測測定基準は、複数の製造仕様又は複数のサービスレベルアグリーメント(SLA)要件(例えば、複数のサービス品質要件、又は複数のサービスレベル目標、又は複数の他の要件)等、複数の予め定められた閾値に比較されてよい。予測測定基準及び複数の予め定められた閾値が交わるときの時点は、予測されるコンポーネント故障を表し、この時点までの間隔は平均故障時間(MTTF)である。ラックコントローラ120は、各要素についてのMTTF値を、1又は複数のデータテーブル、データベース、又は他のデータソース内に格納してよい。
ブロック316で、ラックコントローラ120は、データセンタの各論理マシンについてMTTFを決定する。上記のように、コンピューティングラック102の複数の要素は、複数のコンピューティングアプリケーションを実行する、又はそうでなければ複数のサービスを提供するために用いられ得る1又は複数の論理マシンへと構成されてよい。論理マシンの寿命は、その構成要素である要素の最も短い寿命として決定されてよい。例えば、計算、ストレージ、ネットワーク、及びメモリリソースで構成される論理マシンについて、ラックコントローラ120は、論理マシンについてのMTTFを、その論理マシンを構成する計算、ストレージ、ネットワーク、及びメモリコンポーネントの複数のMTTFの最小値として決定してよい。
ブロック318で、ラックコントローラ120は、コンピューティングラック102及び/又はシステム100を、計算された複数のMTTF値に基づいて管理してよい。いくつかの実施形態において、ブロック320で、ラックコントローラ120は、管理者又は他のユーザに、ハードウェアコンポーネントの残りの寿命について通知してよい。複数のささいなエラーが過度に頻繁に出現し始めた場合、又は要素の性能が、SLAが要求するものよりも下回る場合、要素が置き換え用にマーキングされてよい。ラックコントローラ120は、例えば、1又は複数のアラーム又は警告を設定し、起こり得るコンポーネント故障について管理者に通知してよい。例えば、ラックコントローラ120は、故障を回避するべく、ある一定時間前に置き換えられることになっているコンポーネントを識別するアラームを生成してよく、又はある一定時間内にメンテナンスを必要とする要素を識別する警告を生成してよい。従って、ラックコントローラ120は、複数の管理者が置き換えを必要とする複数のサブコンポーネントを識別し、論理マシンにおける利用の影響を理解することを可能にし得る。
いくつかの実施形態において、ブロック322で、ラックコントローラ120は、論理マシンの残りの寿命に基づいてメンテナンスを計画してよい。複数の機能しなくなる論理マシンは、機能しなくなる要素が置き換えられるときに仮想再アセンブルプロセスを経てよい。再アセンブル中、論理マシンは、機能停止されてよい。従って、配信されたサービス品質又はSLAは深刻に低下し得る。論理マシンのメンテナンスを、それらの予測されるMTTF前に複数の要素を置き換えるようにスケジューリングすることが、計画外のダウンタイムを阻止することに役立つかもしれない。いくつかの実施形態において、ブロック324で、ラックコントローラ102は、各論理マシンによって実行されるサービスの複数の性能指標又は他のコンピューティングアプリケーションに基づいてメンテナンスをさらに計画してよい。ラックコントローラ120は、例えば、論理マシンによってサポートされるサービスがその最もビジーでない期間にある場合、論理マシンのためのメンテナンスセッションを計画してよい。
いくつかの実施形態において、ブロック326で、ラックコントローラ120は、同様の残りの寿命を持つ複数のハードウェアコンポーネントを用いて論理マシンを構成してよい。割り当てプロセス中、ラックコントローラ120は、複数の論理マシンを組み立てるべく、計算、ストレージ、ネットワーク、又はメモリコンポーネントの複数のプールに対してクエリを行ってよい。ラックコントローラ120は、複数のMTTF値のための1又は複数のデータソースにクエリを行ってよく、選択プロセスで各要素について予測される複数の故障日を組み込んでよい。同様の寿命を持つ複数の要素から複数の論理マシンを構成することにより、複数の要素が、それぞれの計画的メンテナンスセッションにおいて置き換えられてよく、それにより、複数の繰り返されるメンテナンスセッションが減らされるかもしれなく、そうでなければサービス品質が改善されるかもしれない。コンピューティングラック102及び/又はデータセンタを管理した後、方法300は、ブロック302に引き返し、複数のハードウェアコンポーネントについて複数の測定基準の監視を継続する。
図4をここで参照すると、いくつかの実施形態において、ラックコントローラ120は、付加的に又は代替的に、環境400を動作中に確立する。例示的な環境400は、オーケストレーションモジュール402、ハードウェア故障予測モジュール404、スケジューリングモジュール406、サービスレベルアグリーメントモジュール408、及び性能監視モジュール410を含む。環境400の様々なモジュールは、ハードウェア、ファームウェア、ソフトウェア、又はそれらの組み合わせとして具現化されてよい。例えば、環境400の複数のモジュール、論理、及び複数の他のコンポーネントのそれぞれは、ラックコントローラ120のプロセッサもしくは他の複数のハードウェアコンポーネントの一部を形成してよく、又はそうでなければそれによって確立されてよい。そのように、いくつかの実施形態において、環境400の複数のモジュールの1又は複数は、複数の電気デバイスの回路又は集合(例えば、オーケストレーション回路、ハードウェア故障予測回路等)として具現化されてよい。
オーケストレーションモジュール402は、コンピューティングラック102によって実行され得るアプリケーションの記述を受信し、アプリケーション記述を性能データサーバ106に送信し、それに応答してアプリケーションに関連付けられた予測ワークロードデータを性能データサーバ106から受信するように構成されている。以下に記載されるように、予測ワークロードデータは、コンピューティングラック102の1又は複数のハードウェアコンポーネント(例えば、計算リソース、メモリリソース、ストレージリソース、又はネットワークリソース)の使用パターンを示し、多くの他のコンピューティングラック102から生成されてよく、又はそうでなければそれらから供給されてもよい。
ハードウェア故障予測モジュール404は、予想されるワークロードデータに基づいて、コンピューティングラック102の1又は複数のハードウェアコンポーネントの故障の確率を決定するように構成されている。ハードウェア故障予測モジュール404は、また、複数のハードウェアコンポーネントに関連付けられたローカルに格納された使用履歴データ等、他のデータを考慮してもよい。ハードウェア故障予測モジュール404は、その確率の決定を、アプリケーションを実行するのに利用可能な複数のハードウェアコンポーネントに限ってよい。
スケジューリングモジュール406は、アプリケーションを実行するのに利用可能なコンピューティングラック102の複数のハードウェアコンポーネントを識別し、利用可能なハードウェアコンポーネントの各々の故障の確率に基づいて、コンピューティングアプリケーションを実行するのに利用可能なハードウェアコンポーネントを選択するように構成されている。
サービスレベルアグリーメントモジュール408は、コンピューティングアプリケーションに関連付けられたサービスレベルアグリーメント(SLA)が、ハードウェアコンポーネントの故障の確率によって満たされるかどうかを決定するように構成されている。サービスレベルアグリーメントモジュール408は、ハードウェアコンポーネントが、予め定められた期間内にアプリケーションを実行する間に故障する確率が、アプリケーション(例えば、アップタイム、信頼性、又は他のサービス配信目標(SDO)及びサービスレベル目標(SLO)ゴール)に関連付けられた1又は複数のSLAゴールを満たすかどうかを決定してよい。
性能監視モジュール410は、例えば、ハードウェア測定基準コンポーネント128、134、140、146から、コンピューティングラック102の複数のハードウェアコンポーネントと関連付けられた複数のハードウェア性能測定基準を収集するように構成されている。性能監視モジュール410は、例えば、複数の性能測定基準に基づいて1又は複数の正規化された波形を生成することによって、複数のハードウェア性能測定基準に基づいて、(性能データサーバ106から受信された予測ワークロードデータと同様に)ワークロードデータを決定するように構成されている。性能監視モジュール410は、コンピューティングラック102によって実行される1又は複数の現在のアプリケーションを識別し、それらの1又は複数のアプリケーションのアプリケーション記述をワークロードデータと関連付けるように構成されている。性能監視モジュール410は、ワークロードデータ及び1又は複数の現在のアプリケーションの1又は複数のアプリケーション記述を、性能データサーバ106に送信するように構成されている。
図4をさらに参照すると、例示的な実施形態において、性能データサーバ106が環境420を動作中に確立する。例示的な環境420は、アプリケーション性能データベースモジュール422及び通信モジュール424を含む。環境420の様々なモジュールは、ハードウェア、ファームウェア、ソフトウェア、又はそれらの組み合わせとして具現化されてよい。例えば、環境420の複数のモジュール、論理、及び複数の他のコンポーネントのそれぞれは、性能データサーバ106のプロセッサ又は他の複数のハードウェアコンポーネントの一部を形成してよく、又はそうでなければそれにより確立されてよい。そのように、いくつかの実施形態において、環境420の1又は複数のモジュールは、複数の電気デバイスの回路又は集合(例えば、アプリケーション性能データベース回路又は通信回路)として具現化されてよい。
アプリケーション性能データベースモジュール422は、例えばアプリケーション性能データベース160から、アプリケーション記述に関連付けられたワークロードデータを取り出すように構成されている。上記のように、ワークロードデータは、1又は複数のコンピューティングラック102から受信された履歴ワークロードデータであってよい。アプリケーション性能データベースモジュール422は、アプリケーション記述に関連付けられた履歴ワークロードデータが存在するかどうかを決定し、結果が否定的な場合、アプリケーション記述について推定ワークロードデータを生成するようにさらに構成されている。アプリケーション性能データベースモジュール422は、後に、推定ワークロードデータをコンピューティングラック102から受信された履歴ワークロードデータに置き換えてよい。
通信モジュール424は、1又は複数のコンピューティングアプリケーションの履歴ワークロードデータ及び複数の関連する記述を複数のコンピューティングラック102から受信するように構成されている。通信モジュール424は、コンピューティングラック102からアプリケーション記述を含む複数のクエリを受信し、複数のクエリに応答して、アプリケーション記述に関連付けられたワークロードデータを、複数のコンピューティングラック102に送信するようにさらに構成されている。従って、ワークロードデータが、性能データサーバ106から多くのコンピューティングラック102に広められてよい。
図4をさらに参照すると、例示的な実施形態において、管理インタフェース104が、環境440を動作中に確立する。例示的な環境440は、最適化エンジンモジュール442、システム状態モジュール444、インタラクティブ可視化モジュール446、及びインタラクション変換モジュール448を含む。環境440の様々なモジュールは、ハードウェア、ファームウェア、ソフトウェア、又はそれらの組み合わせとして具現化されてよい。例えば、環境440の複数のモジュール、論理、及び複数の他のコンポーネントのそれぞれは、管理インタフェース104のプロセッサ140又は複数の他のハードウェアコンポーネントの一部を形成してよく、又はそうでなければそれらによって確立されてよい。そのように、いくつかの実施形態において、環境440の複数のモジュールの1又は複数は、複数の電気デバイスの回路又は集合(例えば、オーケストレーション回路、ハードウェア故障予測回路等)として具現化されてよい。いくつかの実施形態において、環境440の一部又は全ては、複数のコンピューティングラック102のラックコントローラ120又は複数の他のコンポーネント等、システム100の他の複数のエンティティによって確立されてよい。
最適化エンジンモジュール442は、1又は複数の最適化制約に基づいて、システム100のデータセンタスケジュールを最適化するように構成されている。最適化制約は、下記のように、複数の予め定められたゴール、複数の制約、又は(例えば、システム100に関連付けられた1又は複数のサービスレベルアグリーメントからの)複数の他のルールに基づいてよく、複数のユーザ規定のゴール、複数の制約、又は複数の他のルールに基づいてよい。最適化エンジンモジュール442は、最適化されたデータセンタスケジュールに基づいて、データセンタのシステム状態を、例えば、最適化されたデータセンタスケジュールをシステム100の1又は複数のラックコントローラ120に通信することによって調整するように構成されてよい。
システム状態モジュール444は、システム100のセンサーネットワークからセンサーデータを受信するように構成されている。センサーネットワークは、システム100の状態と、使用及び性能データ、電力消費データ、温度データ、及び複数の他の状態データを含む複数のその要素とを測定する数個のセンサを含む。センサーネットワークは、例えば、複数のコンピューティングラック102の測定基準コンポーネント128、134、140、146を含んでよい。
インタラクティブ可視化モジュール446は、システム100の状態を表すインタラクティブな可視化を生成し、インタラクティブな可視化に応答して人間の入力を受信するように構成されている。インタラクティブな可視化は、システム状態モジュール444によって決定されたシステム状態、並びに最適化エンジンモジュール442によって生成されたデータセンタスケジュールの任意の以前の最適化を組み込んでよい。
インタラクション変換モジュール448は、インタラクティブな可視化に応答して、受信された人間の入力を、システム100のワークロードスケジューリングを最適化するための1又は複数の機械可読ゴール、複数の制約、又は複数の他のルールに変換するように構成されている。上記のように、それらのユーザ規定のルールは、データセンタスケジューリングをさらに最適化する場合に最適化エンジンモジュール442によって解釈されてよい。
図5をここで参照すると、ラックコントローラ120は、使用中に、最適化、スケジューリング、及び複数のデータセンタワークロードの配置のための方法500を実行してよい。方法500は、ラックコントローラ120が、コンピューティングラック102によって実行(例えば、動作(run)、初期化、処理等)されることになっている新しいアプリケーションの記述を受信するブロック502において、開始する。アプリケーション記述は、コンピューティングラック102のユーザ(例えば、管理者、開発者、顧客、購読者等)から(例えば、任意の好適な入力デバイスもしくはプロセスを介して)受信されてよい。例えば、いくつかの実施形態において、ラックコントローラ120は、顧客がコンピューティングラック102により動作した(例えば、実行した、初期化した、処理した等)ことを望んでいるワークロードについて、アプリケーション(例えば、特定のウェブサーバ、データベース、金融取引サーバ等)に対応するアプリケーション記述を受信してよい。アプリケーション記述は、その特定のアプリケーションの識別、及び/又は他の複数の固有の特性もしくは特徴を記述してよい。いくつかの実施形態において、アプリケーション記述データは、アプリケーションの記述、及びOASISのクラウドアプリケーションのためのトポロジ及びオーケストレーション仕様(TOSCA)に従ってフォーマットされたその構成要素である複数のサービスとして具現化されてよい。アプリケーション記述は、例えば、アプリケーションのトポロジ又は他の構造、並びにアプリケーションを形成し終了し、及び/又はそうでなければ管理するために用いられる1又は複数のオーケストレーション方法を記述する1又は複数のサービステンプレートとして具現化されてよい。当然のことながら、任意の他のフォーマットがアプリケーション及びその構成要素である複数のサービスを説明するために用いられてよいことは理解されるべきである。
ブロック504で、ラックコントローラ120は、新しいアプリケーションに関連付けられた1又は複数のサービスレベルアグリーメント(SLA)を受信してよい。SLAは、コンピューティングラック102によって顧客に提供されることになっているサービスのレベルを規定する。SLAは、1又は複数のゴール(サービス配信目標(SDO)及び複数のサービスレベル目標(SLO)ゴール等)、効率ターゲット、コンプライアンス目標、複数の施設を含むエネルギーターゲット、及び複数の他の環境又はコンテクスト上の制約を含んでよい。アプリケーション記述と同様に、SLAは、コンピューティングラック102のユーザ(例えば、管理者、開発者、顧客、購読者等)から受信されてよい。概して、SLAは、複数のコンピューティングラック102の複数の要素についての特定の性能又は複数の品質制約(例えば、プールされたストレージ138の複数の個々のディスクのための複数の信頼性ゴール)よりもむしろ、アプリケーションの配信について複数のゴール及び制約(例えば、ウェブサーバについての複数のアップタイムゴール)を規定する。
ブロック506で、ラックコントローラ120は、アプリケーション記述を性能データサーバ106に送信する。以下に図6と関連してさらに記載されるように、性能データサーバ106は、複数の他のコンピューティングラック102によって提供されたかもしれないアプリケーション記述に関連付けられた性能履歴データを検索する。
ブロック508で、ラックコントローラ120は、アプリケーション記述に関連付けられた予測ワークロードデータを性能データサーバ106から受信する。予測ワークロードデータは、アプリケーション記述データ(例えば、TOSCAアプリケーション記述)が送信されたアプリケーションに関連付けられた、予測されたハードウェア使用パターンに対応する。いくつかの実施形態において、予測ワークロードデータは、アプリケーションに対応する平均で観測された機械ワークロード等、平均ロード履歴データとして具現化されてよい。すなわち、平均ロード履歴データは、アプリケーションの実行(例えば、動作、初期化、処理等)が、コンピューティングラック102(又は複数の他のコンピューティングラック102)の複数の計算もしくは他のリソースに対して有した以前の影響を示すデータを含んでよい。例えば、予測ワークロードデータは、履歴プロセッサ、メモリ、ストレージ、又はアプリケーションの実行によって生じるネットワークロードを示してよい。いくつかの実施形態において、予測ワークロードデータは、アプリケーションについての履歴ワークロードデータの平均として具現化されてよい。いくつかの実施形態において、予測ワークロードデータは、フーリエ変換を介して振幅、周波数、及び位相として一時的ロードを説明する複数の波形の集合として具現化されてよい。
ブロック510で、コンピューティングラック102の1又は複数のハードウェアコンポーネントについての故障の確率を、ラックコントローラ120は、予測ワークロードデータに基づいて、アプリケーションの実行中に決定する。ラックコントローラ120は、例えば、コンピューティングラック102の1又は複数のコンポーネントに対応する、受信された予測ワークロードデータ及びローカル要素固有の測定基準データ(例えば、コンピューティングラック102の1又は複数のコンポーネントに関連付けられた使用履歴データ)を分析してよい。ラックコントローラ120は、受信された予測ワークロードデータを分析することのみによって、又は受信された予測ワークロードデータを、要素が故障し得るかどうか及び要素がいつ故障し得るかを決定するのに好適な任意の他のデータもしくは測定基準と組み合わせて分析することによって、故障の確率を決定してよい。例えば、ラックコントローラ120は、試験を通して又は別の方法で決定され得る、製造で提供され得る複数のコンポーネント故障率の統計的データを更に分析してよい。例示として、予測ワークロードデータは、特定のアプリケーションが、ストレージが集中的であることを示してよい。その例において、ラックコントローラ120は、プールされたストレージエンクロージャ136の各ディスク、ストレージモジュール、又は他のコンポーネントについての故障の確率を、その要素の使用履歴データ、予測されたワークロード及びその要素の故障率における統計的データに基づいて決定してよい。いくつかの実施形態において、要素の故障の確率は、要素が予め定められた(例えば、基準等)期間内に故障する可能性の割合として表されてよい。例えば、故障の確率は、要素が次の4週間以内のあるときに故障する確率として表されてもよい。故障の確率及び/又は故障の期間は、任意の他の態様で表されてもよいことは理解されるべきである。いくつかの実施形態において、ブロック512では、ラックコントローラ120が、確率の計算をコンピューティングラック102の複数の利用可能なコンポーネントに限定してよい。例えば、ラックコントローラ102は、プールされたコンピュートエンクロージャ124のいずれのタスクにも割り当てられなかった複数のプロセッサ126についての故障の確率を決定してよい。
ブロック514で、ラックコントローラ120は、故障の確率に基づいて、アプリケーションを実行するために1又は複数のハードウェアコンポーネントを選択する。例えば、ラックコントローラ120は、アプリケーションを実行(例えば、動作、初期化、処理、サービス等)する複数の利用可能なコンポーネントのリストを生成してよく、次にそれらの要素を、予め定められた期間内に故障に遭遇する確率が最も低いものから、その同じ期間内に故障に遭遇する確率が最も高い要素までランク付けしてよい。ラックコントローラ120は、アプリケーションの実行のために故障に遭遇する確率が最も低いハードウェアコンポーネントを選択してよい。例えば、ラックコントローラ120は、複数の利用可能なプロセッサ126を識別してよく、それらの利用可能なプロセッサ126を故障の確率でランク付けしてよく、最も低い故障の確率を有する利用可能なプロセッサ126を選択してよい。加えて、又は代替的に、ラックコントローラ120は、複数の利用可能なリソース、近接、セキュリティ、又は他の複数の基準等、1又は複数の追加の基準に基づいて、複数のハードウェアコンポーネントを選択してよい。1又は複数のコンポーネントを選択した後、コンピューティングラック102のオーケストレータは、選択された複数の要素を用いてアプリケーションの実行を形成してよく、又はそうでなければアプリケーションの実行を初期化してよい。
ブロック516で、ラックコントローラ120は、アプリケーションのために要求されたSLAが故障の確率で満たされることが可能かどうかを決定する。ラックコントローラ120は、コンピューティングラック102の1又は複数の利用可能なコンポーネントが、SLAの1又は複数のゴール、制約、又は複数の他の要件を満たす閾値測定基準を満たすことが可能であるか、又はそうでなければ閾値測定基準内にあるかを決定してよい。この場合、ラックコントローラ120は、アプリケーション及び/又はワークロードを実行するように選択されたコンピューティングラック102の1又は複数のコンポーネントがSLAを満たすことが可能であることを、アプリケーション及び/又はワークロードの割り当て前に認証してよい。SLAを認証した後、方法500が、複数の新しいアプリケーションの記述の処理を続けるべく、ブロック502に引き返す。
図6をここで参照すると、使用中に、性能データサーバ106は、予測ワークロードデータ取得のための方法600を実行してよい。方法600は、性能データサーバ106がコンピューティングラック102によって実行されることになっているアプリケーションの記述を受信する、ブロック602で開始する。上記のように、アプリケーション記述データは、アプリケーションの記述及びOASISのクラウドアプリケーションのためのトポロジ及びオーケストレーション仕様(TOSCA)に従ってフォーマットされたその構成要素である複数のサービスとして具現化されてよい。アプリケーション記述は、例えば、アプリケーションのトポロジ又は他の構造、並びにアプリケーションを形成し終了し、及び/又はそうでなければ管理するために用いられる1又は複数のオーケストレーション方法を記述する1又は複数のサービステンプレートとして具現化されてよい。
ブロック604で、性能データサーバ106は、アプリケーション記述に関連付けられた、格納された履歴ワークロードデータを検索する。例えば、性能データサーバ106は、アプリケーション名及び/又はアプリケーションに関連付けられた複数の他の識別子によってインデキシングされ得る、アプリケーション性能データベース160におけるワークロードデータを検索してよい。ブロック606で、性能データサーバ106は、履歴ワークロードデータがアプリケーション記述について存在するかどうかを決定する。存在する場合、方法600は、以下に記載されるブロック612へと分岐して進む。ワークロードデータが存在しない場合、方法600はブロック608に進む。
ブロック608で、性能データサーバ106は、アプリケーション記述について推定ワークロードデータを生成する。例えば、性能データサーバ106は、未知のアプリケーションについての平均ワークロードデータの推定を生成してよく、又は既定のワークロードデータを提供してよい。性能データサーバ106は、例えばアプリケーション性能データベース160において、将来用いるための推定ワークロードデータを格納してよい。いくつかの実施形態において、ブロック610で、性能データサーバ106は、複数の同様のアプリケーションの履歴ワークロードデータに基づいて、未知のアプリケーションについての推定ワークロードデータを生成してよい。例えば、アプリケーション記述が未知のウェブサーバに関連付けられる場合、性能データサーバ106は、複数の既知のウェブサーバについてのワークロードデータ(例えば、Apache2及びnginxのためのワークロードデータ)を組み合わせるか又は平均することにより、推定ワークロードデータを生成してよい。
ブロック612で、性能データサーバ106は、コンピューティングラック102にワークロードデータを送信する。性能データサーバ106は、例えば、ブロック604に関連して上述されたように、決定された履歴ワークロードデータ又はブロック608に関連して上述したように決定された推定ワークロードデータを送信してよい。図5に関連して上述したように、コンピューティングラック102は、アプリケーションに関連付けられたハードウェアコンポーネント故障の確率を予測するべく、ワークロードデータを分析してよい。ワークロードデータを送信した後、方法600は、ブロック602に引き返し、複数のアプリケーション記述を複数のコンピューティングラック102から受信し続ける。
図7をここで参照すると、使用中、ラックコントローラ120は、複数のデータセンタワークロードの性能監視のための方法700を実行してよい。方法700は、ラックコントローラ120が、コンピューティングラック102の1又は複数のハードウェアコンポーネントについての複数の性能測定基準を受信するブロック702で、開始する。複数の性能測定基準は、タイプ(例えば、ストレージタイプ、プロセッサタイプ等)、性能測定基準(例えば、シークタイム、パリティ及びエラー頻度等)、動作特性(例えば、温度等)、利用測定基準(例えば、合計使用時間、合計アクセス数等)、及び/又はコンピューティングラック102の複数のハードウェアコンポーネントのそれぞれのために生成及び/又はキャプチャされ得る任意の他のタイプの測定基準を記述する任意のタイプのデータとして具現化されてよい。例えば、複数の性能測定基準は、複数の特定のハードウェアコンポーネントのロードの一式の低レベルサンプル又は複数の使用態様を表すバイナリデータとして具現化されてよい。
例示的には、プールされたコンピュートエンクロージャ124について、性能測定基準は性能カウンタ監視データ(例えば、複数のプロセッサ126によってリタイアされた複数の命令におけるデータ、プロセッサ126周波数、オンボードメモリコントローラ帯域幅、キャッシュミス統計値等)、複数のカーネルパニック又はプロセッサ除外カウンタ、温度データ、複数の電力サイクルカウンタ、合計使用時間の複数のカウンタ、又は複数の他の測定基準として具現化されてよい。プールされたメモリエンクロージャ130について、複数の性能測定基準は、観測されたメモリ帯域幅、複数のパリティ及びエラーカウンタ、メモリ周波数、複数のメモリアクセスカウンタ、温度データ、複数の電力サイクルカウンタ、合計使用時間の複数のカウンタ、又は複数の他の測定基準として具現化されてよい。プールされたストレージエンクロージャ136について、複数の性能測定基準は、ストレージタイプ(例えば、ソリッドステートドライブ、ハードディスクドライブ、キャッシュサイズ等)、1秒当たりの読み取り、グローバル読み取りカウンタ、1秒当たりの書き込み、グローバル書き込みカウンタ、1秒当たりのI/Oオペレーションの合計(IOPS)、IOPS、ブロック障害カウンタ、ページフォルトカウンタ、シークタイムデータ、レイテンシデータ、温度データ、複数の電力サイクルカウンタ、合計使用時間の複数のカウンタ、又は複数の他の測定基準として具現化されてよい。プールされたネットワークエンクロージャ142について、性能測定基準は、秒当たりの接続、送信されたデータ、受信されたデータ、温度データ、電力サイクルカウンタ、合計使用時間の複数のカウンタ、又は複数の他の測定基準として具現化されてよい。
いくつかの実施形態において、ブロック704で、ラックコントローラ120は、1又は複数の専用ハードウェア監視コンポーネントから複数の性能測定基準を受信してよい。例えば、ラックコントローラ120は、プールされたコンピュートエンクロージャ124の測定基準コンポーネント128、プールされたメモリエンクロージャ130の測定基準コンポーネント134、プールされたストレージエンクロージャ136の測定基準コンポーネント140、又はプールされたネットワークエンクロージャ146の測定基準コンポーネント146から、複数の性能測定基準を受信してよい。いくつかの実施形態において、ブロック706で、ラックコントローラ120は、1又は複数のソフトウェアモニタから複数の性能測定基準を受信してよい。複数の性能測定基準を複数のソフトウェアモニタから収集することにより、コンピューティングラック102によって実行される他のソフトウェアを変更すること又はそうでなければそれに合わせることが要求されてよい。
ブロック708において、ラックコントローラ120は、複数の性能測定基準を格納し処理して、履歴ワークロードデータを生成する。例えば、ラックコントローラ120は、コンピューティングラック102の複数のコンポーネントのそれぞれから受信された性能測定基準データをローカルハードウェア/性能データベース内に格納してよい。ワークロードデータは、1時間の平均使用量についての性能測定基準データを表してよい。例えば、ワークロードデータは、一時的ロードを振幅、周波数、及び位相として説明する複数の正規化された波形の集合として具現化されてよい。ラックコントローラ120は、例えばフーリエ変換を性能測定基準データに適用することでワークロードデータを生成してよい。
ブロック710で、ラックコントローラ120は、コンピューティングラック102によって現在実行(例えば、動作、初期化、処理、サービス等)されている1又は複数のアプリケーションの記述に、ワークロードデータを関連付けてもよい。従って、ラックコントローラ120は、それぞれのアプリケーションを、そのアプリケーションを実行するのに必要とされる複数のハードウェアリソース(例えば、計算、メモリ、ストレージ、又はネットワークリソース)に関連付けてよい。アプリケーション記述は、その特定のアプリケーションの識別及び/又は他の複数の固有の特性もしくは特徴を記述してよい。いくつかの実施形態において、アプリケーション記述データは、アプリケーションの記述、及びOASISのクラウドアプリケーションのためのトポロジ及びオーケストレーション仕様(TOSCA)に従ってフォーマットされたその構成要素である複数のサービスとして具現化されてよい。アプリケーション記述は、例えば、アプリケーションのトポロジ又は他の構造、並びにアプリケーションを形成し終了し、及び/又はそうでなければ管理するために用いられる1又は複数のオーケストレーション方法を記述する1又は複数のサービステンプレートとして具現化されてよい。当然のことながら、任意の他のフォーマットが、アプリケーション及びその構成要素である複数のサービスを記述するために用いられてもよいことは理解されるべきである。
ブロック712で、ラックコントローラ120は、ワークロードデータ及び1又は複数の関連するアプリケーション記述を性能データサーバ106に送信する。いくつかの実施形態において、ラックコントローラ120は、組み合わされた及び/又は一致するデータを、予め定められた(例えば、基準)時間間隔に応じて性能データサーバ106に送信してよい。例えば、いくつかの実施形態において、ラックコントローラ120は、組み合わされた及び/又は一致するデータを毎時に性能データサーバ106に送信してよい。図8に関連して以下に記載されるように、性能データサーバ106は、ワークロードデータを格納し、処理してよい。ワークロードデータ及び関連するアプリケーション記述を送信した後、方法700は、ブロック702に引き返し、複数の性能測定基準を監視し続ける。
図8をここで参照すると、使用中、性能データサーバ106は、性能データ管理のための方法800を実行してよい。方法800は、性能データサーバ106がワークロードデータ及び1又は複数の関連するアプリケーション記述をコンピューティングラック102から受信するブロック802において、開始する。図7に関連して上述したように、ワークロードデータは、関連するアプリケーション又は複数のアプリケーションの実行中、コンピューティングラック102の1又は複数のハードウェアコンポーネントの測定されたロードを表す。ワークロードデータは、例えば、コンピューティングラック102の様々なハードウェアコンポーネントの1時間の平均使用量を示す複数の正規化された波形の集合として具現化されてよい。上記のように、アプリケーション記述データは、アプリケーションの記述及びOASISのクラウドアプリケーションのためのトポロジ及びオーケストレーション仕様(TOSCA)に従ってフォーマットされたその構成要素である複数のサービスとして具現化されてよい。アプリケーション記述は、例えば、アプリケーションのトポロジ又は他の構造、並びにアプリケーションを形成し終了し、及び/又はそうでなければ管理するために用いられる1又は複数のオーケストレーション方法を記述する1又は複数のサービステンプレートとして具現化されてよい。
ブロック804で、性能データサーバ106は、アプリケーション記述に関連付けられたワークロードデータを処理し格納する。例えば、性能データサーバ106は、ワークロードデータ及び関連する複数のアプリケーション記述をアプリケーション性能データベース160内に格納してよい。格納された後、ワークロードデータは、図5及び図6と関連して上述したように、複数の関連するアプリケーションのハードウェアコンポーネント使用を予測するべく、コンピューティングラック102に提供されてよい。ワークロードデータは多くの異なるコンピューティングラック102から生じ得るので、アプリケーション性能データベース160は、「クラウドソースとされた(crowd sourced)」データベースとして記載されてよい。いくつかの実施形態において、ブロック806では、性能データサーバ106が、アプリケーション性能データベース160内の関連するアプリケーション記述についての履歴ワークロードデータを更新してよい。例えば、性能データサーバ106は、複数の平均値を更新してよく、又は一時的ロードを振幅、周波数及び位相として記述する複数の正規化された波形を更新してよい。いくつかの実施形態において、ブロック808で、性能データサーバ106は、アプリケーション性能データベース160内の推定データをコンピューティングラック102から受信された履歴ワークロードデータと置き換えてよい。図6のブロック608に関連して上述したように、ある特定の複数の未知のアプリケーション又は履歴ワークロードデータがない他の複数のアプリケーションについて、性能データサーバ106が推定ワークロードデータを生成してよい。推定ワークロードデータを複数のコンピューティングラック102によって提供される履歴ワークロードデータに置き換えることで、性能データサーバ106は、測定されたワークロードデータを推定ワークロードデータよりも優先させる。ワークロードデータを格納した後、方法800は、ブロック802に引き返し、コンピューティングラック102からワークロードデータ及び関連する複数のアプリケーション記述を受信し続ける。
図9をここで参照すると、使用中、管理インタフェース104は、ワークロードスケジューリング及び配置を最適化するための方法900を実行してよい。管理インタフェース104によって実行されているとして示されるが、いくつかの実施形態では、方法900のいくつか又は全ての機能は、複数のコンピューティングラック102及び/又は複数のラックコントローラ120の1又は複数によって実行されることを含む、システム100の複数の他の要素によって実行されることは理解されるべきである。方法900は、管理インタフェース104が1又は複数の初期最適化制約をロードし、最適化エンジンモジュール442をそれらの制約で構成するブロック902で開始する。複数の初期最適化制約は、1又は複数の予め定められた制約及び/又はゴールとして具現化されてよい。いくつかの実施形態において、ブロック904で、管理インタフェース104は、1又は複数のサービスレベルアグリーメント(SLA)に基づいて複数の初期制約を決定してよい。例えば、複数の初期最適化制約は、性能のレベル、アップタイム/信頼性、又は他の複数の定量的測定等、1又は複数のサービスレベル目標(SLO)に対応してよく、又はデータ位置、複数のセキュリティ規格、又は他の複数のSDO等、1又は複数のサービス配信目標(SDO)に対応してよい。別の例として、初期最適化制約は、複数の効率ターゲット、複数のコンプライアンス目標、複数の施設を含む複数のエネルギーターゲット、及び複数の他の環境及びコンテクスト上の制約を含んでよい。複数の初期最適化制約は、グラフィカルユーザインタフェース(GUI)設定モジュールを用いて提供されてよい。
ブロック906で、管理インタフェース104は、システム100についてワークロードの最適化された配置及び/又はスケジューリングを、最適化エンジンモジュール442に提供された複数の最適化制約に基づいて決定する。複数の最適化制約は、以下にさらに記載されるように、複数の初期最適化制約であってよく、又は複数のユーザ規定のルールもしくは制約に基づいてよい。従って、最適化エンジンモジュール442は、複数の人間の入力で問題空間の複数のフォーマルな予め定められた記述を統合し、複数の最適な結果を有する複数のソリューションジョイント(solution joint)認知システムを形成する。最適化エンジンモジュール442は、複雑な問題を解決するべくアルゴリズムを用いる自動化プログラムとして具現化されてよい。特に、最適化エンジンモジュール442は、システム100の様々なコンピューティング要素における複数のワークロードについての最適な配置及び/又は計画を含む、システム100についての最適なシステム状態を決定してよい。最適化エンジンモジュール442は、確率的最適化アルゴリズムを含む任意の最適化アルゴリズムを用いてよい。特に、例示的な最適化エンジンモジュール442は、複数のデータセンタスケジュール(例えば、複数のワークロードの配置及び/又はスケジューリングのための複数の計画)を最適化するときに、複数の「軟らかい制約」を評価してよい。例えば、完全に互換性があるわけではない2つの異なる設定オプション、例えば、(1)システム100の特定の複数のコンピューティング要素において利用可能なプラットフォーム機能オプション及び(2)データ転送速度設定オプション、から利益を得てよいワークロードの到着要素を考慮されたい。その例において、ワークロードの実行に対する相対的な利益は、両方のオプションについては正確に知られておらず、利益はある範囲内であり得る。その例において、その利益は、統計に基づいて確立又はモデル化されてよく、その場合、複数のシナリオが、好みの順序のモデルを通知するべく、選択されてよい。当然のことながら、それは、非常に単純化した例であり、拡大した規模では、最適化は、コスト、柔軟性、コンポーネント寿命、性質、サービスレベル保証(SLA)、及びリスクの態様を組み込んでよい。
最適化エンジンモジュール442は、システム100の複数のコンピューティング要素の構成を記述する複数のシステムパラメータ並びに計算ワークロードを含むシステム状態に基づいて、最適な複数の解決策を提供することを試みる。最適化エンジンモジュール442は、システム100の性能を評価するために用いられる適合度関数を調整するのに複数の最適化制約を用いてよい。最適化エンジンモジュール442は、例えば、「もし〜だったらどうなるか」というシナリオ計画に従事している場合に利用可能であるべく、非常に迅速に複数の結果を生成する必要があってよい。複数の迅速な結果は、メタヒューリスティックなアプローチを必要としてよい。従って、最適化エンジンモジュール442は、複数の結果を迅速に提供するべく、一致検索、シミュレーテッドアニーリング、又は他の複数の確率的最適化アルゴリズム等の確率的最適化の形式を用いてよい。従って、管理インタフェース104は、システム100の動作の信頼性のあるモデル(知識ベース)を確立するべく、システム状態の実行時データをキャプチャしてよく、実行時の動作の統計的証拠を収集するべく実行時データを処理してよく、この統計的証拠を前述の一致検索等の複数の最適化技術と組み合わせてよい。
ブロック908で、管理インタフェース104は、最適化エンジンモジュール442の出力に基づいて、システム100の状態を調整する。例えば、管理インタフェース104は、システム100の複数のコンピューティング要素を、異なる複数のワークロードに対して割り当て又は再割り当てをしてよく、複数のワークロードを複数の異なるコンピューティング要素又は複数のコンピューティングラック102に転送してよく、複数のワークロードのスケジューリングを調整してよく、又は最適化エンジンモジュール442により決定された最適化されたデータセンタスケジュールによって記載されたような任意の他の構成を実行してよい。管理インタフェース104は、コンピューティングラック102の複数のラックコントローラ120及び/又は複数の他のオーケストレーション要素と通信することで、システム100の状態を調整してよい。
ブロック910で、管理インタフェース104は、システム100の状態を示すセンサーデータを収集する。管理インタフェース104は、システム100のセンサーネットワークを用いてシステム状態のデータを収集してよい。システム状態は、リソース利用データ、容量データ、サーマルデータ、エネルギー消費データ、又は他のデータを含む、システム100のワークロードに関する任意のデータを含んでよい。センサーネットワークが、複数のコンピューティングラック102の測定基準コンポーネント128、134、140、146及び/又は他の複数のセンサ、モニタ、又は監視要素を含んでよい。管理インタフェース104は、システム100内のシステム状態データベースにシステム状態データを格納してよい。
ブロック912で、管理インタフェース104は、システム100の状態を表すインタラクティブな可視化を生成し表示する。インタラクティブな可視化は、最適化エンジンモジュール442により生成された複数の任意の以前の最適化を含むシステム100の現在の状態を表すため且つユーザが直観的なインタラクションを通してシステム100に情報を伝えることを可能にするための両方に用いられてよい。最適化アルゴリズムの初期の出力が、ユーザ又は複数のユーザに提示されてよい。ユーザ又は複数のユーザは、次に、単純なインタラクションを通して、例えば、新しい複数の入力を指定するべく、プロンプトベース(prompt‐based)の「ウィザード(wizard)」インタフェースを用いて、システム100に情報を分け与えてよい。インタラクティブな可視化は、システム100の様々なコンピューティング要素における複数のワークロードの現在の配置及び/又はスケジューリングを含む、システム100のシステム状態を表す任意の可視化として具現化されてよい。インタラクティブな可視化は、データセンタオペレータ及び/又は管理者の管理インタフェース(「ダッシュボード(dashboard)」の一部又は全てとして具現化されてよく、ワークロード配置及び/又は複数のスケジューリング履歴の非常に直観的な表現を提供してよい。加えて、インタラクティブな可視化は、ユーザが複数の介入を用いて実験しそれらの意味合いを検討することを可能にするインタラクティブな複数の推奨情報を提供してよく、最適化アルゴリズムが複数の介入に応答して自動的に更新される。いくつかの実施形態において、インタラクティブな可視化は、ユーザが最適化エンジンによって生成された数個の潜在的シナリオの間で選択することを可能にしてよい。複数のユーザは、インタラクティブな可視化を用いてシステム100と協調して対話し、それらの専門のコンテクストの知識を動的に分け与えてよい。例えば、データセンタ及び複数のネットワークオペレータ、複数の開発オペレーションチーム、複数のミドルウェア積分器、及び複数の施設オペレータは全員、インタラクティブな可視化を通して伝える知識を有してよい。インタラクティブな可視化は、例えばシステム100の管理インタフェース104又は別のコンソールインタフェースのディスプレイ150を用いてローカルに、あるいは、例えばウェブページ又は遠隔管理コンソールを用いて遠隔で提示されてよい。
ブロック914で、管理インタフェース104は、インタラクティブな可視化に基づいてユーザ入力を受信する。例えば、さらに上述したように、管理インタフェース104は、インタラクティブな可視化によって生成されたウィザードインタフェースへの1又は複数のユーザ応答を受信してよい。
ブロック916で、管理インタフェース104は、ユーザ入力を最適化エンジンモジュール442のための1又は複数の機械可読のユーザ規定のルールへと変換する。機械可読ルールは、最適化エンジンモジュール442のオペレーション又は出力を構成、制約、又はそうでなければ調整する任意のルールとして具現化されてよい。ユーザ入力に基づいて複数の機械可読ルールを生成することにより、ユーザが認識し得る複数のソフト及び/又は統計的制約を、ユーザがユーザの暗黙的な知識に基づいて入力することが可能になるが、それは、センサーネットワークによって測定可能ではないかもしれない。従って、ユーザは、ワークロード配置が実行時に妥当であり得るという一式のルール又はヒューリスティックを確立し維持してよい。これは、システム100の柔軟性を改善し得る。従って、インタラクションは、ユーザにとって既知のコンテクスト情報を表すユーザの複数のアクションの変換を最適化エンジンモジュール442により理解されるフォーマットへと変換することを可能にしてよく、従って、解決策は最適化エンジンモジュール442(又は使用中にある特定の最適化アルゴリズム)自体にとらわれない。
ユーザ入力を最適化エンジンモジュール442のための複数のユーザ規定のルールに変換した後、方法900は、ブロック906に引き返し、最適化アルゴリズムを再実行する。従って、管理インタフェース104は、ダイナミックユーザフィードバックを最適化アルゴリズムの動作に迅速に組み込んでよい。ユーザ入力に応答することに加えて、方法900は、また、システム100の状態の複数の変更に対して応答してもよい。システム状態データは、現在のデータセンタスケジュールから外れることに調整するべく、定期的に、断続的に、又は応答に基づいて最適化エンジンモジュール442によってポーリングされてよい、又はそうでなければクエリされてよい。システム状態データの連続的に更新するデータベースへの接続により、複数のデータセンタスケジュールの監視及び複数の逸脱が生じた場合の通知がサポートされてよい。データセンタスケジュールから外れる(又は、上記のように、ユーザが新しいゴール及び/又は制約を規定する)状況において、最適化エンジンモジュール442は、再実行し、更新されたデータセンタスケジュールを提供してよい。従って、システム100は、データセンタスケジュールの迅速な陳腐化の課題を克服し得る。
例 本明細書で開示される複数の技術の複数の例示的な例が、以下に提供される。 複数の技術の実施形態は、後述される複数の例の任意の1又は複数、及び任意の組み合わせを含んでよい。
例1は、コンピューティングラックのラックコントローラを含み、ラックコントローラは、コンピューティングラックのハードウェアコンポーネントに関連付けられた測定基準を受信する性能監視モジュールであって、測定基準は、システム測定基準、性能測定基準、又は健全性測定基準を有する、性能監視モジュールと、ハードウェアコンポーネントに関連付けられた測定基準に基づいてハードウェアコンポーネントについての回帰モデルを決定し、ハードウェアコンポーネントについての回帰モデルに基づいて、ハードウェアコンポーネントの平均故障間隔値を決定し、ハードウェアコンポーネントの平均故障間隔値に基づいて、論理マシンの平均故障間隔値を決定する、分析モジュールと、を備え、論理マシンはハードウェアコンポーネントに関連付けられている。
例2は、例1の主題を含み、測定基準を受信することは、ハードウェアコンポーネントの測定基準コンポーネントから測定基準を受信することを有する。
例3は、例1及び2のいずれかの主題を含み、ハードウェアコンポーネントは、計算リソース、メモリリソース、ストレージリソース、又はネットワークリソースを有する。
例4は、例1−3のいずれかの主題を含み、回帰モデルを決定することは、線形回帰モデルを決定することを有する。
例5は、例1−4のいずれかの主題を含み、回帰モデルを決定することは、非線形回帰モデルを決定することを有する。
例6は、例1−5のいずれかの主題を含み、ハードウェアコンポーネントについての平均故障間隔値を決定することは、回帰モデルに基づいて、ハードウェアコンポーネントに関連付けられた予測測定基準を決定し、予測測定基準を予め定められた閾値測定基準と比較することを有する。
例7は、例1−6のいずれかの主題を含み、ハードウェアコンポーネントについての平均故障間隔値を決定することは、回帰モデルに基づいて、ハードウェアコンポーネントに関連付けられた予測測定基準を決定し、ハードウェアコンポーネントに関連付けられたサービスレベルアグリーメントのサービスレベル測定基準を決定し、予測測定基準をサービスレベル測定基準と比較することを有する。
例8は、例1−7のいずれかの主題を含み、ハードウェアコンポーネントについての平均故障間隔値をユーザに通知するデータセンタ管理モジュールをさらに備える。
例9は、例1−8のいずれかの主題を含み、論理マシンの平均故障間隔値に基づいて、論理マシンに関連付けられるメンテナンスセッションのための未来時を決定するデータセンタ管理モジュールをさらに備える。
例10は、例1−9のいずれかの主題を含み、性能監視モジュールは、さらに、論理マシンに割り当てられたコンピューティングアプリケーションに関連付けられた性能指標を受信し、未来時を決定することは、さらに、性能指標に基づいて、未来時を決定することを有する。
例11は、例1−10のいずれかの主題を含み、コンピューティングラックの複数のハードウェアコンポーネントを識別し、複数のハードウェアコンポーネントを含む論理マシンを構成するデータセンタ管理モジュールをさらに備え、複数のハードウェアコンポーネントは、ハードウェアコンポーネントを有し、ハードウェアコンポーネントのそれぞれに関連付けられる平均故障間隔値は、ハードウェアコンポーネントの平均故障間隔値と同様である。
例12は、コンピューティングラックのラックコントローラを含み、ラックコントローラは、コンピューティングラックによって実行可能なコンピューティングアプリケーションの記述を受信し、コンピューティングアプリケーションの記述をリモートコンピューティングデバイスに送信し、コンピューティングアプリケーションの記述を送信することに応答して、リモートコンピューティングデバイスからアプリケーションに関連付けられた予測ワークロードデータを受信するオーケストレーションモジュールであって、予測ワークロードデータは、コンピューティングラックのハードウェアコンポーネントの使用パターンを示す、オーケストレーションモジュールと、予側ワークロードデータに基づいて、コンピューティングラックのハードウェアコンポーネントの故障の確率を決定するハードウェア故障予測モジュールと、を備える。
例13は、例12の主題を含み、コンピューティングアプリケーションの記述は、サービステンプレートを有する。
例14は、例12及び13のいずれかの主題を含み、記述は、コンピューティングアプリケーションの構造又は初期化方法を示す。
例15は、例12−14のいずれかの主題を含み、予測ワークロードデータは、ハードウェアコンポーネントにおけるロードを示す波形の振幅、周波数、又は位相を含む。
例16は、例12−15のいずれかの主題を含み、ハードウェアコンポーネントは、計算リソース、メモリリソース、ストレージリソース、又はネットワークリソースを有する。
例17は、例12−16のいずれかの主題を含み、コンピューティングラックの複数のハードウェアコンポーネントから複数の利用可能なハードウェアコンポーネントを識別するスケジューリングモジュールをさらに備えることを含み、複数の利用可能なハードウェアコンポーネントは、コンピューティングアプリケーションを実行するのに利用可能であり、ハードウェア故障予測モジュールは、さらに、予測ワークロードデータに基づいて、複数の利用可能なハードウェアコンポーネントの各々の故障の確率を決定する。
例18は、例12−17のいずれかの主題を含み、スケジューリングモジュールは、さらに、コンピューティングアプリケーションを、複数の利用可能なハードウェアコンポーネントの各々の故障の確率に応じて実行するべく、複数の利用可能なハードウェアコンポーネントから利用可能なハードウェアコンポーネントを選択する。
例19は、例12−18のいずれかの主題を含み、コンピューティングアプリケーションに関連付けられたサービスレベルアグリーメントが、ハードウェアコンポーネントの故障の確率に応じて満たされるかどうかを決定するサービスレベルアグリーメントモジュールをさらに備える。
例20は、例12−19のいずれかの主題を含み、コンピューティングラックの第2のハードウェアコンポーネントに関連付けられたハードウェア性能測定基準を受信し、第2のハードウェアコンポーネントの使用パターンを示す履歴ワークロードデータをハードウェア性能測定基準に応じて決定し、コンピューティングラックの現在のアプリケーションのアプリケーション記述を履歴ワークロードデータに関連付け、現在のアプリケーションの履歴ワークロードデータ及びアプリケーション記述をリモートコンピューティングデバイスに送信する、性能監視モジュールをさらに備える。
例21は、例12−20のいずれかの主題を含み、ハードウェア性能測定基準を受信することは、第2のハードウェアコンポーネントの測定基準コンポーネントからハードウェア性能測定基準を受信することを含む。
例22は、例12−21のいずれかの主題を含み、履歴ワークロードデータは、第2のハードウェアコンポーネントにおけるロードを示す波形の振幅、周波数、又は位相を有する。
例23は、例12−22のいずれかの主題を含み、履歴ワークロードデータを決定することは、ハードウェア性能測定基準のフーリエ変換を用いて、履歴ワークロードデータを決定することを含む。
例24は、例12−23のいずれかの主題を含み、第2のハードウェアコンポーネントは、計算リソース、メモリリソース、ストレージリソース、又はネットワークリソースを有する。
例25は、性能データ管理のためのコンピューティングデバイスを含み、当該コンピューティングデバイスは、第1のコンピューティングラックの第1のラックコントローラから、第1のコンピューティングラックによって実行可能なコンピューティングアプリケーションの履歴ワークロードデータ及び関連する記述を受信し、履歴ワークロードデータは、第1のコンピューティングラックのハードウェアコンポーネントの使用パターンを示し、第2のコンピューティングラックの第2のラックコントローラから、コンピューティングアプリケーションの記述を受信する、通信モジュールと、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータを取り出すアプリケーション性能データベースモジュールとを備え、通信モジュールは、第2のラックコントローラの履歴ワークロードデータをさらに送信する。
例26は、例25の主題を含み、コンピューティングアプリケーションの記述はサービステンプレートを有する。
例27は、例25及び26のいずれかの主題を含み、記述は、コンピューティングアプリケーションの構造又は初期化方法を示す。
例28は、例25−27のいずれかの主題を含み、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータを取り出すことは、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータが存在するかどうかを判断することと、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータが存在するという判断に応答して、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータを取り出すことと、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータは存在しないという判断に応答して、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータを推定することと、を含む。
例29は、例25−28のいずれかの主題を含み、履歴ワークロードデータを推定することは、第2のコンピューティングアプリケーションに関連付けられた履歴ワークロードデータに基づいて履歴ワークロードデータを推定することを含み、第2のコンピューティングアプリケーションは、上記コンピューティングアプリケーションと同様である。
例30は、例25−29のいずれかの主題を含み、アプリケーション性能データベースモジュールは、さらに、コンピューティングアプリケーションの履歴ワークロードデータ及び関連する記述の受信に応答して、コンピューティングアプリケーションに関連付けられた推定ワークロードデータを、コンピューティングアプリケーションに関連付けられた履歴ワークロードデータに置き換える。
例31は、データセンタワークロードの最適化のための管理インタフェースを含み、管理インタフェースは、(i)データセンタのシステム状態を表すインタラクティブな可視化を生成し、(ii)インタラクティブな可視化に応答する人間の入力を受信するインタラクティブ可視化モジュールと、人間の入力をデータセンタのワークロードスケジューリングを最適化するために機械可読ルールに変換するインタラクション変換モジュールと、機械可読ルールに基づいてデータセンタのデータセンタスケジュールを最適化する最適化エンジンモジュールと、を有する。
例32は、例31の主題を含み、最適化エンジンモジュールは、さらに、データセンタのワークロードスケジューリングを最適化するために予め定められたルールを決定し、データセンタスケジュールを最適化することは、さらに、予め定められたルールに基づいて、データセンタデータセンタスケジュールを最適化することを含む。
例33は、例31及び32のいずれかの主題を含み、予め定められたルールを決定することは、データセンタに関連付けられたサービスレベルアグリーメントに基づいて、予め定められたルールを決定することを含む。
例34は、例31−33のいずれかの主題を含み、データセンタの複数のセンサからセンサーデータを受信するシステム状態モジュールをさらに備え、センサーデータは、データセンタのシステム状態を示し、インタラクティブな可視化を生成することは、センサーデータの受信に応答してインタラクティブな可視化を生成することを含む。
例35は、例31−34のいずれかの主題を含み、最適化エンジンモジュールは、さらに、データセンタスケジューラの最適化に応答して、データセンタスケジュールに基づいてデータセンタのシステム状態を調整し、インタラクティブ可視化モジュールは、さらに、データセンタのシステム状態の調整に応答して、データセンタのシステム状態を表すインタラクティブな可視化を更新する。
例36は、データセンタ管理のための方法を含み、当該方法は、コンピューティングラックのラックコントローラによって、コンピューティングラックのハードウェアコンポーネントに関連付けられた、システム測定基準、性能測定基準、又は健全性測定基準を有する測定基準を受信する段階と、ラックコントローラによって、ハードウェアコンポーネントに関連付けられた測定基準に基づいてハードウェアコンポーネントについての回帰モデルを決定する段階と、ラックコントローラによって、ハードウェアコンポーネントについての回帰モデルに基づいて、ハードウェアコンポーネントの平均故障間隔値を決定する段階と、ラックコントローラによって、論理マシンの平均故障間隔値をハードウェアコンポーネントの平均故障間隔値に基づいて決定する段階と、を備え、論理マシンは、ハードウェアコンポーネントに関連付けられる。
例37は、例36の主題を含み、測定基準を受信する段階は、ハードウェアコンポーネントの測定基準コンポーネントから測定基準を受信する段階を含む。
例38は、例36及び37のいずれかの主題を含み、ハードウェアコンポーネントは、計算リソース、メモリリソース、ストレージリソース、又はネットワークリソースを有する。
例39は、例36−38のいずれかの主題を含み、回帰モデルを決定する段階は、線形回帰モデルを決定する段階を含む。
例40は、例36−39のいずれかの主題を含み、回帰モデルを決定する段階は、非線形回帰モデルを決定する段階を含む。
例41は、例36−40のいずれかの主題を含み、ハードウェアコンポーネントの平均故障間隔値を決定する段階は、回帰モデルに基づいて、ハードウェアコンポーネントに関連付けられた予測測定基準を決定する段階と、予測測定基準を予め定められた閾値測定基準と比較する段階とを含む。
例42は、例36−41のいずれかの主題を含み、ハードウェアコンポーネントの平均故障間隔値を決定する段階は、回帰モデルに基づいて、ハードウェアコンポーネントに関連付けられた予測測定基準を決定する段階と、ハードウェアコンポーネントに関連付けられたサービスレベルアグリーメントのサービスレベル測定基準を決定する段階と、予測測定基準をサービスレベル測定基準と比較する段階と、を含む。
例43は、例36−42のいずれかの主題を含み、ラックコントローラによって、ハードウェアコンポーネントの平均故障間隔値をユーザに通知する段階をさらに備える。
例44は、例36−43のいずれかの主題を含み、ラックコントローラによって、論理マシンの平均故障間隔値に基づいて、論理マシンに関連付けられたメンテナンスセッションのための未来時を決定する段階をさらに備える。
例45は、例36−44のいずれかの主題を含み、ラックコントローラによって、論理マシンに割り当てられたコンピューティングアプリケーションに関連付けられた性能指標を受信する段階をさらに備え、未来時を決定する段階は、性能指標に基づいて、未来時を決定する段階をさらに含む。
例46は、例36−45のいずれかの主題を含み、ラックコントローラによって、コンピューティングラックの複数のハードウェアコンポーネントを識別する段階であって、複数のハードウェアコンポーネントは、ハードウェアコンポーネントを有し、ハードウェアコンポーネントのそれぞれに関連付けられる平均故障間隔値は、ハードウェアコンポーネントの平均故障間隔値と同様である、段階と、ラックコントローラによって、論理マシンが複数のハードウェアコンポーネントを含むように構成する段階と、をさらに備える。
例47は、データセンタスケジューリングを最適化するための方法を含み、当該方法は、コンピューティングラックのラックコントローラによって、コンピューティングラックによって実行可能なコンピューティングアプリケーションの記述を受信する段階と、ラックコントローラによって、コンピューティングアプリケーションの記述をリモートコンピューティングデバイスに送信する段階と、コンピューティングアプリケーションの記述を送信する段階に応答して、ラックコントローラによって、リモートコンピューティングデバイスからアプリケーションに関連付けられた予測ワークロードデータを受信する段階であって、予測ワークロードデータは、コンピューティングラックのハードウェアコンポーネントの使用パターンを示す、段階と、ラックコントローラによって、予側ワークロードデータに基づいて、コンピューティングラックのハードウェアコンポーネントの故障の確率を決定する段階と、を備える。
例48は、例47の主題を含み、コンピューティングアプリケーションの記述は、サービステンプレートを含む。
例49は、例47及び48のいずれかの主題を含み、記述は、コンピューティングアプリケーションの構造又は初期化方法を示す。
例50は、例47−49のいずれかの主題を含み、予測ワークロードデータは、ハードウェアコンポーネントにおけるロードを示す波形の振幅、周波数、又は位相を含む。
例51は、例47−50のいずれかの主題を含み、ハードウェアコンポーネントは、計算リソース、メモリリソース、ストレージリソース、又はネットワークリソースを有する。
例52は、例47−51のいずれかの主題を含み、ラックコントローラによって、コンピューティングラックの複数のハードウェアコンポーネントから複数の利用可能なハードウェアコンポーネントを識別する段階であって、複数の利用可能なハードウェアコンポーネントは、コンピューティングアプリケーションを実行するのに利用可能である、段階と、ラックコントローラによって、予測ワークロードデータに基づいて、複数の利用可能なハードウェアコンポーネントの各々の故障の確率を決定する段階と、をさらに備える。
例53は、例47−52のいずれかの主題を含み、ラックコントローラによって、複数の利用可能なハードウェアコンポーネントからコンピューティングアプリケーションを複数の利用可能なハードウェアコンポーネントの各々の故障の確率に応じて実行するのに利用可能なハードウェアコンポーネントを選択する段階をさらに備える。
例54は、例47−53のいずれかの主題を含み、ラックコントローラによって、コンピューティングアプリケーションに関連付けられたサービスレベルアグリーメントが、ハードウェアコンポーネントの故障の確率に応じて満たされるかどうかを決定する段階をさらに備える。
例55は、例47−54のいずれかの主題を含み、ラックコントローラによって、コンピューティングラックの第2のハードウェアコンポーネントに関連付けられたハードウェア性能測定基準を受信する段階と、ラックコントローラによって、第2のハードウェアコンポーネントの使用パターンを示す履歴ワークロードデータをハードウェア性能測定基準に応じて決定する段階と、ラックコントローラによって、コンピューティングラックの現在のアプリケーションのアプリケーション記述を履歴ワークロードデータに関連付ける段階と、ラックコントローラによって、現在のアプリケーションの履歴ワークロードデータ及びアプリケーション記述をリモートコンピューティングデバイスに送信する段階と、をさらに備える。
例56は、例47−55のいずれかの主題を含み、ハードウェア性能測定基準を受信する段階は、第2のハードウェアコンポーネントの測定基準コンポーネントからハードウェア性能測定基準を受信する段階を含む。
例57は、例47−56のいずれかの主題を含み、履歴ワークロードデータは、第2のハードウェアコンポーネントにおけるロードを示す波形の振幅、周波数、又は位相を有する。
例58は、例47−57のいずれかの主題を含み、履歴ワークロードデータを決定する段階は、ハードウェア性能測定基準のフーリエ変換を用いて履歴ワークロードデータを決定する段階を含む。
例59は、例47−58のいずれかの主題を含み、第2のハードウェアコンポーネントは、計算リソース、メモリリソース、ストレージリソース、又はネットワークリソースを有する。
例60は、性能データ管理のための方法を含み、当該方法は、第1のコンピューティングラックの第1のラックコントローラからコンピューティングデバイスによって、第1のコンピューティングラックによって実行可能なコンピューティングアプリケーション履歴ワークロードデータ及び関連する記述を受信する段階であって、履歴ワークロードデータは、第1のコンピューティングラックのハードウェアコンポーネントの使用パターンを示す、段階と、第2のコンピューティングラックの第2のラックコントローラからコンピューティングデバイスによって、コンピューティングアプリケーションの記述を受信する段階と、コンピューティングデバイスによって、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータを取り出す段階と、コンピューティングデバイスによって、履歴ワークロードデータを第2のラックコントローラに送信する段階と、を備える。
例61は、例60の主題を含み、コンピューティングアプリケーションの記述は、サービステンプレートを含む。
例62は、例60及び61のいずれかの主題を含み、記述は、コンピューティングアプリケーションの構造又は初期化方法を示す。
例63は、例60−62のいずれかの主題を含み、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータを取り出す段階は、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータが存在するかどうかを判断する段階と、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータが存在するという判断に応答して、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータを取り出す段階と、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータが存在しないとい判断に応答して、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータを推定する段階と、を含む。
例64は、例60−63のいずれかの主題を含み、履歴ワークロードデータを推定する段階は、第2のコンピューティングアプリケーションに関連付けられた履歴ワークロードデータに基づいて履歴ワークロードデータを推定する段階を含み、第2のコンピューティングアプリケーションは、コンピューティングアプリケーションと同様である。
例65は、例60−64のいずれかの主題を含み、コンピューティングアプリケーションの履歴ワークロードデータ及び関連する記述を受信する段階に応答して、コンピューティングデバイスによって、コンピューティングアプリケーションに関連付けられた推定ワークロードデータを、コンピューティングアプリケーションに関連付けられた履歴ワークロードデータに置き換える段階をさらに備える。
例66は、データセンタワークロードの最適化のための方法を含み、当該方法は、管理インタフェースによって、データセンタのシステム状態を表すインタラクティブな可視化を生成する段階と、管理インタフェースによって、インタラクティブな可視化に応答する人間の入力を受信する段階と、管理インタフェースによって、データセンタのワークロードスケジューリングを最適化するための人間の入力を機械可読ルールに変換する段階と、管理インタフェースによって、機械可読ルールに基づいてデータセンタのデータセンタスケジュールを最適化する段階と、を備える。
例67は、例66の主題を含み、管理インタフェースによって、データセンタのワークロードスケジューリングを最適化するための予め定められたルールを決定する段階をさらに備え、データセンタスケジュールを最適化する段階は、予め定められたルールに基づいて、データセンタのデータセンタスケジュールを最適化する段階をさらに含む。
例68は、例66及び67のいずれかの主題を含み、予め定められたルールを決定する段階は、データセンタに関連付けられたサービスレベルアグリーメントに基づいて、予め定められたルールを決定する段階を含む。
例69は、例66−68のいずれかの主題を含み、管理インタフェースによって、データセンタの複数のセンサから、データセンタのシステム状態を示すセンサーデータを受信する段階をさらに備え、インタラクティブな可視化を生成する段階は、センサーデータを受信する段階に応答してインタラクティブな可視化を生成する段階を含む。
例70は、例66−69のいずれかの主題を含み、データセンタスケジューラを最適化する段階に応答して、管理インタフェースによって、データセンタスケジュールに基づいてデータセンタのシステム状態を調節する段階と、データセンタのシステム状態を調節する段階に応答して、管理インタフェースによって、データセンタのシステム状態を表すインタラクティブな可視化を更新する段階と、をさらに備える。
例71は、プロセッサと、プロセッサによって実行された場合に、コンピューティングデバイスに例36−70のいずれかの方法を実行させる複数の命令が中に格納されたメモリとを備える、コンピューティングデバイスを含む。
例72は、実行されたことに応答して、コンピューティングデバイスが、例36−70のいずれかの方法を実行する結果をもたらす複数の命令をそこに格納して、備える、1又は複数の機械可読記憶媒体を含む。
例73は、例36−70のいずれかの方法を実行するための手段を備えるコンピューティングデバイスを含む。
例74は、コンピューティングラックのラックコントローラを含み、当該ラックコントローラは、コンピューティングラックのハードウェアコンポーネントに関連付けられた測定基準を受信するための手段であって、測定基準は、システム測定基準、性能測定基準、又は健全性測定基準を有する、手段と、ハードウェアコンポーネントに関連付けられた測定基準に基づいてハードウェアコンポーネントについて回帰モデルを決定するための手段と、ハードウェアコンポーネントについての回帰モデルに基づいて、ハードウェアコンポーネントの平均故障間隔値を決定するための手段と、ハードウェアコンポーネントの平均故障間隔値に基づいて、論理マシンの平均故障間隔値を決定するための手段とを備え、論理マシンは、ハードウェアコンポーネントに関連付けられる。
例75は、例74の主題を含み、測定基準を受信するための手段は、ハードウェアコンポーネントの測定基準コンポーネントから測定基準を受信するための手段を含む。
例76は、例74及び75のいずれかの主題を含み、ハードウェアコンポーネントは、計算リソース、メモリリソース、ストレージリソース、又はネットワークリソースを有する。
例77は、例74−76のいずれかの主題を含み、回帰モデルを決定するための手段は、線形回帰モデルを決定するための手段を含む。
例78は、例74−77のいずれかの主題を含み、回帰モデルを決定するための手段は、非線形回帰モデルを決定するための手段を含む。
例79は、例74−78のいずれかの主題を含み、ハードウェアコンポーネントの平均故障間隔値を決定するための手段は、回帰モデルに基づいて、ハードウェアコンポーネントに関連付けられた予測測定基準を決定するための手段と、予測測定基準を予め定められた閾値測定基準と比較するための手段とを含む。
例80は、例74−79のいずれかの主題を含み、ハードウェアコンポーネントの平均故障間隔値を決定するための手段は、回帰モデルに基づいて、ハードウェアコンポーネントに関連付けられた予測測定基準を決定するための手段と、ハードウェアコンポーネントに関連付けられたサービスレベルアグリーメントのサービスレベル測定基準を決定するための手段と、予測測定基準をサービスレベル測定基準と比較するための手段とを含む。
例81は、例74−80のいずれかの主題を含み、ハードウェアコンポーネントの平均故障間隔値をユーザに通知するための手段をさらに備える。
例82は、例74−81のいずれかの主題を含み、論理マシンの平均故障間隔値に基づいて、論理マシンに関連付けられたメンテナンスセッションのための未来時を決定するための手段をさらに備える。
例83は、例74−82のいずれかの主題を含み、論理マシンに割り当てられたコンピューティングアプリケーションに関連付けられた性能指標を受信するための手段をさらに備え、未来時を決定するための手段は、性能指標に基づいて、未来時を決定するための手段をさらに含む。
例84は、例74−83のいずれかの主題を含み、コンピューティングラックの複数のハードウェアコンポーネントを識別するための手段であって、複数のハードウェアコンポーネントは、上記ハードウェアコンポーネントを有し、ハードウェアコンポーネントのそれぞれに関連付けられる平均故障間隔値は、ハードウェアコンポーネントの平均故障間隔値と同様である、手段と、複数のハードウェアコンポーネントを含む論理マシンを構成するための手段と、をさらに備える。
例85は、コンピューティングラックのラックコントローラを含み、ラックコントローラは、コンピューティングラックによって実行可能なコンピューティングアプリケーションの記述を受信するための手段と、コンピューティングアプリケーションの記述をリモートコンピューティングデバイスに送信するための手段と、コンピューティングアプリケーションの記述を送信する段階に応答して、リモートコンピューティングデバイスからアプリケーションに関連付けられた予測ワークロードデータを受信するための手段であって、予測ワークロードデータは、コンピューティングラックのハードウェアコンポーネントの使用パターンを示す、手段と、予側ワークロードデータに基づいて、コンピューティングラックのハードウェアコンポーネントの故障の確率を決定するための手段と、を備える。
例86は、例85の主題を含み、コンピューティングアプリケーションの記述は、サービステンプレートを含む。
例87は、例85及び86のいずれかの主題を含み、記述は、コンピューティングアプリケーションの構造又は初期化方法を示す。
例88は、例85−87のいずれかの主題を含み、予測ワークロードデータは、ハードウェアコンポーネントにおけるロードを示す波形の振幅、周波数、又は位相を含む。
例89は、例85−88のいずれかの主題を含み、ハードウェアコンポーネントは、計算リソース、メモリリソース、ストレージリソース、又はネットワークリソースを有する。
例90は、例85−89のいずれかの主題を含み、コンピューティングラックの複数のハードウェアコンポーネントから複数の利用可能なハードウェアコンポーネントを識別するための手段であって、複数の利用可能なハードウェアコンポーネントは、コンピューティングアプリケーションを実行するのに利用可能である、手段と、予測ワークロードデータに基づいて、複数の利用可能なハードウェアコンポーネントの各々の故障の確率を決定するための手段とをさらに備える。
例91は、例85−90のいずれかの主題を含み、コンピューティングアプリケーションを、複数の利用可能なハードウェアコンポーネントの各々の故障の確率に応じて実行するべく、複数の利用可能なハードウェアコンポーネントから利用可能なハードウェアコンポーネントを選択するための手段をさらに備える。
例92は、例85−91のいずれかの主題を含み、コンピューティングアプリケーションに関連付けられたサービスレベルアグリーメントがハードウェアコンポーネントの故障の確率に応じて満たされるかどうかを判断するための手段をさらに備える。
例93は、例85−92のいずれかの主題を含み、コンピューティングラックの第2のハードウェアコンポーネントに関連付けられたハードウェア性能測定基準を受信するための手段と、履歴ワークロードデータをハードウェア性能測定基準に応じて決定するための手段であって、履歴ワークロードデータは第2のハードウェアコンポーネントの使用パターンを示す、手段と、コンピューティングラックの現在のアプリケーションのアプリケーション記述を履歴ワークロードデータに関連付けるための手段と、現在のアプリケーションの履歴ワークロードデータ及びアプリケーション記述をリモートコンピューティングデバイスに送信するための手段と、をさらに備える。
例94は、例85−93のいずれかの主題を含み、ハードウェア性能測定基準を受信するための手段は、ハードウェア性能測定基準を第2のハードウェアコンポーネントの測定基準コンポーネントから受信するための手段を含む。
例95は、例85−94のいずれかの主題を含み、履歴ワークロードデータは、第2のハードウェアコンポーネントにおけるロードを示す波形の振幅、周波数、又は位相を含む。
例96は、例85−95のいずれかの主題を含み、履歴ワークロードデータを決定するための手段は、ハードウェア性能測定基準のフーリエ変換を用いて履歴ワークロードデータを決定するための手段を含む。
例97は、例85−96のいずれかの主題を含み、第2のハードウェアコンポーネントは、計算リソース、メモリリソース、ストレージリソース、又はネットワークリソースを有する。
例98は、性能データ管理のためのコンピューティングデバイスを含み、当該コンピューティングデバイスは、履歴ワークロードデータ及び第1のコンピューティングラックによって実行可能なコンピューティングアプリケーションの関連する記述を第1のコンピューティングラックの第1のラックコントローラから受信するための手段であって、履歴ワークロードデータは、第1のコンピューティングラックのハードウェアコンポーネントの使用パターンを示す、手段と、第2のコンピューティングラックの第2のラックコントローラからコンピューティングアプリケーションの記述を受信するための手段と、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータを取り出すための手段と、履歴ワークロードデータを第2のラックコントローラに送信するための手段と、を備える。
例99は、例98の主題を含み、コンピューティングアプリケーションの記述は、サービステンプレートを含む。
例100は、例98及び99のいずれかの主題を含み、記述は、コンピューティングアプリケーションの構造又は初期化方法を示す。
例101は、例98−100のいずれかの主題を含み、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータを取り出すための手段は、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータが存在するかどうかを判断するための手段と、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータが存在するという判断に応答して、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータを取り出すための手段と、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータが存在しないという判断に応答して、コンピューティングアプリケーションの記述に関連付けられた履歴ワークロードデータを推定するための手段と、を含む。
例102は、例98−101のいずれかの主題を含み、履歴ワークロードデータを推定するための手段は、第2のコンピューティングアプリケーションに関連付けられた履歴ワークロードデータに基づいて履歴ワークロードデータを推定するための手段を含み、第2のコンピューティングアプリケーションは、コンピューティングアプリケーションと同様である。
例103は、例98−102のいずれかの主題を含み、コンピューティングアプリケーションの履歴ワークロードデータ及び関連する記述を受信することに応答して、コンピューティングデバイスによって、コンピューティングアプリケーションに関連付けられた推定ワークロードデータを、コンピューティングアプリケーションに関連付けられた履歴ワークロードデータに置き換えるための手段をさらに備える。
例104は、データセンタワークロードの最適化のための管理インタフェースを含み、当該管理インタフェースは、データセンタのシステム状態を表すインタラクティブな可視化を生成するための手段と、インタラクティブな可視化に応答した人間の入力を受信するための手段と、データセンタのワークロードスケジューリングを最適化するために人間の入力を機械可読ルールに変換するための手段と、機械可読ルールに基づいてデータセンタのデータセンタスケジュールを最適化するための手段とを備える。
例105は、例104の主題を含み、データセンタのワークロードスケジューリングを最適化するために予め定められたルールを決定するための手段をさらに備え、データセンタスケジュールを最適化するための手段は、予め定められたルールに基づいて、データセンタのデータセンタスケジュールを最適化するための手段をさらに含む。
例106は、例104及び105のいずれかの主題を含み、予め定められたルールを決定するための手段は、データセンタに関連付けられたサービスレベルアグリーメントに基づいて、予め定められたルールを決定するための手段を含む。
例107は、例104−106のいずれかの主題を含み、データセンタの複数のセンサからセンサーデータを受信するための手段をさらに備え、センサーデータは、データセンタのシステム状態を示し、インタラクティブな可視化を生成するための手段は、センサーデータを受信することに応答してインタラクティブな可視化を生成するための手段を含む。
例108は、例104−107のいずれかの主題を含み、データセンタスケジューラを最適化することに応答して、データセンタスケジュールに基づいてデータセンタのシステム状態を調節するための手段と、データセンタのシステム状態を調節することに応答して、データセンタのシステム状態を表すインタラクティブな可視化を更新するための手段とをさらに備える。
例108は、例104−107のいずれかの主題を含み、データセンタスケジューラを最適化することに応答して、データセンタスケジュールに基づいてデータセンタのシステム状態を調節するための手段と、データセンタのシステム状態を調節することに応答して、データセンタのシステム状態を表すインタラクティブな可視化を更新するための手段とをさらに備える。
[項目1]
コンピューティングラックのラックコントローラであって、
上記コンピューティングラックのハードウェアコンポーネントに関連付けられた測定基準を受信する性能監視モジュールであって、上記測定基準は、システム測定基準、性能測定基準、又は健全性測定基準を有する、性能監視モジュールと、
上記ハードウェアコンポーネントに関連付けられた上記測定基準に基づいて上記ハードウェアコンポーネントについて回帰モデルを決定し、
上記ハードウェアコンポーネントについての上記回帰モデルに基づいて、上記ハードウェアコンポーネントの平均故障間隔値を決定し、
上記ハードウェアコンポーネントの上記平均故障間隔値に基づいて、論理マシンの平均故障間隔値を決定する、分析モジュールであって、
上記論理マシンは、上記ハードウェアコンポーネントに関連付けられる、分析モジュールと、を備える、
ラックコントローラ。
[項目2]
上記測定基準を受信することは、上記ハードウェアコンポーネントの測定基準コンポーネントから上記測定基準を受信することを含む、項目1に記載のラックコントローラ。
[項目3]
上記ハードウェアコンポーネントは、計算リソース、メモリリソース、ストレージリソース、又はネットワークリソースを有する、項目1又は2に記載のラックコントローラ。
[項目4]
上記回帰モデルを決定することは、線形回帰モデルを決定することを含む、項目1から3のいずれか一項に記載のラックコントローラ。
[項目5]
上記回帰モデルを決定することは、非線形回帰モデルを決定することを含む、項目1から3のいずれか一項に記載のラックコントローラ。
[項目6]
上記ハードウェアコンポーネントの上記平均故障間隔値を決定することは、
上記回帰モデルに基づいて、上記ハードウェアコンポーネントに関連付けられた予測測定基準を決定することと、
上記予測測定基準を予め定められた閾値測定基準と比較することと、を含む、項目1から5のいずれか一項に記載のラックコントローラ。
[項目7]
上記ハードウェアコンポーネントの上記平均故障間隔値を決定することは、
上記回帰モデルに基づいて、上記ハードウェアコンポーネントに関連付けられた予測測定基準を決定することと、
上記ハードウェアコンポーネントに関連付けられたサービスレベルアグリーメントのサービスレベル測定基準を決定することと、
上記予測測定基準を上記サービスレベル測定基準と比較することと、を含む、項目1から6のいずれか一項に記載のラックコントローラ。
[項目8]
上記ハードウェアコンポーネントの上記平均故障間隔値をユーザに通知するデータセンタ管理モジュールをさらに備える、項目1から7のいずれか一項に記載のラックコントローラ。
[項目9]
上記論理マシンの上記平均故障間隔値に基づいて、上記論理マシンに関連付けられたメンテナンスセッションのための未来時を決定するデータセンタ管理モジュールをさらに備える、項目1から7のいずれか一項に記載のラックコントローラ。
[項目10]
上記性能監視モジュールは、上記論理マシンに割り当てられたコンピューティングアプリケーションに関連付けられた性能指標をさらに受信し、
上記未来時を決定することは、上記性能指標に基づいて、上記未来時を決定することをさらに含む、項目9に記載のラックコントローラ。
[項目11]
データセンタ管理モジュールをさらに備え、当該データセンタ管理モジュールは、上記コンピューティングラックの複数のハードウェアコンポーネントを識別し、上記複数のハードウェアコンポーネントは上記ハードウェアコンポーネントを有し、上記複数のハードウェアコンポーネントのそれぞれに関連付けられた平均故障間隔値は、上記ハードウェアコンポーネントの平均故障間隔値と同様であり、
上記論理マシンが上記複数のハードウェアコンポーネントを含むように上記論理マシンを構成する、項目1から7のいずれか一項に記載のラックコントローラ。
[項目12]
データセンタ管理のための方法であって、
コンピューティングラックのラックコントローラによって、上記コンピューティングラックのハードウェアコンポーネントに関連付けられた測定基準を受信する段階であって、上記測定基準は、システム測定基準、性能測定基準、又は健全性測定基準を有する、段階と、
上記ラックコントローラによって、上記ハードウェアコンポーネントに関連付けられた上記測定基準に基づいて上記ハードウェアコンポーネントについて回帰モデルを決定する段階と、
上記ラックコントローラによって、上記ハードウェアコンポーネントについての上記回帰モデルに基づいて、上記ハードウェアコンポーネントの平均故障間隔値を決定する段階と、
上記ラックコントローラによって、上記ハードウェアコンポーネントの上記平均故障間隔値に基づいて、論理マシンの平均故障間隔値を決定する段階であって、上記論理マシンは、上記ハードウェアコンポーネントに関連付けられる、段階と、を備える、方法。
[項目13]
上記測定基準を受信する段階は、上記ハードウェアコンポーネントの測定基準コンポーネントから上記測定基準を受信する段階を有する、項目12に記載の方法。
[項目14]
上記ハードウェアコンポーネントは、計算リソース、メモリリソース、ストレージリソース、又はネットワークリソースを有する、項目12又は13に記載の方法。
[項目15]
上記回帰モデルを決定する段階は、線形回帰モデルを決定する段階を有する、項目12から14のいずれか一項に記載の方法。
[項目16]
上記回帰モデルを決定する段階は、非線形回帰モデルを決定する段階を有する、項目12から14のいずれか一項に記載の方法。
[項目17]
上記ハードウェアコンポーネントの上記平均故障間隔値を決定する段階は、
上記回帰モデルに基づいて、上記ハードウェアコンポーネントに関連付けられた予測測定基準を決定する段階と、
上記予測測定基準を予め定められた閾値測定基準と比較する段階と、を有する、項目12から16のいずれか一項に記載の方法。
[項目18]
上記ハードウェアコンポーネントの上記平均故障間隔値を決定する段階は、
上記回帰モデルに基づいて、上記ハードウェアコンポーネントに関連付けられた予測測定基準を決定する段階と、
上記ハードウェアコンポーネントに関連付けられたサービスレベルアグリーメントのサービスレベル測定基準を決定する段階と、
上記予測測定基準を上記サービスレベル測定基準と比較する段階と、を有する、項目12から17のいずれか一項に記載の方法。
[項目19]
上記ラックコントローラによって、上記ハードウェアコンポーネントの上記平均故障間隔値をユーザに通知する段階をさらに備える、項目12から18のいずれか一項に記載の方法。
[項目20]
上記ラックコントローラによって、上記論理マシンの上記平均故障間隔値に基づいて、上記論理マシンに関連付けられたメンテナンスセッションのための未来時を決定する段階をさらに備える、項目12から19のいずれか一項に記載の方法。
[項目21]
上記ラックコントローラによって、上記論理マシンに割り当てられたコンピューティングアプリケーションに関連付けられる性能指標を受信する段階をさらに備え、
上記未来時を決定する段階は、上記性能指標に基づいて、上記未来時を決定する段階をさらに有する、項目20に記載の方法。
[項目22]
上記ラックコントローラによって、上記コンピューティングラックの複数のハードウェアコンポーネントを識別する段階であって、上記複数のハードウェアコンポーネントは、上記ハードウェアコンポーネントを有し、上記複数のハードウェアコンポーネントのそれぞれに関連付けられた平均故障間隔値は、上記ハードウェアコンポーネントの上記平均故障間隔値と同様である、段階と、
上記ラックコントローラによって、上記論理マシンが上記複数のハードウェアコンポーネントを含むように上記論理マシンを構成する段階と、をさらに備える、項目12から21のいずれか一項に記載の方法。
[項目23]
コンピューティングデバイスであって、
プロセッサと、
上記プロセッサが実行された場合、上記コンピューティングデバイスに、項目12から22のいずれか一項に記載の方法を実行させる複数の命令を格納したメモリと、を備える、コンピューティングデバイス。
[項目24]
実行されることに応答して、コンピューティングデバイスが項目12から22のいずれか一項に記載の方法を実行するという結果をもたらす、それに格納された複数の命令を備える、1又は複数の機械可読記憶媒体。
[項目25]
項目12から22のいずれか一項に記載の方法を実行するための手段を備える、コンピューティングデバイス。

Claims (25)

  1. コンピューティングラックのラックコントローラであって、
    前記コンピューティングラックのハードウェアコンポーネントに関連付けられた測定基準を受信する性能監視モジュールであって、前記測定基準は、システム測定基準、性能測定基準、又は健全性測定基準を有する、性能監視モジュールと、
    前記ハードウェアコンポーネントに関連付けられた前記測定基準に基づいて前記ハードウェアコンポーネントについて回帰モデルを決定し、
    前記ハードウェアコンポーネントについての前記回帰モデルに基づいて、前記ハードウェアコンポーネントの平均故障間隔値を決定し、
    前記ハードウェアコンポーネントの前記平均故障間隔値に基づいて、論理マシンの平均故障間隔値を決定する、分析モジュールであって、
    前記論理マシンは、前記ハードウェアコンポーネントに関連付けられる、分析モジュールと、を備える、
    ラックコントローラ。
  2. 前記測定基準を受信することは、前記ハードウェアコンポーネントの測定基準コンポーネントから前記測定基準を受信することを含む、請求項1に記載のラックコントローラ。
  3. 前記ハードウェアコンポーネントは、計算リソース、メモリリソース、ストレージリソース、又はネットワークリソースを有する、請求項1又は2に記載のラックコントローラ。
  4. 前記回帰モデルを決定することは、線形回帰モデルを決定することを含む、請求項1から3のいずれか一項に記載のラックコントローラ。
  5. 前記回帰モデルを決定することは、非線形回帰モデルを決定することを含む、請求項1から3のいずれか一項に記載のラックコントローラ。
  6. 前記ハードウェアコンポーネントの前記平均故障間隔値を決定することは、
    前記回帰モデルに基づいて、前記ハードウェアコンポーネントに関連付けられた予測測定基準を決定することと、
    前記予測測定基準を予め定められた閾値測定基準と比較することと、を含む、請求項1から5のいずれか一項に記載のラックコントローラ。
  7. 前記ハードウェアコンポーネントの前記平均故障間隔値を決定することは、
    前記回帰モデルに基づいて、前記ハードウェアコンポーネントに関連付けられた予測測定基準を決定することと、
    前記ハードウェアコンポーネントに関連付けられたサービスレベルアグリーメントのサービスレベル測定基準を決定することと、
    前記予測測定基準を前記サービスレベル測定基準と比較することと、を含む、請求項1から6のいずれか一項に記載のラックコントローラ。
  8. 前記ハードウェアコンポーネントの前記平均故障間隔値をユーザに通知するデータセンタ管理モジュールをさらに備える、請求項1から7のいずれか一項に記載のラックコントローラ。
  9. 前記論理マシンの前記平均故障間隔値に基づいて、前記論理マシンに関連付けられたメンテナンスセッションのための未来時を決定するデータセンタ管理モジュールをさらに備える、請求項1から7のいずれか一項に記載のラックコントローラ。
  10. 前記性能監視モジュールは、前記論理マシンに割り当てられたコンピューティングアプリケーションに関連付けられた性能指標をさらに受信し、
    前記未来時を決定することは、前記性能指標に基づいて、前記未来時を決定することをさらに含む、請求項9に記載のラックコントローラ。
  11. データセンタ管理モジュールをさらに備え、当該データセンタ管理モジュールは、前記コンピューティングラックの複数のハードウェアコンポーネントを識別し、前記複数のハードウェアコンポーネントは前記ハードウェアコンポーネントを有し、前記複数のハードウェアコンポーネントのそれぞれに関連付けられた平均故障間隔値は、前記ハードウェアコンポーネントの平均故障間隔値と同様であり、
    前記論理マシンが前記複数のハードウェアコンポーネントを含むように前記論理マシンを構成する、請求項1から7のいずれか一項に記載のラックコントローラ。
  12. データセンタ管理のための方法であって、
    コンピューティングラックのラックコントローラによって、前記コンピューティングラックのハードウェアコンポーネントに関連付けられた測定基準を受信する段階であって、前記測定基準は、システム測定基準、性能測定基準、又は健全性測定基準を有する、段階と、
    前記ラックコントローラによって、前記ハードウェアコンポーネントに関連付けられた前記測定基準に基づいて前記ハードウェアコンポーネントについて回帰モデルを決定する段階と、
    前記ラックコントローラによって、前記ハードウェアコンポーネントについての前記回帰モデルに基づいて、前記ハードウェアコンポーネントの平均故障間隔値を決定する段階と、
    前記ラックコントローラによって、前記ハードウェアコンポーネントの前記平均故障間隔値に基づいて、論理マシンの平均故障間隔値を決定する段階であって、前記論理マシンは、前記ハードウェアコンポーネントに関連付けられる、段階と、を備える、方法。
  13. 前記測定基準を受信する段階は、前記ハードウェアコンポーネントの測定基準コンポーネントから前記測定基準を受信する段階を有する、請求項12に記載の方法。
  14. 前記ハードウェアコンポーネントは、計算リソース、メモリリソース、ストレージリソース、又はネットワークリソースを有する、請求項12又は13に記載の方法。
  15. 前記回帰モデルを決定する段階は、線形回帰モデルを決定する段階を有する、請求項12から14のいずれか一項に記載の方法。
  16. 前記回帰モデルを決定する段階は、非線形回帰モデルを決定する段階を有する、請求項12から14のいずれか一項に記載の方法。
  17. 前記ハードウェアコンポーネントの前記平均故障間隔値を決定する段階は、
    前記回帰モデルに基づいて、前記ハードウェアコンポーネントに関連付けられた予測測定基準を決定する段階と、
    前記予測測定基準を予め定められた閾値測定基準と比較する段階と、を有する、請求項12から16のいずれか一項に記載の方法。
  18. 前記ハードウェアコンポーネントの前記平均故障間隔値を決定する段階は、
    前記回帰モデルに基づいて、前記ハードウェアコンポーネントに関連付けられた予測測定基準を決定する段階と、
    前記ハードウェアコンポーネントに関連付けられたサービスレベルアグリーメントのサービスレベル測定基準を決定する段階と、
    前記予測測定基準を前記サービスレベル測定基準と比較する段階と、を有する、請求項12から17のいずれか一項に記載の方法。
  19. 前記ラックコントローラによって、前記ハードウェアコンポーネントの前記平均故障間隔値をユーザに通知する段階をさらに備える、請求項12から18のいずれか一項に記載の方法。
  20. 前記ラックコントローラによって、前記論理マシンの前記平均故障間隔値に基づいて、前記論理マシンに関連付けられたメンテナンスセッションのための未来時を決定する段階をさらに備える、請求項12から19のいずれか一項に記載の方法。
  21. 前記ラックコントローラによって、前記論理マシンに割り当てられたコンピューティングアプリケーションに関連付けられる性能指標を受信する段階をさらに備え、
    前記未来時を決定する段階は、前記性能指標に基づいて、前記未来時を決定する段階をさらに有する、請求項20に記載の方法。
  22. 前記ラックコントローラによって、前記コンピューティングラックの複数のハードウェアコンポーネントを識別する段階であって、前記複数のハードウェアコンポーネントは、前記ハードウェアコンポーネントを有し、前記複数のハードウェアコンポーネントのそれぞれに関連付けられた平均故障間隔値は、前記ハードウェアコンポーネントの前記平均故障間隔値と同様である、段階と、
    前記ラックコントローラによって、前記論理マシンが前記複数のハードウェアコンポーネントを含むように前記論理マシンを構成する段階と、をさらに備える、請求項12から21のいずれか一項に記載の方法。
  23. コンピューティングデバイスであって、
    プロセッサと、
    前記プロセッサが実行された場合、前記コンピューティングデバイスに、請求項12から22のいずれか一項に記載の方法を実行させる複数の命令を格納したメモリと、を備える、コンピューティングデバイス。
  24. 実行されることに応答して、コンピューティングデバイスが請求項12から22のいずれか一項に記載の方法を実行するという結果をもたらす、それに格納された複数の命令を備える、1又は複数の機械可読記憶媒体。
  25. 請求項12から22のいずれか一項に記載の方法を実行するための手段を備える、コンピューティングデバイス。
JP2016546019A 2014-02-27 2015-02-24 ラックスケールアーキテクチャコンピューティングシステムのためのワークロード最適化、スケジューリング及び配置 Active JP6438035B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201461945597P 2014-02-27 2014-02-27
US201461945588P 2014-02-27 2014-02-27
US61/945,588 2014-02-27
US61/945,597 2014-02-27
PCT/US2015/017228 WO2015130645A1 (en) 2014-02-27 2015-02-24 Workload optimization, scheduling, and placement for rack-scale architecture computing systems

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2018214261A Division JP2019079541A (ja) 2014-02-27 2018-11-15 ラックスケールアーキテクチャコンピューティングシステムのためのワークロード最適化、スケジューリング及び配置

Publications (2)

Publication Number Publication Date
JP2017506776A true JP2017506776A (ja) 2017-03-09
JP6438035B2 JP6438035B2 (ja) 2018-12-12

Family

ID=54009540

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2016546019A Active JP6438035B2 (ja) 2014-02-27 2015-02-24 ラックスケールアーキテクチャコンピューティングシステムのためのワークロード最適化、スケジューリング及び配置
JP2018214261A Abandoned JP2019079541A (ja) 2014-02-27 2018-11-15 ラックスケールアーキテクチャコンピューティングシステムのためのワークロード最適化、スケジューリング及び配置

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2018214261A Abandoned JP2019079541A (ja) 2014-02-27 2018-11-15 ラックスケールアーキテクチャコンピューティングシステムのためのワークロード最適化、スケジューリング及び配置

Country Status (6)

Country Link
US (1) US10404547B2 (ja)
EP (1) EP3111592B1 (ja)
JP (2) JP6438035B2 (ja)
CN (1) CN105940637B (ja)
BR (1) BR112016017483A2 (ja)
WO (1) WO2015130645A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11544127B2 (en) 2019-08-02 2023-01-03 Fujitsu Limited System management method, non-transitory computer-readable storage medium for storing system management program, and system management device

Families Citing this family (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9699049B2 (en) * 2014-09-23 2017-07-04 Ebay Inc. Predictive model for anomaly detection and feedback-based scheduling
US10991172B1 (en) * 2014-10-30 2021-04-27 United Services Automobile Association(USAA) Generating motor vehicle components
US9471452B2 (en) 2014-12-01 2016-10-18 Uptake Technologies, Inc. Adaptive handling of operating data
US10506041B2 (en) 2015-01-22 2019-12-10 International Business Machines Corporation Providing information on published configuration patterns of storage resources to client systems in a network computing environment
US9912751B2 (en) 2015-01-22 2018-03-06 International Business Machines Corporation Requesting storage performance models for a configuration pattern of storage resources to deploy at a client computing environment
US9917897B2 (en) * 2015-01-22 2018-03-13 International Business Machines Corporation Publishing configuration patterns for storage resources and storage performance models from client systems to share with client systems in a network computing environment
US10133602B2 (en) * 2015-02-19 2018-11-20 Oracle International Corporation Adaptive contention-aware thread placement for parallel runtime systems
US10404523B2 (en) * 2015-03-09 2019-09-03 Vapor IO Inc. Data center management with rack-controllers
US10257268B2 (en) 2015-03-09 2019-04-09 Vapor IO Inc. Distributed peer-to-peer data center management
US20160350725A1 (en) * 2015-05-29 2016-12-01 Ncr Corporation Identifying products for servicing
US10089773B1 (en) * 2015-06-30 2018-10-02 EMC IP Holding Company LLC Animated array performance dashboard
US9806955B2 (en) * 2015-08-20 2017-10-31 Accenture Global Services Limited Network service incident prediction
US10373069B2 (en) * 2015-09-26 2019-08-06 Intel Corporation Technologies for platform-targeted machine learning
US10476950B2 (en) * 2015-10-09 2019-11-12 Capital One Services, Llc System and method for risk-aware server load balancing
CN105227666A (zh) * 2015-10-12 2016-01-06 浪潮(北京)电子信息产业有限公司 一种面向云计算的整机柜管理架构
US20170238316A1 (en) * 2016-02-12 2017-08-17 Futurewei Technologies, Inc. Configuration of a set of carriers in a carrier aggregation operation of a wireless communication system
US10503401B2 (en) * 2016-05-16 2019-12-10 International Business Machines Corporation Opportunistic data analytics using memory bandwidth in disaggregated computing systems
US11275619B2 (en) * 2016-05-16 2022-03-15 International Business Machines Corporation Opportunistic data analytics using memory bandwidth in disaggregated computing systems
US11474697B2 (en) * 2016-05-16 2022-10-18 International Business Machines Corporation Opportunistic data analytics using memory bandwidth in disaggregated computing systems
US10528098B2 (en) 2016-06-29 2020-01-07 Western Digital Technologies, Inc. Thermal aware workload scheduling
US10380010B2 (en) * 2016-06-30 2019-08-13 International Business Machines Corporation Run time and historical workload report scores for customer profiling visualization
US10255165B2 (en) * 2016-06-30 2019-04-09 International Business Machines Corporation Run time automatic workload tuning using customer profiling workload comparison
US10346289B2 (en) * 2016-06-30 2019-07-09 International Business Machines Corporation Run time workload threshold alerts for customer profiling visualization
US10034407B2 (en) * 2016-07-22 2018-07-24 Intel Corporation Storage sled for a data center
US10417012B2 (en) 2016-09-21 2019-09-17 International Business Machines Corporation Reprogramming a field programmable device on-demand
US10355945B2 (en) * 2016-09-21 2019-07-16 International Business Machines Corporation Service level management of a workload defined environment
US10628233B2 (en) 2016-12-30 2020-04-21 Samsung Electronics Co., Ltd. Rack-level scheduling for reducing the long tail latency using high performance SSDS
US11777963B2 (en) * 2017-02-24 2023-10-03 LogRhythm Inc. Analytics for processing information system data
CN106886485B (zh) * 2017-02-28 2020-10-09 深圳市华傲数据技术有限公司 系统容量分析预测方法及装置
US20180288152A1 (en) * 2017-04-01 2018-10-04 Anjaneya R. Chagam Reddy Storage dynamic accessibility mechanism method and apparatus
US10332320B2 (en) 2017-04-17 2019-06-25 Intel Corporation Autonomous vehicle advanced sensing and response
CN108733533B (zh) * 2017-04-18 2021-07-13 微软技术许可有限责任公司 经计划的主机维护的可选的手动调度
US20180336579A1 (en) * 2017-05-18 2018-11-22 Microsoft Technology Licensing, Llc Systems and methods for scheduling datacenter buildouts
US20190068466A1 (en) * 2017-08-30 2019-02-28 Intel Corporation Technologies for auto-discovery of fault domains
WO2019123471A1 (en) * 2017-12-22 2019-06-27 Telefonaktiebolaget Lm Ericsson (Publ) System and method for predicting the state changes of network nodes
US10915791B2 (en) * 2017-12-27 2021-02-09 Intel Corporation Storing and retrieving training data for models in a data center
US10528516B2 (en) * 2018-03-16 2020-01-07 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Selection of a location for installation of a hardware component in a compute node using historical performance scores
US10628338B2 (en) 2018-03-21 2020-04-21 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Selection of a location for installation of a CPU in a compute node using predicted performance scores
CN110413492B (zh) * 2018-04-28 2023-07-04 伊姆西Ip控股有限责任公司 存储盘的健康评估方法、电子设备和计算机程序产品
US11823274B2 (en) 2018-06-04 2023-11-21 Machine Cover, Inc. Parametric instruments and methods relating to business interruption
US11842407B2 (en) 2018-06-04 2023-12-12 Machine Cover, Inc. Parametric instruments and methods relating to geographical area business interruption
US11005725B2 (en) * 2018-06-29 2021-05-11 Vmware, Inc. Methods and apparatus to proactively self-heal workload domains in hyperconverged infrastructures
US10935980B2 (en) * 2018-09-12 2021-03-02 International Business Machines Corporation Automated maintenance of datacenter computers using mobile robotic manipulators
US10802988B2 (en) * 2018-09-25 2020-10-13 International Business Machines Corporation Dynamic memory-based communication in disaggregated datacenters
US11012423B2 (en) 2018-09-25 2021-05-18 International Business Machines Corporation Maximizing resource utilization through efficient component communication in disaggregated datacenters
US11163713B2 (en) 2018-09-25 2021-11-02 International Business Machines Corporation Efficient component communication through protocol switching in disaggregated datacenters
US11182322B2 (en) 2018-09-25 2021-11-23 International Business Machines Corporation Efficient component communication through resource rewiring in disaggregated datacenters
CN109067918B (zh) * 2018-09-25 2020-12-22 西北农林科技大学 一种物联网中的联合内容缓存和更新策略的方法及算法
US10831698B2 (en) 2018-09-25 2020-11-10 International Business Machines Corporation Maximizing high link bandwidth utilization through efficient component communication in disaggregated datacenters
US10915493B2 (en) 2018-09-25 2021-02-09 International Business Machines Corporation Component building blocks and optimized compositions thereof in disaggregated datacenters
US10637733B2 (en) 2018-09-25 2020-04-28 International Business Machines Corporation Dynamic grouping and repurposing of general purpose links in disaggregated datacenters
US11650849B2 (en) 2018-09-25 2023-05-16 International Business Machines Corporation Efficient component communication through accelerator switching in disaggregated datacenters
US10671557B2 (en) 2018-09-25 2020-06-02 International Business Machines Corporation Dynamic component communication using general purpose links between respectively pooled together of like typed devices in disaggregated datacenters
US11050637B2 (en) * 2018-09-26 2021-06-29 International Business Machines Corporation Resource lifecycle optimization in disaggregated data centers
US10831580B2 (en) 2018-09-26 2020-11-10 International Business Machines Corporation Diagnostic health checking and replacement of resources 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
US11188408B2 (en) * 2018-09-26 2021-11-30 International Business Machines Corporation Preemptive resource replacement according to failure pattern analysis 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
US10761915B2 (en) 2018-09-26 2020-09-01 International Business Machines Corporation Preemptive deep diagnostics and health checking of resources in disaggregated data centers
US10958537B2 (en) * 2019-01-18 2021-03-23 Juniper Networks, Inc. Method for spatio-temporal monitoring
US11755926B2 (en) * 2019-02-28 2023-09-12 International Business Machines Corporation Prioritization and prediction of jobs using cognitive rules engine
EP3935581A4 (en) 2019-03-04 2022-11-30 Iocurrents, Inc. DATA COMPRESSION AND COMMUNICATION USING MACHINE LEARNING
US11169723B2 (en) 2019-06-28 2021-11-09 Amazon Technologies, Inc. Data storage system with metadata check-pointing
US20210089364A1 (en) * 2019-09-23 2021-03-25 Microsoft Technology Licensing, Llc Workload balancing among computing modules
CN110865924B (zh) * 2019-11-29 2023-05-16 国网四川省电力公司信息通信公司 电力信息系统内部服务器健康度诊断方法与健康诊断框架
US11115494B1 (en) * 2020-02-26 2021-09-07 International Business Machines Corporation Profile clustering for homogenous instance analysis
US11182096B1 (en) * 2020-05-18 2021-11-23 Amazon Technologies, Inc. Data storage system with configurable durability
US11055196B1 (en) 2020-06-12 2021-07-06 Bank Of America Corporation System and method for optimizing technology stack architecture
CN111930299B (zh) * 2020-06-22 2024-01-26 中国建设银行股份有限公司 分配存储单元的方法及相关设备
US11463536B2 (en) * 2020-08-28 2022-10-04 Teso LT, UAB Curating proxy server pools
US11941448B2 (en) * 2020-09-03 2024-03-26 Hewlett Packard Enterprise Development Lp Allocating computing resources to data transfer jobs based on a completed amount and an estimated priority of system failure
CN112511453B (zh) * 2020-11-19 2023-04-07 中移(杭州)信息技术有限公司 Sdn控制器部署方法、设备和存储介质
US20220327453A1 (en) * 2021-04-08 2022-10-13 International Business Machines Corporation System and method for infrastructure capacity planning of cloud computing resources
US20220342556A1 (en) * 2021-04-27 2022-10-27 Netapp, Inc. Workload Analysis For Long-Term Management Via Performance Service Levels
US11736348B2 (en) 2021-06-28 2023-08-22 Dell Products L.P. System and method for network services based functionality provisioning in a VDI environment
US20220414577A1 (en) * 2021-06-28 2022-12-29 Dell Products L.P. System and method for performance-centric workload placement in a hybrid cloud environment
US20220413935A1 (en) * 2021-06-29 2022-12-29 Capital One Services, Llc Systems and methods for choosing an appropriate scaling technique for allocating computational resources to distributed applications

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0370069A (ja) * 1989-08-09 1991-03-26 Oki Electric Ind Co Ltd 信頼性特性値算出装置
JP2005339528A (ja) * 2004-04-30 2005-12-08 Hitachi Ltd 計算機システム、管理サーバ、ブレード割り当て方法、ブレード割り当てプログラム、サーバシステム及びサーバの配置方法
US20080177613A1 (en) * 2007-01-19 2008-07-24 International Business Machines Corporation System to improve predictive maintenance and warranty cost/price estimation
JP2008176674A (ja) * 2007-01-22 2008-07-31 Kyocera Mita Corp 電子機器、サービス提供方法及びプログラム
WO2011033651A1 (ja) * 2009-09-18 2011-03-24 株式会社東芝 故障率を算出する装置、システムおよび方法
JP2012203750A (ja) * 2011-03-26 2012-10-22 Fujitsu Ltd サーバ管理装置、サーバ管理方法、及び、サーバ管理プログラム
US20130138419A1 (en) * 2011-11-30 2013-05-30 Oracle International Corporation Method and system for the assessment of computer system reliability using quantitative cumulative stress metrics

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7640547B2 (en) * 2002-02-08 2009-12-29 Jpmorgan Chase & Co. System and method for allocating computing resources of a distributed computing system
US7149917B2 (en) * 2002-07-30 2006-12-12 Cisco Technology, Inc. Method and apparatus for outage measurement
US7213179B2 (en) 2002-07-30 2007-05-01 Cisco Technology, Inc. Automated and embedded software reliability measurement and classification in network elements
JP4992905B2 (ja) 2006-09-29 2012-08-08 富士通株式会社 サーバ配備プログラム及びサーバ配備方法
US8255251B2 (en) * 2007-10-31 2012-08-28 International Business Machines Corporation Determining composite service reliability
JP5263305B2 (ja) 2009-02-13 2013-08-14 日本電気株式会社 アクセスノード監視制御装置、アクセスノード監視システム、方法およびプログラム
US8108718B2 (en) * 2009-11-13 2012-01-31 Hewlett-Packard Development Company, L.P. Checkpointing in massively parallel processing
WO2011088349A2 (en) 2010-01-15 2011-07-21 Endurance International Group, Inc. Unaffiliated web domain hosting service based on a common service architecture
US9378112B2 (en) * 2012-06-25 2016-06-28 International Business Machines Corporation Predictive alert threshold determination tool
US9298534B2 (en) * 2013-09-05 2016-03-29 Kabushiki Kaisha Toshiba Memory system and constructing method of logical block

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0370069A (ja) * 1989-08-09 1991-03-26 Oki Electric Ind Co Ltd 信頼性特性値算出装置
JP2005339528A (ja) * 2004-04-30 2005-12-08 Hitachi Ltd 計算機システム、管理サーバ、ブレード割り当て方法、ブレード割り当てプログラム、サーバシステム及びサーバの配置方法
US20080177613A1 (en) * 2007-01-19 2008-07-24 International Business Machines Corporation System to improve predictive maintenance and warranty cost/price estimation
JP2008176674A (ja) * 2007-01-22 2008-07-31 Kyocera Mita Corp 電子機器、サービス提供方法及びプログラム
WO2011033651A1 (ja) * 2009-09-18 2011-03-24 株式会社東芝 故障率を算出する装置、システムおよび方法
JP2012203750A (ja) * 2011-03-26 2012-10-22 Fujitsu Ltd サーバ管理装置、サーバ管理方法、及び、サーバ管理プログラム
US20130138419A1 (en) * 2011-11-30 2013-05-30 Oracle International Corporation Method and system for the assessment of computer system reliability using quantitative cumulative stress metrics

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
長山 格 他: "「ニューラル予測モデルによる電子部品の信頼性推定」", 電気学会論文誌C 電子・情報・システム部門誌, vol. 第118-C巻 第4号, JPN6017035522, April 1998 (1998-04-01), JP, pages 544頁〜550頁 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11544127B2 (en) 2019-08-02 2023-01-03 Fujitsu Limited System management method, non-transitory computer-readable storage medium for storing system management program, and system management device

Also Published As

Publication number Publication date
CN105940637A (zh) 2016-09-14
EP3111592A1 (en) 2017-01-04
JP2019079541A (ja) 2019-05-23
CN105940637B (zh) 2020-03-31
EP3111592A4 (en) 2017-08-30
EP3111592B1 (en) 2021-04-28
US20160359683A1 (en) 2016-12-08
WO2015130645A1 (en) 2015-09-03
US10404547B2 (en) 2019-09-03
JP6438035B2 (ja) 2018-12-12
BR112016017483A2 (pt) 2017-08-08

Similar Documents

Publication Publication Date Title
JP6438035B2 (ja) ラックスケールアーキテクチャコンピューティングシステムのためのワークロード最適化、スケジューリング及び配置
Ilager et al. Thermal prediction for efficient energy management of clouds using machine learning
Fu et al. DRS: Dynamic resource scheduling for real-time analytics over fast streams
US9116897B2 (en) Techniques for power analysis
AU2009221803B2 (en) Environmentally cognizant power management
US20180027058A1 (en) Technologies for Efficiently Identifying Managed Nodes Available for Workload Assignments
US8738972B1 (en) Systems and methods for real-time monitoring of virtualized environments
US10747640B2 (en) Techniques for managing a distributed computing environment using event digests
Gill et al. RADAR: Self‐configuring and self‐healing in resource management for enhancing quality of cloud services
Forell et al. Cloud management: Challenges and opportunities
US20150227397A1 (en) Energy efficient assignment of workloads in a datacenter
Mondal et al. Scheduling of time-varying workloads using reinforcement learning
Guzek et al. A holistic model of the performance and the energy efficiency of hypervisors in a high‐performance computing environment
US20170054592A1 (en) Allocation of cloud computing resources
Monshizadeh Naeen et al. Adaptive Markov‐based approach for dynamic virtual machine consolidation in cloud data centers with quality‐of‐service constraints
US10936467B2 (en) Topology aware real time GPU-to-GPU traffic monitoring method and analyzing tools
Cole Data center infrastructure management
Wang et al. Sustainability-aware resource provisioning in data centers
Moocheet Minimizing Energy Consumption in Data Centers Using Embedded Sensors and Machine Learning
Tabash Workload characterization and autoscaling in Cloud environments
Li et al. A heuristic time sharing policy for backup resources in cloud system
Zhang et al. Efficient statistical performance modeling for autonomic, service-oriented systems
Sankar Impact of Data Center Infrastructure on Server Availability–Characterization, Management and Optimization
JP2014157412A (ja) イベント集約装置、イベント集約方法およびイベント集約プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160831

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160831

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170919

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20171213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180724

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181003

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181115

R150 Certificate of patent or registration of utility model

Ref document number: 6438035

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250