コンテナのスケーリング術:サーキットブレーカー

F5エコシステム | 2018年1月18日

コンテナのスケーリングは、サービスの前段にプロキシを置くだけで済むものではありません。スケーリングに必要なのは分散だけではありません。変化の速いコンテナの世界でスケーリングを確実に行うには、次の5つの異なる機能が必要です:再試行、サーキットブレーカー、検出、分散、監視。

コンテナのスケーリング手法を取り上げる第2回では、サーキットブレーカーについて詳しく解説します。

サーキットブレーカー

動かない装置を何千点も発明し、その一方で実用化された有名な発明もいくつか残したことで知られるトーマス・エジソンは、1879年の特許出願でサーキットブレーカーの概念を示しました。そう、当時すでに特許は存在していたのです。エジソンの方式では交換が必要なヒューズを使用していました(昔の車でヒューズを必死に探した記憶がある方もいるかもしれません)が、より現代的な方式では、ブレーカーが「トリップ」して電流を遮断する仕組みになっています。その後リセットすれば、通常の電流と動作を復旧できます。

スケーリングの観点でも、サーキットブレーカーは同じ原理で動作します。「オーバーフロー」を検出すると、接続先のサービスに過剰な負荷がかからないよう、意図的に通信を遮断します。その後リセットすることで、リクエストとレスポンスの通常の流れを復旧できます。

サーキットブレーカーは、以前からロードバランシングプロキシの一部として使用されてきました。その前提は、X回試行しても特定のサービスに到達できない場合、そのサービスは停止しているというものです。提供できない応答をサービスに要求し続けても意味はなく、プロキシとネットワークのリソースを浪費するだけです。そのため、通常は設定可能な回数の失敗が発生すると、プロキシは回路を「遮断」し、それ以降の接続を試行しません。

プロセスは似ているように見えますが、これは再試行とは異なります。再試行は、最終的にリクエストが成功することを前提としています。一方、サーキットブレーカーはリクエストが失敗することを前提とし、再試行による時間とリソースの浪費を回避します。

問題が解決したら、サーキットブレーカーを「リセット」し、通常のフローを再開できます。

当初、このプロセスは手動で行われていました。オペレーターは、対象サービスが実際に復旧したことを確認してから、リセットを実行する必要がありました。近年では、ヘルスモニタリングを利用して、このプロセスが自動化されています。通常は、サービスへの接続を定期的に試行し、成功するとサーキットブレーカーをリセットして、通常の処理を再開できるようにします。

コンテナ化されたマイクロサービス環境では、サービスへのトラフィック、サービスからのトラフィック、サービス間のトラフィックが大量に発生するため、サーキットブレーカーが特に重要です。障害によってはすぐに認識できるものもありますが、ネットワークスタックの問題により、長いTCPタイムアウトが発生するまで検知できないものもあります。タイムアウトは望ましくないレイテンシーを生じさせるため、サーキットブレーカーと再試行では、アプリケーション全体が許容できる(または許容できない)レイテンシーを考慮する必要があります。これらの値を設定する際は、タイムアウト値と、パフォーマンスに関するビジネス上の期待を考慮する必要があります。レイテンシーの許容度が低い場合は、再試行回数を減らし、サーキットブレーカーをより迅速に作動させる必要があります。

共有
タグ: 2018

著者について

Lori Mac Vittie
Lori Mac Vittie特別技術者兼チーフエバンジェリスト | F5

Lori MacVittieは、F5のOffice of the CTOに所属するDistinguished Engineer兼Chief Evangelistであり、アプリケーションデリバリ、自動化戦略、インフラストラクチャに関する深い専門知識を有しています。AIエージェントのガードレール策定、脆弱なマルチクラウドアーキテクチャの分析、スケーラブルなシステムの限界の検証など、複雑な事柄を明快にすることで知られています。アプリケーション開発、ITアーキテクチャ、ネットワークおよびシステム運用の分野で、30年以上にわたる業界経験を有しています。F5入社前は、受賞歴のあるテクノロジー編集者として活躍していました。 MacVittieはコンピューターサイエンスの修士号を取得しており、セキュリティ、クラウド、エンタープライズアーキテクチャにわたる分野で多数の著作を発表しています。また、テーブルトークゲームとビデオゲームをこよなく愛し、チーズについては遠慮なく強いこだわりを語ります。

Lori Mac Vittieのその他のブログ記事

関連するブログ記事

F5 Application Study Tool:OpenTelemetryによるF5 BIG-IP環境の監視
F5エコシステム | 2025/04/15

F5 Application Study Tool:OpenTelemetryによるF5 BIG-IP環境の監視

F5の新しいオープンソースツールは、BIG-IP環境を詳細に可視化し、データを追跡するとともに、強力でカスタマイズ可能なインサイトを得るための基盤を提供します。

F5 BIG-IPでAI防御を実現
F5エコシステム | 2024/11/13

F5 BIG-IPでAI防御を実現

F5 BIG-IP Advanced WAF、BIG-IP APM、BIG-IP SSL Orchestratorが、生成AIアプリ向けに包括的なセキュリティソリューションを提供する仕組みをご覧ください。

F5 Advanced WAFによるGraphQL APIの保護
F5エコシステム | 2021/08/31

F5 Advanced WAFによるGraphQL APIの保護

ここ数年、多くの組織がデジタルトランスフォーメーションを進めており、COVID-19のパンデミックによってその動きは加速しています。

アプリケーションサービスの現状 通信業界版:リーダーとしての台頭
F5エコシステム | 2019/02/19

アプリケーションサービスの現状 通信業界版:リーダーとしての台頭

通信ネットワークが進化し、さまざまな業界の幅広いユースケースに対応するなか、通信業界の回答者がテクノロジーリーダーとしての存在感を高めていることがわかります。

デジタルトランスフォーメーションは、単なるペーパーレス化ではない
F5エコシステム | 2017/07/10

デジタルトランスフォーメーションは、単なるペーパーレス化ではない

デジタルトランスフォーメーションは、単なるペーパーレス化ではありません。真のモダナイゼーションにアプリケーションアーキテクチャとセキュリティの再構築が必要な理由を、F5ブログでご覧ください。

やめましょう。もう本当にやめましょう。HTTPSはHTTPより高速ではありません。
F5エコシステム | 2016/09/19

やめましょう。もう本当にやめましょう。HTTPSはHTTPより高速ではありません。

もうやめましょう。HTTPSはHTTPより高速ではありません。プロトコルのパフォーマンスに関する微妙な違いと、暗号化トラフィックを適切に最適化する方法については、F5ブログをご覧ください。