Sebastien Wains
カオスエンジニアリングは、組織が予測不可能なことを予測しようとするプラクティスです。インフラ障害、ネットワーク障害、アプリケーション障害に対する回復力を獲得するために使われます。
一般的にテスト駆動開発とは、2+2=4であることをテストするとか、データベースに書き込む前にデータベースが利用可能であることをテストするといった、予測可能な不具合をテストすることです。
カオスエンジニアリングでは、本番システムにわざと障害を導入し、そのカオスにどう耐えるかをチェックします。
障害にはさまざまな性質がある:
このような障害は、アプリケーションに予測不可能な反応を引き起こす可能性があります。
障害が発生した場合、特定の障害シナリオに耐えられるようにアプリケーションを改善する必要があります。
カオスメッシュ(Chaos Mesh) は、Kubernetesのためのカオスエンジニアリングプラットフォームです。
カオスモンキー(Chaos Monkey) は、本番環境でランダムにインスタンスを停止します。
カオスブレイド(Chaos Blade) は、マルチ環境、マルチクラスタ、マルチ言語をサポートするクラウドネイティブなカオスエンジニアリングプラットフォームです。
カオスエンジニアリング をチームや顧客、ステークホルダーと実施するにあたりより詳細にお知りになりたい場合は、以下のリンクを参照してください。