分散システムの脆弱性を実験によって発見する手法であるカオスエンジニアリングには,五つの原則がある。
この原則のうちの三つは,“定常状態における振る舞いの仮説を立てる”,“実世界の事象を多様化させる”,“継続的に実行できるよう実験を自動化する”である。
あと二つの原則の組みはどれか。
正答3
解説
正解は3です。
カオスエンジニアリングは、システムに意図的に障害を起こす実験を行い、分散システムの弱点を本番で問題が起きる前に見つける手法です。
その五つの原則は、定常状態の仮説、実世界の事象の多様化、本番環境での実験、実験の自動化、影響範囲の局所化です。
【選択肢別解説】
1:× 影響範囲の局所化は原則に含まれますが、開発環境で実験を行うのは誤りです。
本番環境には開発環境で再現できない負荷や構成があるので、原則では本番環境で実験を行うとしています。
2:× 開発環境で実験を行うことも、影響範囲を広く捉えることも原則とは異なります。
原則では、本番環境で実験し、影響範囲(爆発半径)は最小限に抑えるとしています。
3:○ 本当の弱点は実際の利用状況でしか現れないため、本番環境で実験を行います。
同時に、利用者への悪影響を抑えるため、実験の影響範囲を局所化します。
4:× 本番環境で実験を行うのは原則どおりですが、影響範囲を広く捉えるのは誤りです。
本番の利用者を巻き込むおそれがあるので、影響範囲は小さく限定します。
【ポイント】
カオスエンジニアリングの代表例に、本番環境のサーバを無作為に停止させるChaos Monkeyというツールがあります。
「本番で実験」と「影響は最小限」をセットで覚えましょう。