CPU 使用率は、業務システムの健全性を示す重要な指標です。安定性を確保するためには、CPU 使用率を適切な範囲内に維持する必要があります。CPU 使用率が過度に高くなると、サービス遅延やサービス停止を引き起こす可能性があります。ECS インスタンスに高 CPU 使用率エラーを注入することで、業務システムが特定の CPU 負荷にどのように応答するかをテストし、システム回復能力を評価し、モニタリングおよびアラートメカニズムの有効性を検証できます。ドリル結果に基づいて、対応戦略を策定できます。これにより、本番環境で高 CPU 使用率が発生した場合でも、システムが迅速に正常な動作を再開し、ビジネス中断のリスクを軽減できます。
仕組み
このソリューションは、クラウドアシスタントプラグイン ecs-fault-highcpu を使用します。このプラグインは、AliFaultHighCpu プロセスを開始し、指定されたデューティサイクルで CPU タイムスライスを消費します。
操作手順
前提条件
クラウドアシスタントエージェント が、ドリルを実行する ECS インスタンスにインストールされていること。
ECS インスタンス上の [クラウドアシスタント] のステータスは [正常] です。詳細については、「Cloud Assistant のステータスを確認して異常を処理する」をご参照ください。
エラーの注入
sudo アクセス権限を持つユーザーとして、
ecs-fault-highcpuクラウドアシスタントプラグインを実行します。sudo acs-plugin-manager --exec --plugin ecs-fault-highcpu --params inject,[cpu-percent=paramA],[cpu-list=paramB]括弧 (
[]) 内のパラメーターは、オプションの障害注入パラメーターです。cpu-percent (オプション): 目標 CPU 使用率。このパラメーターが空の場合、デフォルト値は 100 です。
説明cpu-percent パラメーターは、注入プロセスの CPU 使用率を指定します。合計 CPU 使用率は、他のプロセスによっても影響を受けます。
cpu-list (オプション): 負荷を特定の vCPU にバインドします。たとえば、cpu-list=0-2/4 は、コア 0、コア 1、コア 2、およびコア 4 に負荷をバインドします。このパラメーターが空の場合、負荷はすべての vCPU にバインドされます。
エラーが正常に注入されたかを確認します。
ECS インスタンスで
topコマンドを実行します。CPU 使用率が増加した場合、エラーは正常に注入されています。カーネルモード (`sy`) とユーザーモード (`us`) の CPU 使用率の合計は、指定された CPU 使用率とほぼ等しくなります。
Cloud Monitor モニタリングチャートで、エラー注入後に CPU 使用率が増加している場合、エラーは正常に注入されています。

エラーからの回復
ECS インスタンスを回復するには、次のいずれかの方法を使用します。
方法 1 (推奨): ECS インスタンスでエラー回復コマンドを実行し、CPU 使用率がエラー注入前のレベルに低下したことを確認します。
sudo acs-plugin-manager --exec --plugin ecs-fault-highcpu --params recover次の出力は、CPU 使用率がエラー注入前のレベルに低下し、システムが回復したことを示しています。

方法 2:
AliFaultHighCpuという名前のプロセスを終了します。このシナリオでの後続のエラー注入に影響を与えないように、
AliFaultHighCpuプロセスを終了した後、方法 1 の回復コマンドを再度実行します。sudo kill <AliFaultHighCpu PID>