ラック、スプロール、そして冗長性という神話:あなたのフェイルオーバーが思うほど安全ではない理由

今日の障害はより深刻な影響を与える。そのため、優れたポリシー、自動化、テストに裏打ちされた「賢い冗長性」こそが、いつか必ず何かが壊れたときにもトラフィックを流し続ける唯一の方法である。

レジリエンスの物理的なルーツ

5年前の午前2時、私はデータセンターの通路に立ち、コアスイッチが電源ユニットを1基失う様子を見ていた。部屋は冷え切り、ファンの音はうるさく、アラートランプがアンバー色に点滅していた。4秒以内にバックアップユニットが引き継いだ。パケットは1つもドロップしなかった。そのシームレスで静かな切り替えは、ネットワーク冗長性の真髄を体現していた──自動的で、見えず、完璧。エンジニアが生きがいを感じる瞬間、暗闇の中の静かな勝利だった。

今では、その同じ原則が容赦ないプレッシャーにさらされている。ネットワークは物理ラックの枠を超え、ハイブリッドクラウド、エッジノード、SD-WANオーバーレイ、APIゲートウェイ、マイクロセグメント化された仮想ファブリックにまで広がっている。冗長性はもはや、単に予備ハードウェアや二重のファイバーリンクを意味しない。誤設定されたルーティングポリシー、地域的なDNS障害、ルーターファームウェアのゼロデイ脆弱性、人為的ミスやサプライチェーン侵害が引き金となる連鎖的な障害に対しても生き残ることを要求される。状況は劇的に進化したが、規律、先見性、信頼の上に築かれた中核の教訓は今も変わらない。

私のキャリアは、信頼性がケーブルとシャーシで測られていた物理インフラから始まった。すべてのサーバーはデュアルパスで接続され、リンクアグリゲーションのバンドルは2台のトップオブラックスイッチに分散され、それぞれが別々のコアルーターへ、異なるファイバールートでアップリンクされていた。かつて私は、色分けした熱収縮チューブでケーブルにラベルを貼る作業に丸々週末を費やしたことがある。プライマリは赤、バックアップは青。細心の注意を要する、ほとんど瞑想のような作業だった。床タイルの交換中に技術者が誤ってパッチコードを蹴って外してしまったとき、トラフィックは200ミリ秒未満で切り替わった。アラームは1つも鳴らず、ユーザーからの苦情もなかった。監視ダッシュボードは常にグリーンのままだった。その信頼性は筋肉記憶のように感じられた──予測可能で、テスト可能で、非常に手触りのあるもの。触れて、たどれて、信頼できる冗長性だった。

クラウドの複雑性とポリシーの罠

しかし、ネットワークはもはやラックの中にとどまらない。ルーティングテーブル、BGPセッション、クラウドのコントロールプレーン、ソフトウェア定義オーバーレイの中に存在している。多くの組織がマルチリージョンのクラウド構成に急いで移行し、地理的な距離だけでレジリエンスが保証されると信じている。それは誤りだ。昨年、私は2つのリージョン間でアクティブ–パッシブのフェイルオーバーを構成したグローバルなeコマースプラットフォームを監督していた。ヘルスチェックは、レイテンシが80msを超えた場合にプライマリからプレフィックスを引き下げるようになっていた。

定期メンテナンスウィンドウ中に、ジュニアエンジニアがBGPコミュニティタグをタイプミスした。1つのサブネットにだけマーキングするはずが、その変更によりバックアップパス全体がno-exportルールでブロックされてしまった。トラフィックはすでに逼迫していたプライマリリンクに殺到し、パケットロスは11%に達した。バックアップルートは健全で、正しくアドバタイズされ、完全に到達可能だった──にもかかわらず、ポリシーがその利用を妨げていた。私たちは6分でエラーを修正したが、顧客への影響はほぼ40分続いた。教訓は明白だった。ポリシーと整合していない冗長性は単なる飾りであり、肝心なときには高コストで役に立たない。これは、リークされたボーダーゲートウェイ(BGP)ルートが原因となった2024年のCloudflare 1.1.1.1ハイジャックインシデントと同じ構図だ。

