数学的に、ノードの数とそれぞれの稼働時間の割合に基づいて稼働時間の割合を計算する方法は?


11

この質問はサーバーの質問というよりは数学の質問ですが、サーバーに強く関連しています。

95%の稼働時間を保証できるサーバーがあり、そのサーバーを2のクラスターに配置した場合、稼働時間はどのくらいになりますか?さて、私が同じことをしたとしましょう。しかし、それを3のクラスターにしますか?

単一障害点などのことは考慮せず、ここでは単に数学に焦点を当てます。これを少し複雑にする理由の1つは、たとえば2台のサーバーがある場合、両方がオフになる可能性が2 ^ 2であるため、1/4です。または3の場合は2 ^ 3なので、1/8になります。これらのサーバーごとに5%のダウンタイムがあるとすると、合計平均はその5%の1/8になりますか?

このようなものをどのように計算しますか?


「95%の稼働率」—何が問題ですか?5日または5年の稼働時間を知っています。0.95の稼働時間とは何ですか?どのユニット?
poige

1
なぜこれを知る必要があるのですか?ユースケースは何ですか?
ewwhite 2016

@poigeおそらく、「95%の稼働時間」は「稼働時間は95%の時間を占める」ことを意味しますが、それについて徹底的に判断した場合、すべての時間に存在するわけではないため、すべての稼働時間が〜0%であると言えます。 。
モニカの訴訟に資金

1)おそらく著者は答えるべきですか?;)2)何かを計算する前に、それが何であるかを理解することをお勧めします。;)
16

回答:


11

稼働時間は滑りやすいものです... サービスの可用性を計算する場合、それは単に

amount of time service is available
-----------------------------------   x 100
  amount of time that has passed 

サービスを提供するクラスターがある場合、サービスが利用できなくなる可能性は低くなりますが、サービスの可用性(稼働時間)の計算は同じままです。


8

1つのサーバーがオフラインになる可能性は(1-0.95)です。両方のサーバーがオフラインになる可能性は(1-0.95)*(1-0.95)= 0.0025などです...

したがって、モデルを使用して、純粋に数学的な観点から見ると、サーバーの1つまたは両方が99.75%の時間で稼働しているはずです。

ただし、このような数学的モデルを使用することは、潜在的な稼働時間を計算するための正しい方法であるとは確信していません。両方のサーバーに共通する、影響を与える可能性のある他の要因があります。つまり、95%は5%の時間であるためです。両方のサーバーに影響を与える停電があるので、クラスターがあっても違いはありません


こんにちはフィル。電力は確かに可用性の1つのコンポーネントであり、複数のラックにインストールを配置し、さまざまなソースから電力を取得することなどによって軽減できます。これは、数個のサーバーよりも明らかに多くのコンポーネントがあるため、純粋に数学的観点からのものです。 :)
Jeroen Landheer 16

8
重要なのは、この計算とJeroenの答えの計算が機能するのは、(数学的な意味で)アップタイムが独立している場合のみです。相関関係がある場合(例:両方のラックに給電する電源ケーブル)、状況はそれほど単純ではありません。
TripeHound 2016

@TripeHoundこれが私が私の答えを書いた理由です:)
Seamus

5

これは、サーバーが5%の時間ダウンしている理由によって異なります。電力の95%は利用可能であるが、サーバーに問題がない場合、同じ場所にある2番目のサーバーは稼働時間をまったく増加させません。一方がダウンすると、両方がダウンします。これは、関連付けられている障害の例です。ダウンタイムの少なくとも一部は、すべてのサーバーに同時に影響を与えるエラー(電力...)が原因である可能性があります。しかし、ダウンタイムの一部は独立していますサーバー間。あなたがそれを適切にしたいなら、あなたはこれらのことを別々に扱うべきです。したがって、サーバー1に独立したエラー(p)がなく、サーバー2に独立したエラー(q)がなく、両方を強制するシステムエラー(r)がない確率を計算したいとします。これらのエラーは独立していると仮定しても比較的安全です。したがって、それらを掛け合わせるだけで済みます。pq rは、サーバーが稼働している確率です。

問題は、実際の稼働時間データを使用してp、q、およびrの値を取得できないことです。ただし、サーバー1のみがあり、95%の時間で稼働している場合は、p * r = 0.95です。


