Azure

Azure Chaos Studioを動かして仮想マシンをCPU高負荷にしてみる

はじめに

Azure Chaos Studioは様々な障害をシミュレートできます。その一つに、仮想マシンにたいして高負荷の状況をシミュレートできます。今回はその方法を紹介します。

構成

構成はWebサーバーとDBサーバーがあるような単純な構成です。

Webサーバーに対してChaos Studioが高負荷状態にさせます。

この構成はすでにあるものとします。

Chaos Studioの構築設定については下記を参考にしてください。

Azure Chaos Studioを動かして仮想マシンをシャットダウン(障害)してみる - 技術的な何か。
Azure Chaos Studioを動かして仮想マシンをシャットダウン(障害)してみる - 技術的な何か。

はじめに Azure Chaos Studioを知っていますでしょうか。カオスエンジニアリング用のツールです。障害シミュレーションが行えるツールです。 これを、利用することで環境の問題点やボトルネック

level69.net

実験の作成

最初にマネージドIDを登録します。マネージドIDと検索して作成します。

Webサーバーをターゲットにしておきます。エージェントベースのターゲットになります。

作成したマネージドIDを指定し有効にします。

次に実験を作成します。

実験に名前を付けます。

実験デザイナーを設定します。アクションの追加を設定します。

フォールトをCPU Pressureに設定します。

パラメーターでDurationを3分に設定します。

pressureLevelを99%に設定します。これはCPUの負荷率になります。

ターゲットをWebサーバーに設定します。

フォールトが追加されたことを確認します。

実験作成後にロールを設定します。

Webサーバーを開きアクセス制御でロールを割り当てます。

今回は検証なので閲覧者で割り当てます。

新たに作成された、実験用のマネージドIDを指定します。

割り当ててChaos Studioの設定は完了です。

LinxuでCPU pressureを行うにはstress-ngをインストールする必要があります。

Chaos Studio fault and action library | Microsoft Docs
Chaos Studio fault and action library | Microsoft Docs

Understand the available actions you can use with Chaos Studio including any prerequisites and param ...

docs.microsoft.com

sudo apt-get update && sudo apt-get -y install unzip && sudo apt-get -y install stress-ng

対象の実験に移動して開始します。

 

ログインして状況を確認します。

AzureChaosAgentが確認できます。そしてstress-ng-cpuのプロセスが動いていることが確認できます。

メトリックを確認するとCPUが高負荷になっていることが確認できます。

以上でシミュレートは完了です。

まとめ

CPUの負荷率を上げるのはChaos Studioの使用例の一例です。一般的なシチュエーションをシミュレートできます。

他にも色々なシチュエーションを体験できるので試してみたいと思います。

-Azure
-