クラウド環境が拡大するにつれ、一貫性の維持はますます難しくなる。1つのアベイラビリティゾーンでの小さなテンプレート変更が、検証されないままコピーされることでリージョン全体に波及し、本来は保護のための仕組みが広範な障害へと変わりうる。チームは今や構成をコードのように扱い、バージョニング、ピアレビュー、段階的テスト、自動化によって一貫性を強制している。Infrastructure as Codeのパイプライン、ポリシーエンジン、ドリフト検知システムのようなツールは、もはやオプションではない──スケーラブルなレジリエンスの新たな標準だ。

SD-WANはこれらの課題を支店拠点にも拡張し、複数のインターネットパスを束ねてスムーズなフェイルオーバーとインテリジェントでアプリケーション認識型のルーティングを実現する。シンプルさと俊敏性を約束する一方で、1回のキャリアのファームウェアアップデートが、リンク自体はアクティブなままでも、全拠点のパフォーマンスを劣化させることがある。私は、MTUミスマッチ、暗号化方式の不一致、パス優先度のバグが、数百拠点に数分で波及するのを目にしてきた。段階的なロールアウト、厳格な変更ポリシー、段階的なデプロイリングが、一斉障害を防ぐ。

同じ規律はエッジにも当てはまる。小売店舗、倉庫、遠隔クリニックなどのデバイスは、スピードと継続性のためにローカルバックアップに依存している。拙速なファームウェア配信は、すべてのユニットでそのセーフティネットを消し去り、現場チームにUSBドライブやモバイルホットスポットからの復旧を強いることになりかねない。慎重なステージング、ロールバック計画、オンサイトのリカバリキットは、今やすべてのデプロイチェックリストの一部だ。

ルーティングミスとDNS障害は、静かでしつこいリスクとして潜んでいる。1つの誤ったルールがトラフィックを行き止まりに追い込み、バックアップがどれほど堅牢でも、ポリシーがそれをブロックしていれば眠ったままだ。堅牢なプレフィックスフィルタ、ルートバリデーション、RPKIの適用がパスを安全に保つ。同様に、DNSのバックアップは独立して動作しなければならない──共有のAnycast IP、プロバイダー、コントロールプレーンから切り離されていなければ、同時崩壊を避けられない。セキュリティチェック、DNSSEC、多様なリゾルバ戦略がフェイルオーバーを強化する。これらは付け足しではない。現代のネットワーク衛生の基盤である。

避けられない事態を見越す:プレモーテムと多層防御

次の障害はすでに形を取りつつあり、最初のアラートが鳴るまで姿を現さない。信頼しているIOS-XRパッチに潜むサプライチェーン上の欠陥として潜み、静かに世界中のルートを変えてしまうかもしれない。あるいは、ACIファブリックの1つの欠陥あるインテントポリシーから発し、アプリケーションレイヤー全体を外科手術のような精度で孤立させるかもしれない。山火事、洪水、地政学的な出来事といった外的要因がデータセンターの避難を強い、電力網をダウンさせ、発電機の稼働を何時間も遅らせることもある。1つの正当なコンフィグ変更が隠れたバグを露呈させて引き起こされた2021年のFastlyによるグローバル障害は、CDNがどれほど素早く崩壊しうるかを示している。これらのシナリオは空想ではなく、それぞれ固有の故障パターンを持つ「起こるべき確率事象」だ。