5

まず第一に、クラスターの総可用性または稼働時間は、クラスター全体が「稼働」していると見なされるために、クラスターの一部がアクティブである必要がある大きさに依存します。

  • 機能している1台のマシンで十分ですか?つまり、必要に応じて、単一のマシンで全負荷をかけることができます。
  • それらすべてを同時にアクティブにする必要がありますか?つまり、冗長性はありません。
  • または、オンラインの3つのうち2つで十分でしょうか?これにより、最初のケースよりも大きなワークロードが可能になります。

ご存知のように、最初の2つのケースの計算は非常に簡単です。任意の時点で単一のサーバーがオンラインになる確率をp = 0.95とします。現在、3つのサーバーの場合、それらがすべて同時にオンラインになる確率はp 3 = 0.857375です。

反対の場合、少なくとも1台のマシンが特定の時間にアクティブである必要がある場合、問題を反転させて、マシンがオフラインになる確率を調べることで、計算が簡単になります。単一のマシンがオフラインになる確率はq = 1- p = 0.05であり、したがって、それらがすべて同時にダウンする確率はq 3 = 0.000125であり、確率1- q 3 = 1-(1- p)が与えられます。3 = 0.999875、少なくとも1つは稼働している。

3ケース中2ケースは、計算が少し難しいです。3つのサーバーのうち少なくとも2つが稼働している状況が4つ考えられます。1)ABCがアップ、2)ABがアップ、3)ACがアップ、4)BCがアップ。これらすべての確率は、それぞれpppppqpqp、およびqppです。ケースはばらばらなので、確率を合計して、合計A = p 3 + 3 p 2 q = 0.992750を得ることができます。

(これはより多くのマシンに拡張できます。要因はよく知られている二項係数です。そのため、さまざまなケースを手動で数えることは、主に演習として機能します。)


もちろん、このような計算は既製のコンピュータプログラムを使用することではるかに簡単に処理できます...少なくとも1つのオンライン計算機がここにあります:http :
//stattrek.com/online-calculator/binomial.aspx

入力値を入力すると、成功確率= 0.95、試行回数= 3、成功数= 2、「累積確率:P(X≥2)= 0.99275」という結果が得られます。その他の関連する値もいくつか示されています。オンラインツールを使用すると、他の数値も簡単に操作できます。


そして、はい、上記のすべては、サーバーが独立して失敗することを前提としています。つまり、a)クラスター全体に影響を与える問題を無視しました。b)コンポーネントのエージングのように、サーバーで障害が発生する可能性はありません。またはほぼ同時に。


3

サーバーごとに5%のダウンタイムがあるので、これを乗算すると、0.05 * 0.05 = 0.0025となり、1-0.0025 = 0.9975-> 99%のアップタイムになります。サーバーが3台ある場合、稼働時間は1-0.000125 = 0.999875> 99.9%です。

通常、スタンドアロンホスト(冗長HDDとPSUを使用)の可用性は97%で、2Nの場合は99.9%以上、3Nの冗長性の場合は99.99%以上です。


3

私はさらに掘り下げて、このパズルのピースを見つけました。

可用性が95%のサーバーの例を使用して、2番目のサーバーを追加すると、可用性は95%+(1-95%)* 95%= 99.75%に向上します。これの背後にある論理は、最初のサーバーがダウンしているとき(時間の5%)、2番目のサーバーは時間の95%でまだ稼働しているということです。

3番目のサーバーを追加すると、同じ方法でこれが繰り返されます。最初の2つはすでに99.75%利用可能であるため、3つ目を追加すると、99.75%+(1-99.75%)* 95%= 99.9875%になります。などなど。これはPhilの答えに近いですが、前の反復の結果を取得して次の反復で使用する必要があるため、多少異なります。

相互に依存しているコンポーネントの場合は、可用性のパーセンテージを単純に掛けるだけなので、50%の可用性を持つ2つのコンポーネントがある場合、合計の可用性は25%になります(つまり、両方のコンポーネントが機能する場合にのみシステムが機能します)。


0

各サーバーのアップタイムが他のサーバーから独立していると仮定すると、合計のアップタイムは

1-(0.05)^ n

ここで、nはサーバーの数であり、0.05は1台のサーバーのダウンタイム確率です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.