RAID容量計算機
RAIDで実際に使える容量と、何台まで故障に耐えられるかが分かります。1000 GBのディスク4台でRAID 5を組むと、実効容量は3000 GB、効率は75 %で、1台の故障に耐えます。RAID 0・1・5・6・10に対応します。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- RAIDレベル
- 5 GB
- ディスク数
- 4
- ディスクの容量
- 1,000
- RAIDの名称
- RAID 5 GB
- 最小ディスク数
- 3
- 物理容量
- 4,000
- 使用可能容量
- 3,000
ストレージアレイの計画は、ストライプ・ミラー・パリティのあと実効容量がどれだけ残り、何台のディスクが故障してもデータが守られるか、という問いから始まります。このRAID容量計算機は、RAIDレベル(0・1・5・6・10)、同一メンバーのディスク台数、1台あたりのサイズを受け取り、生容量・実効容量・ミラーまたはパリティ用のオーバーヘッド・効率(パーセント)・失ってもよいディスク台数としての耐障害性を返します。式はサーバー構築・ホームラボの表計算・容量設計資料で使われる教科書どおりのモデルに沿い、RAID 0は冗長なしで全ディスクを使い、RAID 1は実効1台分で耐障害性N−1、RAID 5と6は単一または二重パリティのために1台または2台を譲り、RAID 10はストライプミラーで容量を半分にします。
RAID容量・オーバーヘッド・耐障害性の意味
生容量はディスク台数×1台サイズであり、RAIDレイアウト前のスピンドルまたはSSD上の全バイトです。実効容量は、ミラーやパリティ用の領域を確保したあとボリュームマネージャやハードウェアコントローラが提示する量です。オーバーヘッドはその差で、お支払いいただくが固有のユーザーデータを置かない容量です。
RAID 1の完全ミラーセット、RAID 5の分散パリティ1台相当、RAID 6の二重パリティ2台相当、RAID 10のアレイ半分などが該当します。効率は実効÷生をパーセントで示し、同一サイズ4台のRAID 5は75パーセント、4台のRAID 10は50パーセントです。
耐障害性は、データを再構築しつつ耐えられる同時メンバー故障数で、RAID 0は0、NウェイRAID 1はN−1、RAID 5は1、RAID 6は2、RAID 10はミラー対ごとに1台ずつの故障なら最大N/2です。数値は同一ディスクサイズを前提とし、実機コントローラは最小メンバーに合わせることが多いため、実際に使う1台あたりの実効サイズを入力してください。
ホットスペア、圧縮、シンプロビジョニング、ファイルシステムのオーバーヘッド、ベンダー固有のRAID-Zはモデル化しません。BOMや変更申請に載せる古典的な容量と耐障害の数字だけを答えます。受け入れられる故障モデルに合わせてレベルを選び、実効容量とオーバーヘッドをあわせて読み、実効テラバイトあたりのコストを正直に見積もってください。
容量の数字が役立つ場面
システム構築者やマネージドサービスチームは、同一ディスクSKUとレベルで営業表・Ansibleインベントリ注記・顧客ポータルが同じ実効テラバイトに合意できるよう、見積時に決定論的なオラクルを必要とします。調達フローは固定台数でRAID 5・6・10を一括比較でき、SKU変更のたびに表計算を開き直す必要がありません。
研修ラボや資格対策では、フルのストレージシミュレータを立てずにオーバーヘッドと耐障害の答案を照合できます。検証失敗は残高を消費しません。再現可能な実効容量と耐障害の数値は、独自のRAID計算をホストせずにBOM・ランブック・エッジワーカーを揃えます。
活用例
サーバー・SANの容量見積
ディスク台数・サイズ・RAIDレベルから実効容量・オーバーヘッド・効率を求め、BOMや顧客向け見積に使います。
ホームラボと構築計画
購入前に同じドライブでRAID 5・6・10を比較し、耐障害性と実効容量を並べて確認します。
自動化とインベントリ照合
CMDBやAnsibleデータに宣言されたアレイ容量を、レベル0・1・5・6・10の古典式と照合して検証します。
よくある質問
対応しているRAIDレベルは?
RAID 0(ストライプ)、RAID 1(Nウェイミラー)、RAID 5(単一パリティ)、RAID 6(二重パリティ)、RAID 10(ストライプミラー)です。RAID 50やZFS RAID-Zなどは対象外です。
RAIDレベルごとに何台まで故障に耐えられますか?
RAID 0は0台、RAID 1は1台を残してすべて、RAID 5は1台、RAID 6は2台です。RAID 10は最大で半数まで耐えますが、故障がそれぞれ別のミラーの組で起きた場合に限ります。
ディスクの容量がそろっていない場合は?
計算は同じ容量のディスクを前提にしています。実際のコントローラーは、ふつう最も小さいディスクに合わせます。各ディスクが実際に使える、その最小の容量を入力してください。
ディスクは最低何台必要ですか?
RAID 0とRAID 1は2台、RAID 5は3台、RAID 6は4台です。RAID 10は4台以上で、しかも偶数台でなければなりません。足りない場合は容量を推測せず、受け付けません。
ホットスペアや圧縮も計算に含まれますか?
いいえ、含まれません。ホットスペア、圧縮、シンプロビジョニング、ファイルシステムの使用分、製品独自のRAID方式は扱いません。計画書に載せる基本の容量と耐障害性を求めるものです。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/dev/raid-capacity \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"raid_level":"5","disk_count":4,"disk_size":1000}'const res = await fetch("https://api.kit.forhosting.com/dev/raid-capacity", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"raid_level": "5",
"disk_count": 4,
"disk_size": 1000
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/raid-capacity",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"raid_level": "5",
"disk_count": 4,
"disk_size": 1000
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/raid-capacity", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"raid_level":"5","disk_count":4,"disk_size":1000}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"raid_level":"5","disk_count":4,"disk_size":1000}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/raid-capacity", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"raid_level": "5",
"disk_count": 4,
"disk_size": 1000
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.raid_capacity",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
同じ純粋な算術が無料のブラウザ経路とAPIを動かすため、見積・ランブック・自動化が4台RAID 5や6台RAID 10で食い違うことはありません。無効なレベル、RAID 10の奇数台、台数不足は容量を捏造せず invalid_input で失敗します。
入力契約・レベル別の式・エラー時の挙動
最小台数はRAID 0/1が2、RAID 5が3、RAID 6が4、RAID 10が4かつ偶数です。N台・サイズSの式:RAID 0の実効はN×Sで耐障害0、RAID 1の実効はSで耐障害N−1、RAID 5の実効は(N−1)×Sで耐障害1、RAID 6の実効は(N−2)×Sで耐障害2、RAID 10の実効は(N/2)×Sで耐障害N/2です。ランタイム間で見積が再現できるよう、これらの数値をテストに固定してください。必須の3フィールドを含むJSON本体をPOSTしてください。raid_level(0・1・5・6・10。数値や raid5・RAID-10 などの文字列可)、disk_count(整数のメンバー数)、disk_size(選んだ単位での1台あたり有限容量)です。任意の unit は既定がGBでラベルとしてのみ返され、APIはGBとTBを換算しません。成功時の本体には raid_level、raid_name、disk_count、disk_size、unit、min_disks、raw_capacity、usable_capacity、overhead_capacity、efficiency_percent、fault_tolerance、formula、notes が含まれます。欠落フィールド、正でない disk_size、整数でない disk_count、未対応レベル、台数不足、RAID 10の奇数台は invalid_input で失敗し課金されません。例:raid_level が5、1000 GBのディスク4台なら生4000・実効3000・オーバーヘッド1000・効率75パーセント・耐障害1です。
RAID容量APIが価値を発揮する場面
リクエストは小さく保ち、unit はラベルとして扱い、リビルド時間・UREリスク・コントローラ制限はこのエンドポイント外である点を忘れず、容量結果に運用ガイドを添えてください。
技術的な質問
RAIDの実効容量はどう計算しますか?
raid_level(0・1・5・6・10)、disk_count、disk_size を送ってください。APIは同一ディスクの標準式で usable_capacity、overhead_capacity、efficiency_percent、fault_tolerance を返します。
なぜRAID 10は偶数台が必要ですか?
RAID 10はミラー対をストライプして構成します。奇数台では完全な対を作れないため、奇数の disk_count は invalid_input で拒否されます。
unitフィールドはGBをTBに変換しますか?
いいえ。unit は容量フィールドに返す任意の表示ラベル(既定GB)です。別単位が必要な場合は呼び出し前にサイズを換算してください。
RAID容量計算機の料金は?
ブラウザツールは無料です。APIは前払いKIT残高から成功呼び出しごとに $0.002 です。無効入力は課金されません。