問49 カオスエンジニアリングの原則

応用情報​技術者試験 令和7年度 春期 午前、全80問のうちの問49。

出典:令和7年度 春期 応用情報技術者試験 午前 問49(ふりがなを省いた)

分散システムの脆弱性を実験によって発見する手法であるカオスエンジニアリングには,五つの原則がある。この原則のうちの三つは,“定常状態における振る舞いの仮説を立てる”,“実世界の事象を多様化させる”,“継続的に実行できるよう実験を自動化する”である。あと二つの原則の組みはどれか。

  1. ア“開発環境で実験を行う”,“影響範囲を局所化する”
  2. イ“開発環境で実験を行う”,“影響範囲を広く捉える”
  3. ウ“本番環境で実験を行う”,“影響範囲を局所化する”
  4. エ“本番環境で実験を行う”,“影響範囲を広く捉える”
答えと解説を開く

正解はウです。

カオスエンジニアリングは、サーバを止める、通信を遅らせるといった障害を、わざと起こしてみて、システムが持ちこたえるかを確かめる手法です。分散システムの弱点は、本物の利用者の数や使われ方、本物の設定がそろった所でしか表れないことが多いので、実験は本番環境で行います。一方で、本番で障害を起こせば利用者に迷惑がかかるので、実験の対象を一部に絞り、影響の及ぶ範囲を小さくします。本番環境で実験を行うことと、影響範囲を局所化することの組みなので、正解はウです。

ほかの選択肢が違う理由

  • ア影響範囲の局所化は合っていますが、実験の場は開発環境ではなく本番環境です。開発環境では、本番の使われ方や規模から生じる弱点を見つけられません。
  • イ実験の場も影響範囲も違います。本番環境で行い、影響範囲は小さく絞ります。
  • エ本番環境で行うのは合っていますが、影響範囲を広く捉えると、実験で利用者に大きな迷惑をかけるおそれがあります。原則は局所化です。

仕組み

カオスエンジニアリングでは、まず「正常なら、この値はこの範囲に収まる」という定常状態を決め、障害を起こしてもそれが保たれるかを見ます。保たれなければ、そこが弱点です。

最初は小さな範囲の実験から始め、自信がついたら少しずつ範囲を広げるのが一般的な進め方です。