SLA に「99.9%」と書いたけれど、結局何分止まっていいのか。 月次なのか年次なのかで、自分の頭の中の数字がぶれている。 構成を組み合わせたら、全体では何%になるのか。 稼働率を入れるだけで、年・月・週・日ごとの許容停止時間が出て、停止分数からの逆算や直列・並列の合成もできます。
使い方
- 「稼働率(%)」に 99.9 のように入力します。年間・月間・週間・日次の許容停止時間が、その場で「◯時間◯分◯秒」の形で出ます。
- 99%、99.9%、99.95%、99.99%、99.999% のボタンを押すと、その値が入ります。
最初の2つは順方向の計算で、ここから先は別の使い方です。
- 「逆算」では、対象期間(年間・月間・週間・日次)と停止していた分数を入れると、その期間の稼働率が出ます。
- 「直列・並列」では、構成要素 A と B の稼働率を入れます。直列(両方動いて初めてサービスが成り立つ)と並列冗長(どちらかが動けばよい)の合成値が並んで出ます。
操作はこれだけです。ページ下部の早見表には、99%〜99.9999% の代表値が一覧で載っています。
なお、月は30日、年は365日で固定です。暦どおりの月や閏年には対応していません。この差が効く場面は「計算例」と「よくある間違い」に書きました。
仕組み・計算式
稼働率は「対象期間のうち、正常に動いていた時間の割合」です。設備の側から見ると、MTBF(平均故障間隔)と MTTR(平均修理時間)を使って MTBF ÷ (MTBF + MTTR) とも書かれます。こうした信頼性・保守性・可用性の用語は JIS X 0014 にまとまっています。SLA の指標としての可用性は、ITIL の可用性管理でも扱われる項目です。
式そのものは単純です。許容停止時間は、この定義を逆に使うだけです。
許容停止時間 = 期間 × (1 − 稼働率)
稼働率が 99.9%(0.999)なら、期間の 0.1% が止まってよい時間です。期間を秒にそろえて掛ければ、あとは時間・分・秒に直すだけです。
複数の構成要素を組み合わせるときは、各要素が独立して故障すると仮定します。
- 直列: A × B(両方が動いている確率)
- 並列冗長: 1 − (1 − A)(1 − B)(両方が同時に止まる確率を1から引く)
同じ電源、同じネットワーク、同じ設定ミスを共有している要素同士は、独立とは言えません。その場合、実際の可用性はこの式の値より低くなりえます。式はあくまで上限寄りの目安です。
計算例
数字はすべて、このツールの計算と同じ式を node で実行して確かめました。ツールの画面で確認できるのは30日・365日の行だけなので、31日・366日の行は手計算(同じ式で期間の日数だけを変えたもの)です。
例1: 99.9% を月次で見る
| 月の日数 | 許容停止時間 |
|---|---|
| 28日 | 40分19.2秒 |
| 30日 | 43分12秒 |
| 31日 | 44分38.4秒 |
ツールに 99.9 を入れると、月間の欄は「43分12秒」でした。31日の月とは1分26.4秒違います。たった1分と思いますか。次の「よくある間違い」で、この1分が判定を分ける例を出します。
例2: 99.95% を年次で見る
365日なら 4時間22分48秒、閏年の366日なら 4時間23分31.2秒です。差は43.2秒でした。ツールの早見表にも 99.95% の行があり、年間は 4時間22分48秒と表示されます。
例3: 99.9% の部品を2つ直列にする
A、B に 99.9 を入れると、直列は 99.8001% になりました。月間(30日)に直すと約1時間26分21秒、年間(365日)なら約17時間30分40秒です。
並列にすると 99.9999% です。年間の許容停止時間にすると、約31.5秒(31.54秒)になります。
正直なところ、意外だったのは直列の結果でした。99.9% を2つ重ねた許容停止時間(約86.4分)は、単体の43.2分のほぼ2倍で、足し算に近い値になります。稼働率の掛け算と聞くと身構えますが、止まる時間のほうで見ると足し算で見積もれます。
よくある間違い
1. 月の日数を決めずに比べてしまう
99.9% の月次 SLA で、ある月に44分止まったとします。30日換算では 99.8981% で、99.9% に届きません。31日の月なら 99.9014% で、達成です。同じ44分でも、どの月を基準にするかで結果が逆になります。
確かめ方は単純で、契約書・SLA 文書の「月」の定義を見ることです。暦月で計算するのか、30日固定で換算するのかが書かれているはずです。書かれていなければ、先方に聞いておく価値があります。
2. 計画停止を含めるかどうかを確認していない
メンテナンスの事前通知つき停止を、稼働率の分母・分子に含めるかは、SLA ごとに違います。除外すると書かれている SLA もあれば、何も書いていない SLA もあります。
このツールは「止まった時間」をそのまま扱うだけです。計画停止を除くなら、除いた分数を入れてください。自社の SLA がどちらなのか、まず条文で確かめるのが先です。
3. 直列にしても稼働率は変わらないと思ってしまう
直列は、構成要素が増えるほど全体の稼働率が下がります。99.9% の部品を2つつなぐと 99.8001% です。ロードバランサー、アプリ、DB、外部 API と重ねていけば、個々には99.9%でも、全体は目標を下回る可能性があります。
ここが盲点です。構成図に出てくる要素を、「全部動いて初めて成り立つ」ものと「どれかが動けばよい」ものに分けて、直列・並列の欄に入れてみてください。
4. 「ナイン」の数え方がぶれる
99.9% は「スリーナイン」、99.99% は「フォーナイン」と呼ばれます。では 99.95% は何ナインでしょうか。3.5ナインと呼ぶ人もいますが、決まった呼び方があるわけではありません。ナインの数で話をすると、相手と数字がずれることがあります。
会話では「99.95%」と数字そのもの、または許容停止時間(年間4時間22分48秒)で伝えるほうが、取り違えが起きません。
よくある質問
Q. 月間が30日固定なのはなぜですか?
A. 28〜31日の月を一つの基準にそろえるためです。実際に入力して確かめると、99.9% の月間は43分12秒で固定されます。31日の月で厳密に見たい場合は、「許容停止時間 = 31日 × 24時間 × 60分 × (1 − 稼働率)」で手計算してください(99.9% なら44分38.4秒)。
Q. 直列と並列はどちらが稼働率が高くなりますか?
A. 並列冗長のほうが高くなります。99.9% を2つ入れると、直列は 99.8001%、並列は 99.9999% でした。ただし並列の値は、2つが独立して故障する前提での計算です。切り替えの失敗や共通の障害原因は、この式には入っていません。
Q. 閏年は考慮されていますか?
A. 考慮していません。年間は365日で固定です。99.95% の場合、閏年の366日では43.2秒だけ許容停止時間が伸びます。年次 SLA で秒単位まで詰める場面は多くないと思いますが、気になる場合は366日で手計算してください。
Q. 逆算の結果が 99.930556% のように細かく出るのはなぜですか?
A. 30日(2,592,000秒)のうち30分(1,800秒)止まった場合を入れると、実際に 99.930556% と表示されます。小数第6位で丸めているためです。SLA の判定は、契約で決められた桁数に合わせて見てください。
関連ツール
最終更新・根拠の確認日: 2026-10-05 · カテゴリ: Linux・サーバー