冗長化は、サーバーやネットワークに予備を用意し、障害が起きても業務を止めないための備えです。ただ現場では「二重化」「多重化」「バックアップ」と混同され、どこまで備えれば十分なのかが曖昧なまま費用だけがかさみます。この記事では冗長化・冗長性・可用性の関係を切り分け、構成方式とサーバー・ネットワーク・ストレージ・データ層の実現手段を整理しました。そのうえでVRRPの設定値から切替時間を秒単位で計算し、クラウドのSLA実数値とゾーン設定を確かめる手順を示して、可用性目標から必要な冗長度を逆算する設計判断まで踏み込みます。
まとめ:冗長化は「止められない範囲」を決めてから構成を選ぶ
冗長化とは、システムを構成する機器やデータについて同じ働きをする予備を用意し、一部が壊れても全体が止まらないようにする設計を指します。予備を持つことでシステム全体が稼働し続けられる度合いを「可用性」と呼び、冗長化はその可用性を高めるための代表的な手段という関係になります。単なる二重化に限らず、三重以上の多重化やデータの複製まで含む上位概念です。
設計で先に決めるのは、機器の型番でも構成図でもありません。「どの業務が何分止まると、いくらの損失になるか」です。数分の停止が売上に直結する受注・決済の系と、翌営業日まで待てる社内共有の系では、かけるべきコストが一桁変わります。一律で二重化すれば費用は跳ね上がり、一律で最小構成にすれば基幹の停止を吸収できません。止められない範囲を業務の重みで線引きし、その線に見合う構成だけを選ぶのが出発点です。
線引きの目安は契約書の数値から取れます。AWSのAmazon Compute SLA(2022年5月25日更新時点)は、単一のEC2インスタンスに月間稼働率99.5%しか約束していません。複数ゾーンやリージョンへ広げてようやく99.99%です。クラウドに置いただけでは冗長化されない、という前提から始めます。
冗長化の意味と、冗長性・可用性・二重化・バックアップとの違い
冗長化まわりの言葉は指す範囲が少しずつ違い、混同したまま設計に入ると要件がぶれます。まず境界を引きます。
冗長化・冗長性・可用性という三つの言葉の関係を階層で整理する
「冗長」は本来「余分・重複」を意味しますが、IT分野では意図的に予備を持たせる肯定的な設計を指します。三語は対立せず階層で結びつきます。冗長性(redundancy)は「予備を持っている状態・性質」、冗長化はその状態を作る「行為・設計」、可用性(availability)は結果として得られる「止まりにくさ」です。可用性は年間の稼働率で数値化し、「99.99%」なら停止許容が約52分、「99.999%」なら約5分です。冗長化は目的ではなく可用性目標を満たすための手段だと押さえると、後の設計判断がぶれません。
二重化・多重化との違いと、冗長化がそれらを含む上位概念である理由
二重化は、機器やデータを2つ持つ構成を指す具体的な言い方です。多重化は、それを3つ以上に広げた構成を指します。冗長化はこれらを含む広い概念で、「予備を持たせて止まりにくくする」設計全般をカバーする言葉です。つまり二重化は冗長化の最も基本的な一形態、という包含関係になります。実務では二重化で足りる系が多い一方、金融の勘定系のように停止が許されない領域では、予備の予備まで用意する多重化やN+1構成が選ばれます。必要な多重度は可用性目標から決めるのが正しい順序です。
一段上の概念として、部品が壊れても切替を伴わずに動き続ける設計があります。切り替えて復帰する冗長化と、切替なしで処理を継続する耐障害設計の線引きはフォールトトレラントと高可用性・フェイルオーバーの違いを実装目線で整理した記事を参照してください。求める水準がどちら側かで、選ぶ機器と予算の桁が変わります。
バックアップ・レプリケーションとの役割の違いを時間軸で捉える
冗長化とバックアップは似て非なるものです。冗長化は「いま動いているものを止めない(可用性を守る)」ための仕組み、バックアップは「失ったデータを後から取り戻す(復旧に備える)」ための仕組みで、守る対象が異なります。両者の中間がレプリケーションで、稼働中のデータを別の機器へ継続的に複製し、待機系を最新に保ちます。
| 仕組み | 目的 | タイミング | 守るもの |
|---|---|---|---|
| 冗長化 | 停止させない(可用性) | 障害の瞬間に切替 | サービスの継続 |
| レプリケーション | 待機系を最新に保つ | 平時に継続複製 | 切替後のデータ鮮度 |
| バックアップ | 後から復元する | 平時に定期取得 | 過去時点のデータ |
事故につながる典型は、レプリケーションをバックアップ代わりにするケースです。複製は最新状態を映すため、誤ってデータを削除すると待機系にも即座に反映され、両方から同時に失われます。可用性はレプリケーションで守りつつ、操作ミスやランサムウェアには別途のバックアップで備える二段構えが基本です。障害後にどこまで戻すかの設計は、リカバリーの意味とバックアップ・リストアの違いを整理した解説で復旧目標の決め方まで確認できます。
冗長化の構成方式と、サーバーやネットワークなど対象レイヤー別の実現手段
待機系をどう構えるかで、切替時間もコストも変わります。方式と、守る層ごとの手段を分けて見ていきます。
アクティブ・スタンバイとアクティブ・アクティブ構成の違いと選び分け
構成の基本は2方式です。アクティブ・スタンバイは本番系(アクティブ)が稼働し、予備系(スタンバイ)は待機に徹する構成で、本番が倒れたときに予備へ切り替えます。アクティブ・アクティブは複数系を同時に稼働させて負荷を分け合い、1系が倒れても残りが処理を引き継ぐ構成です。前者は単純で検証しやすい一方、待機系の資源が平時は遊びます。後者は資源を使い切れる反面、系間のデータ整合やセッション管理は複雑です。負荷を振り分ける中核が負荷分散装置で、方式や仕組みはロードバランサーの種類と振り分け方式を実装目線で整理した記事にまとまっています。
ホット・ウォーム・コールドスタンバイの切替時間とコストの関係
スタンバイ系は、どこまで温めておくかで3段階に分かれ、切替の速さとコストが反比例します。過剰に温めると無駄が出るため、停止許容時間(RTO)から逆算して選びます。
| 方式 | 待機系の状態 | 切替時間の目安 | 相対コスト |
|---|---|---|---|
| ホットスタンバイ | 常時起動・データ同期済み | 数秒〜数十秒 | 高 |
| ウォームスタンバイ | 起動済み・データは定期同期 | 数分〜十数分 | 中 |
| コールドスタンバイ | 停止・障害時に起動 | 数十分〜数時間 | 低 |
秒単位の停止が損失になる受注・決済はホット、半日以内に戻ればよい社内基幹はウォーム、翌営業日まで待てる検証環境はコールドが実務の目安です。全系をホットで揃えると費用対効果が崩れます。切替時間の要件を系ごとに置くことが、ここでも過不足を防ぎます。
サーバー・ネットワーク・ストレージ・データの層ごとに施す冗長化手段
冗長化は単一の機器で完結せず、各層で個別に施します。どこか一層でも単一障害点(SPOF)が残ると、そこが倒れた瞬間に全体が止まるため、層ごとに予備の有無を点検してください。冗長化が最終的に支えるシステムの可用性(稼働率)の考え方もあわせて確認できます。
| 対象の層 | 代表的な冗長化手段 | 狙う障害 |
|---|---|---|
| サーバー | クラスタ構成・仮想化基盤の自動再起動 | 機器故障・OS障害 |
| ネットワーク | 回線の複数化・VRRPによる経路切替・機器の二重化 | 回線断・スイッチ故障 |
| ストレージ | RAID(1/5/6など)・ストレージ二重化 | ディスク故障 |
| データ | データベースのレプリケーション・多地点複製 | データ破損・拠点災害 |
| 電源・拠点 | UPS・電源二重化・別リージョン配置 | 停電・自然災害 |
ストレージ層では、ディスクを束ねて1台故障しても運転を続けられるRAID(RAID0/1/5/6/10の違いと構成の解説)が土台になります。容量効率との兼ね合いは製品選定に直結するため、ストレージの種類とクラウド選定を整理した解説と併せて検討してください。層をまたいで予備を置いても、電源や拠点が単一なら災害で一斉に止まります。拠点ごと失う事態に備える構成の型はDR対策の構成4パターンを整理した記事、施設に機器を預ける選択肢はホスティング・ハウジングの違いと企業の選び方にまとめました。
VRRPの切替時間を設定値から計算し、秒単位で見積もる作業手順
「切替は数秒」という説明では設計に使えないので、設定値から計算します。ネットワーク層の定番であるVRRPは、複数の機器に同じ仮想IPを持たせ、現用(Master)が倒れたら待機(Backup)が経路を引き継ぐ仕組みです。仕様はRFC 5798(VRRPv3・2010年3月・Standards Track)が定めており、広告(ADVERTISEMENT)の送信間隔の既定値は100センチ秒(1秒)、優先度の既定値は100です。優先度の範囲は待機側が1〜254、255は仮想IPの保有者に予約、0は現用が役割を手放す通知に使われます。
待機側が昇格するまでの待ち時間は、同仕様の算式で決まります。Skew_Timeが「(256 − 優先度) × 現用の広告間隔 ÷ 256」、Master_Down_Intervalが「3 × 現用の広告間隔 + Skew_Time」です。既定値のまま組むとSkew_Timeは約60.9センチ秒、Master_Down_Intervalは約360.9センチ秒、つまり機器が黙ってから約3.6秒はサービスが応答しない計算になります。
vrrp_instance VI_1 {
state BACKUP
interface eth0
virtual_router_id 51
priority 100 # RFC 5798 の既定値
advert_int 1 # 100 センチ秒 = 1 秒
virtual_ipaddress {
192.0.2.10/24
}
}
# Skew_Time = (256 - 100) * 100 / 256 = 60.9 センチ秒
# Master_Down_Interval = 3 * 100 + 60.9 = 360.9 センチ秒 ≒ 3.6 秒
この3.6秒を縮めるには広告間隔を詰めます。ただしRFC 5798は副作用も明示しています。送信キューが詰まって広告が遅れただけで待機側が昇格し、遅れて届いた広告でまた待機へ戻る往復が、1秒間に何度も起こりうるという指摘です。秒単位の停止が許せる系は既定値のまま置き、サブ秒が要件の系だけ遅延を実測して詰めます。
クラウドの冗長化をSLA数値とゾーン設定から確かめる作業手順
クラウドでは冗長化が標準機能に見えますが、保証される稼働率は構成で別物です。契約文書の数値と実際の配置設定を突き合わせて確かめます。
AWSのSLAで単一インスタンスと複数AZの保証値の差を確かめる
AWSはEC2について2種類の約束を分けています。Amazon Compute SLA(2022年5月25日更新時点)が定めるのは、複数AZまたは複数リージョンに展開したEC2へのリージョンレベルSLAが月間稼働率99.99%、単一のEC2インスタンスへのインスタンスレベルSLAが99.5%という2水準です。データベースも同じ構造で、Amazon RDS SLA(2024年1月22日更新時点)はマルチAZのDBインスタンスとマルチAZクラスタに99.95%、シングルDBインスタンスに99.5%を置いています。
| 対象 | 月間稼働率 | 月あたり停止許容 |
|---|---|---|
| EC2 単一インスタンス | 99.5% | 約3.6時間 |
| EC2 複数AZ・複数リージョン | 99.99% | 約4.3分 |
| RDS シングルDB | 99.5% | 約3.6時間 |
| RDS マルチAZ | 99.95% | 約21.6分 |
読み取れる事実は明確です。ゾーンをまたがない構成は、クラウドでも月3.6時間(年換算で約43.8時間)の停止まで補償の対象外に置かれています。ゾーンを分けた瞬間に約束の桁が2つ上がる構造です。契約上の稼働率と停止許容を突き合わせる手順はSLA(サービスレベル合意)の定義と稼働率保証の読み方で整理しました。手元の構成が本当にゾーンをまたぐかは実データで確かめます。
Azureの可用性ゾーンでゾーン冗長とゾーン配置の違いを確認する
Azureの可用性ゾーンは、リージョン内のデータセンターを電源・冷却・ネットワークごと切り分けた論理グループです。Microsoft Learnの可用性ゾーンの概要は、ゾーンが通常は数キロメートル離れ、互いに100キロメートル以内に収まると説明しています。押さえる区別は二つです。
一つ目は、ゾーン冗長(zone-redundant)とゾーン(zonal)が別物という点です。ゾーン冗長リソースは複数ゾーンへ複製・分散され、障害時のフェイルオーバーはMicrosoft側が管理します。対してゾーンリソースは利用者が選んだ単一ゾーンに置かれ、公式ドキュメントの記述どおりゾーン停止への回復性は自動では得られません。切り替えは利用者の担当です。
二つ目は、論理ゾーン番号と物理ゾーンの対応がサブスクリプションごとに割り当てられる点です。サブスクリプションAの論理ゾーン1とBの論理ゾーン1が同じ物理ゾーンを指す保証はありません。複数サブスクにまたがる構成で「ゾーン1と2に分散」と台帳に書いても、実体は同じ建屋に固まりかねません。対応関係はCLIから取れます。
# AWS: RDS が本当にマルチAZ構成かを実データで確かめる
aws rds describe-db-instances --output table --query "DBInstances[].[DBInstanceIdentifier,MultiAZ,AvailabilityZone]"
# Azure: 論理ゾーン番号が物理ゾーンのどれに対応するかを確認する
az account list-locations --query "[?availabilityZoneMappings].{name:name,map:availabilityZoneMappings}"
点検ではこの2本を回し、構成図と実体のずれを先に潰します。冗長化のコスト構造がオンプレミスとどう変わるかはオンプレミスとクラウドの違いを費用と拡張性で比較した解説が前提整理に使えます。
ストレージの縮退をmdstatとsysctlで点検し復旧時間を測る
RAIDは「1本壊れても動き続ける」仕組みですが、動いている状態と冗長性が残っている状態は別です。1本失った時点で配列は縮退(degraded)し、次の1本が壊れればデータを失います。Linuxのソフトウェアレイド(md)なら、縮退と再構築の進捗は状態ファイルから読み取れます。
再構築の速さには制限がかかっています。Linuxカーネルのmd管理者ガイドによれば、同期速度の下限・上限はキビバイト毎秒で指定し、配列ごとにsync_speed_min/sync_speed_maxで上書きできる設定です。下限が低いままだと再構築が長引き、冗長性の無い時間帯が延びる点に注意してください。同ガイドはさらに、raid5・raid6の配列がdirtyかつdegradedの両方に該当する場合、パリティが信頼できず欠損ブロックも復元できないため、mdは通常その配列の起動を拒否すると明記しています。起動には、管理者が破損の可能性を引き受ける強制指定が要ります。
# 縮退(degraded)と再構築の進捗を見る
cat /proc/mdstat
# 再構築速度の下限・上限(キビバイト毎秒)
sysctl dev.raid.speed_limit_min dev.raid.speed_limit_max
# dirty かつ degraded で起動を拒否された配列を、破損リスクを承知で起動する
mdadm --assemble --force /dev/md0 /dev/sdb1 /dev/sdc1
つまり「RAIDにしてあるから電源が落ちても平気」とは言えません。故障の検知から交換までと再構築が終わるまでの時間を運用手順に書き、その合計を停止許容と突き合わせます。
企業がどこまで冗長化すべきか——可用性目標から逆算する設計判断
ここからは用語解説を離れ、企業が実際にどこまで投資すべきかを扱います。発注検討で必要になるのは、この線引きです。
SLAの可用性目標「9の数」から必要な冗長度を逆算する考え方
冗長度は、感覚ではなく可用性目標から決めます。稼働率の「9の数」ごとに、許される年間停止時間は桁で変わります。99.9%(スリーナイン)なら年間約8.8時間、99.99%(フォーナイン)なら約52分、99.999%(ファイブナイン)なら約5分です。この停止許容を前述のスタンバイ方式の切替時間と突き合わせると、必要な構成が定まります。
| 可用性目標 | 年間停止許容 | 妥当な構成の目安 |
|---|---|---|
| 99.9% | 約8.8時間 | ウォームスタンバイ+日次同期 |
| 99.99% | 約52分 | ホットスタンバイ+自動切替 |
| 99.999% | 約5分 | 多重化+多地点・自動フェイルオーバー |
ここで効いてくるのが、先ほど計算した切替時間です。VRRPを既定値で組むと検知だけで約3.6秒かかるため、年間停止許容が約5分のファイブナインでは、年に数十回の切替で予算を使い切ります。目標を1つ上げるだけで構成の複雑さと費用は跳ね上がるため、全社一律の高い目標は避けます。停止コストを見積もり、見合う「9」を系ごとに設定するのが投資を無駄にしない進め方です。ダウン時の切り分けと復旧の実務は、503エラーの原因切り分けと復旧を実装目線で解説した記事が具体例になります。
冗長化を見送る・投資を最小化すべき場面の判断基準と失敗パターン
ここは判断を言い切ります。停止しても事業影響が小さい系、作り直しが数分で済む系、フェイルオーバーの検証を運用に組み込めない体制では、冗長化への投資を最小化すべきです。検証環境や社内の一時的な集計基盤にホットスタンバイを組むのは、資源と工数の過剰投資になります。
失敗に転じる典型パターンも明確です。冗長構成を組んだのに、切替(フェイルオーバー)のテストを一度もしないケースがそれにあたります。待機系の設定がずれていたり切替スクリプトが古いままだと、いざ本番が倒れたときに予備へ移れず、二重の費用をかけて止まります。「予備を持っている」ことと「実際に切り替わる」ことは別問題です。
年に何回の切替訓練が必要か、フェイルオーバー試験で測る三つの数値
訓練は「やった/やらない」ではなく、測った数値で管理します。試験のたびに記録すべき数値は次の3つです。
- 検知時間:機器が黙ってから待機系が異常と判断するまで(VRRPなら算式どおりか)
- 切替完了時間:仮想IPの引き継ぎとアプリの受け付け再開までの合計
- 失ったデータ量:切替時点で待機系に届いていなかった更新の範囲(RPO)
頻度の目安は、構成やミドルウェアに変更を入れたときは必ず、変更が無い系でも年2回です。直後の1回で済ませると、パッチ適用や証明書更新のたびに待機系との差が開きます。3つのうち切替完了時間は、障害からの平均復旧時間そのものです。指標の定義と短縮策はMTTRの計算式とMTBFとの違い、短縮策を実装目線で解説した記事にまとめました。結果が目標を外していたら、構成を足す前に切替が遅い箇所を1つ特定します。
冗長構成の設計・構築を外注すべき場面と内製で回せる運用範囲の分界
外注と内製は役割を分けて判断します。既存構成の日常監視や、手順が固まった機器交換は内製で回せる範囲です。一方、可用性目標からの構成設計、クラウドを含めたマルチAZ・マルチリージョンの冗長化、切替の自動化と訓練の仕組みづくりは、専門知見と工数が要るため外注が向きます。ゾーンの分散やマネージドサービスの冗長機能をどう組み合わせるかで、同じ可用性でも費用は変わる領域です。自社の停止許容とコスト上限を踏まえた冗長構成の設計・構築は、AWS/GCP/Azureのインフラ構築支援で要件定義から相談できます。設計と自動化は外部・日常運用は内部という切り分けから始めるのが現実的です。
よくある質問
現場で頻出する疑問を、実務の観点でまとめます。
冗長化と二重化は何が違いますか?
二重化は機器やデータを2つ持つ具体的な構成、冗長化は多重化まで含めて「予備を持たせ止まりにくくする」設計全般を指す広い概念です。二重化はその最も基本的な一形態にあたります。停止が許されない系では、予備の予備まで置く多重化やN+1構成が選ばれます。
冗長化とバックアップの違いは何ですか?
守る対象が異なります。冗長化はいま動くシステムを止めない仕組み、バックアップは失ったデータを後から取り戻す仕組みです。レプリケーションで待機系を最新に保っても、誤削除やランサムウェアは複製先へ即反映されるため代わりになりません。両者は別々に用意します。
冗長化のデメリットは何ですか?
最大のデメリットはコストの増加です。予備の機器・回線・ストレージが要り、初期費用と運用費用の両方が上がります。管理対象が増えて運用も複雑になり、切替の検証や待機系の保守という手間も出ます。全系を一律で冗長化せず、停止コストに見合う範囲へ絞るのが費用対効果を保つ鍵です。
アクティブ・スタンバイとアクティブ・アクティブはどちらを選ぶべきですか?
要件で使い分けます。構成を単純に保ちたい、待機系はいざという時だけ動けばよい系はアクティブ・スタンバイ向きです。平時から処理能力を上げたい系にはアクティブ・アクティブが合いますが、データ整合やセッション管理の設計が要ります。停止許容時間と必要な処理能力を数値化してから選びます。
冗長化の切替時間はどうやって見積もればよいですか?
設定値から計算し、訓練で実測して突き合わせます。VRRPならRFC 5798の算式で「3 × 広告間隔 + Skew_Time」が昇格までの待ち時間で、広告間隔1秒・優先度100の既定値では約3.6秒です。この検知時間にアプリ起動やDB昇格の時間を足したものが実際の切替完了時間です。年2回の訓練で実測し、停止許容に収まるかを確認してください。
クラウドを使えば冗長化は自動で済みますか?
一部は容易になりますが、自動では済みません。AWSのCompute SLAは単一のEC2インスタンスに99.5%しか約束せず、複数ゾーンへ広げて初めて99.99%になります。Azureでもゾーン冗長として構成しない限り、単一ゾーンの停止で止まる余地が残る点は同じです。どこまで多重化するかは設計判断で、誤れば単一ゾーン障害で全系が停止します。可用性目標から構成を逆算する考え方は変わりません。
関連記事
- ロードバランサーとは?仕組み・種類・振り分け方式を実装目線で解説:負荷分散装置の仕組み。
- フォールトトレラントとは?耐障害性の仕組みと高可用性・フェイルオーバーとの違い:切替あり/なしの線引き。
- リカバリーとは?意味・リストア/バックアップとの違いと企業の実務判断:障害後に戻す範囲の設計。
- DR対策とは?構成4パターンのRPO・RTO目安とDR計画の作り方:拠点災害に備える冗長化の型。
- MTTRとは?計算式・MTBFとの違いと稼働率への影響、短縮策を実装目線で解説:訓練で測る復旧時間。
- ストレージとは?種類・HDDとSSDの違い・企業のクラウド選定まで解説:RAIDと製品選定の前提。
- 503エラーとは?原因の切り分けと復旧・再発防止をサーバー実装目線で解説:ダウン時の切り分け実務。
- リモートデスクトップとは?仕組み・VPN/VDIとの違いと企業導入の判断
- クラウドPBXとは?仕組み・料金相場と従来PBXとの違い、導入判断