経験は問いの立て方を変える。インフラの仕事において、故障は避けられない。重要なのは、それがどのように起こるか、その精度、そして設計がその故障モードをどこまで想定しているかだ。レジリエンスとは今や、故障を止めることではなく、その影響の形をデザインすることを意味する。この考え方は新たな儀式──プレモーテム──を要求する。あらゆる設計レビューで、ピーク負荷時の全面的な故障を前提にする。トランジットプロバイダー、認証局、海底ケーブル、さらには物理的なアクセス道路に至るまで依存関係をたどる。表向きは「多様」な2社のキャリアが同じ管路を通っていないか、マルチリージョンDNSが1つのコントロールプレーンに依存していないか、検証なしにベンダーのアップデートを全世界に適用していないかといった「運命共同体」を探し出す。発見のたびにアクションが生まれる──新たなピア、ポリシーの書き換え、衛星リンク、ダークファイバーのリースなどだ。AWSはその「信頼性の柱」でプレモーテムを推奨している

2年前の午前3時、私は薄暗いネットワークオペレーションセンターに座り、冷めたコーヒーを忘れたまま、1つのBGPアップデートがグローバルなトランジットプロバイダー経由で混乱を広げていくのを見ていた。あるピアが、より低いプリファレンスのデフォルトルートをリークし、アウトバウンドトラフィックを虚空へと吸い込んでしまったのだ。バックアップパスは完全に機能していたにもかかわらず、私たちのポリシーは依然として汚染されたルートを優先していた。17分間、ユーザーにとってインターネットの半分が消えた。顧客は激怒し、経営陣は説明を求めた。迅速なプレフィックスフィルタの適用で事態は収束したが、教訓は残った。冗長性には、単に第2のパスがあるだけでなく、それを賢く選び、誤ったパスを拒否するインテリジェンスが必要だ。その夜、私は変更プロセスを書き換えた。ルーティングポリシーは、シミュレーション、ピアレビュー、自動テストなしに本番環境に触れてはならない、と。

オブザーバビリティは全体像を統合する。ログ、トラフィックフロー、パフォーマンスメトリクス、コントロールプレーンの健全性を一元的に可視化することで、崩壊前の弱まりつつあるパスを検知し、ユーザーが気づく前に修正できる。コストの綱引きは続く。経営層は完全な冗長性を望みながら、実際には一緒に故障する安価で相関の高いリンクで妥協しがちだ。本当のレジリエンスには、真の分離、地理的距離、そして時に高い予算が必要であり、それは回避された障害によって正当化される。5万ドルのクロスコネクトが、200万ドルの障害損失を防ぐこともある。計算は単純だ。

今や自動化が日常的なフェイルオーバーを管理し、問題を検知して即座にトラフィックを切り替えることで、エンジニアは手動スイッチではなく根本原因の解決に集中できる。次の混乱は、ソフトウェアバグ、ポリシーミス、物理的な断線、ゼロデイ攻撃など、さまざまな形で迫っている。効果的な計画とは、故障を前提にし、脆弱性をマッピングし、明確な復旧手順をスクリプト化することだ。最近のある侵害では、攻撃者が侵害されたジャンプホストを通じてコアルーティングのハイジャックを試みた。RPKI、プレフィックスフィルタ、自動セッションリセットといった多層防御がそれを封じ込めた。ユーザーが感じたのは40ミリ秒の一瞬の揺らぎだけだった。冗長性は、予備ケーブルから、セキュリティ、自動化、警戒心が動的に組み合わさったものへと成熟したのだ。

基本原則は変わらない。単一障害点を取り除き、真の分離を確保し、レスポンスを自動化し、絶えず監視すること。スケールは膨れ上がった──パッチパネルからクラウドリージョンへ、ローカルスイッチからグローバルルートへ──それでも使命は一貫している。どんな障害があってもデータを流し続けること。障害は必ず起こる。いつだってそうだ。だが、冗長性がテストされ、信頼され、適応可能なネットワークに織り込まれていれば、その痛みは和らぎ、パケットは流れ続ける。

この記事は、Foundry Expert Contributor Networkの一部として公開されています。
参加をご希望ですか?

翻訳元: https://www.csoonline.com/article/4102530/racks-sprawl-and-the-myth-of-redundancy-why-your-failover-isnt-as-safe-as-you-think.html

ソース: csoonline.com