フォールトドリルは、システムの安定性を確保するために不可欠です。特定の制御可能な障害をシステムに注入することで、システムの 高可用性 を検証および強化し、関係者の緊急対応能力を訓練し、障害処理メカニズムを検証することで、実際の障害発生時の平均修復時間 (MTTR) を短縮できます。Alibaba Cloud は、ecs-fault-{scenename} または ACS-ECS-{scenename} 形式の名前を持つ クラウドアシスタント プラグインを提供し、Elastic Compute Service (ECS) インスタンスに障害を注入します。これにより、正確かつ便利にドリルを実行でき、ドリルの有効性と効率が向上します。
メリット
無料およびオープンソース: 実行されたすべてのプラグインは、障害注入 ソースコード と 実行可能ファイル を含め、クラウドアシスタントディレクトリに自動的に保存されます。
シナリオベース: 各プラグインは 1 つのタイプのドリル シナリオ でのみ使用できます。ドリル シナリオ に基づいてプラグインをダウンロードして使用できます。
便利で効率的: クラウドアシスタントがインストールされているすべての ECS インスタンスで、ドリルプラグインを実行できます。1 つのコマンドだけでプラグインのインストールと実行を完了できます。
フォールトドリルでサポートされているシナリオ
ドリル シナリオ | 説明 |
サーバーのダウンタイムは、ソフトウェアと ハードウェア の 異常 によって発生する一般的な問題であり、事実上避けられません。ECS インスタンスで カーネル エラーをシミュレートしてダウンタイムを引き起こし、 業務システム のダウンタイムへの対応をテストし、システムの 回復 機能を検査し、監視および アラート メカニズムの有効性を検証できます。その後、ドリル結果に基づいて対応戦略を開発できます。これにより、 本番環境 でダウンタイムが発生した後、システムがすぐに通常の 操作 を再開できるようになり、ビジネスの中断のリスクが軽減されます。 | |
ビジネスの安定性を確保するには、CPU 使用率 を適切な範囲内に維持する必要があります。CPU 使用率 が過度に高いと、ビジネスの 待機時間 が発生したり、中断したりする可能性があります。CPU 使用率 高負荷エラーを ECS インスタンスに注入して、 業務システム が特定の CPU 負荷 にどのように反応するかをテストし、システムの 回復 機能を検査し、監視および アラート メカニズムの有効性を検証できます。その後、ドリル結果に基づいて対応戦略を開発できます。これにより、 本番環境 で CPU 使用率 が高くなったときにシステムがすぐに通常の 操作 を再開できるようになり、ビジネスの中断のリスクが軽減されます。 | |
注入 プロセス を使用して継続的に メモリ を消費することにより、ECS インスタンスで メモリ不足 (OOM) ドリルを実行できます。これにより、 ビジネスプロセス を想定どおりに終了できるかどうかをテストし、システムの 回復 機能を検査し、監視および アラート メカニズムの有効性を検証できます。その後、ドリル結果に基づいて対応戦略を開発できます。これにより、 本番環境 で OOM が発生したときにシステムがすぐに通常の 操作 を再開できるようになり、ビジネスの中断のリスクが軽減されます。 | |
ネットワークドリル |
|
ディスクおよび I/O ドリル |
|
システム リソース ドリル |
|
手順
このベストプラクティスは、 クラウドアシスタント と クラウドアシスタント プラグインに依存しており、次の 構文 の コマンド を使用します。
障害注入
sudo acs-plugin-manager --exec --plugin {plugin-name} --params inject,paramA=a,paramB=b障害回復
sudo acs-plugin-manager --exec --plugin {plugin-name} --params recover
{plugin-name}は、実際の クラウドアシスタント プラグインの名前に置き換えます。プラグインは、注入 (inject) および 回復 (recover) 操作 をサポートしています。
障害注入は、コンマ (,) で区切られた パラメーター キーと 値 のペアを 連結 し、各ペアのキーと 値 は等号 (=) で接続されます。