SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

AWSとAzureのマネージドサービスで実践カオスエンジニアリング

【Azureでカオスエンジニアリング】Azure Chaos StudioでVMSSにカオスを挿入する

AWSとAzureのマネージドサービスで実践カオスエンジニアリング 第3回

  • X ポスト
  • このエントリーをはてなブックマークに追加

実験内容

 今回の実験ではインスタンスのCPU使用率が90%以上となっても、利用者が継続してシステムを利用し続けることができることを確認してみます。

 Application Insightsの可用性テストの結果から、下記の状態を異常状態として定義し、Azure Monitorのアラートとして検知できるようにします。

  • 30分間のHTTP Statusが200だった場合のリクエスト数/30分の総リクエスト数(30回)< 90%
  • 30分間のリクエストのレスポンスタイムの90パーセンタイル値 > 3000ms

 逆説的には、このような異常状態でない状態を定常状態として定義しています。(「定常状態の定義」観点のポイント)

Azure Monitorのアラート設定
Azure Monitorのアラート設定

 なお、「30分間のリクエストのレスポンスタイムの90パーセンタイル値」はApplication Insightsで取得するログ(requests)に対し、以下のKustoクエリを適用して取得しています。

let dataset = requests
| where timestamp > ago(30m)
;
dataset | summarize percentile(duration, 90)

 それでは、Chaos Studioの具体的な実験の設定方法を見ていきましょう。設定の流れは、Microsoftの公式ドキュメントも参照ください。

ターゲットの有効化

 Chaos Studioでは、まず実験対象のリソースをターゲットとして有効化する必要があります。ここでは、「サービス直接ターゲット」と「エージェントベースのターゲット」の2種類が用意されています。

 「サービス直接ターゲット」は、Azureの各サービスにおけるリソース停止といった、サービスに直接障害を発生させるものであり、エージェントレスで動作可能です。一方、「エージェントベースのターゲット」は、メモリへの負荷やプロセスの強制停止などのVMやVMSSのインスタンス内に障害を発生させるものであり、エージェントの導入が必要となります。

 今回はVMSSリソースに対して「エージェントベースのターゲット」を選択します。

 エージェントベースのターゲットに対して実験を実行する場合、ユーザー割り当てマネージドIDを使用してインスタンスに対し障害を発生させるため、事前にユーザー割り当てマネージドIDを作成しておく必要があります。「エージェントベースのターゲット」を有効化する際、作成したユーザー割り当てマネージドIDを指定します。ユーザー割り当てマネージドIDの作成方法は、こちらの手順を参考に作成します。

ターゲットの有効化
ターゲットの有効化

次のページ
実験の作成

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
AWSとAzureのマネージドサービスで実践カオスエンジニアリング連載記事一覧

もっと読む

この記事の著者

中野 一成(株式会社NTTデータ)(ナカノ カズアキ)

 オンプレミスやパブリッククラウドで稼働する数多くの金融系システムの開発に従事。 最近では、Azureを使用した生命保険会社向けシステムの基盤開発、運用に携わる。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/16633 2022/10/17 11:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング