仮想マシンを指定時刻で起動/停止させる Start-Stop VM v2 を試す!

新しく生まれ変わった、「Start-Stop VM v2 (AZ対応)」を試してみたいと思います。
この機能は指定した日時に仮想マシンを起動/停止(割り当て解除)する事ができます。
ですので、夜間や休日など利用しない時間帯には、仮想マシンを停止する事でコストの節約が可能です。

起動/停止のトリガーには、次のような方法があります。

①指定した時間になると下記単位で起動/停止を行います。※日付曜日指定は不可
[サブスクリプション / リソースグループ / 仮想マシン] ※除外設定可
②指定した時間になると[タグ]が設定されたVMのみ起動/停止を行います。
③指定した時間になると[指定したメトリックがしきい値を下回った]場合、停止を行います。
※デフォルトはCPU平均使用率

停止の際には、ユーザーへの通知は無くシャットダウンされます。

【コンポーネント】

Logic App:起動/停止をさせたいVMの指定と日時の指定
Function:起動/停止を実行
App Service Plan:Functionの基盤
Application Insights:テレメトリデータの収集
共有ダッシュボード:テレメトリデータの可視化
Blob:メタデータの保存


全体の流れ

Step1:Start/Stop VM の作成
Step2:実行日時の設定
Step3:起動/停止対象となる仮想マシンの指定


Step1:Start/Stop VM の作成

※Email宛に起動/停止の通知が送信されます。

下記リソースが作成されます。
・ststv2_vms_Scheduled_start/stop:リソースパスを使い対象VMの起動/停止を行う。
・ststv2_vms_Sequenced_start/stop:タグを使い対象VMの起動/停止を行う。
・ststv2_vms_AutoStop:CPU使用率に基づいて対象VMの停止を行う。

エンタープライズアプリケーションが作成され、サブスクに対して共同作成者が付与される

アクショングループにメール通知設定が作成されているので、追加/編集が出来ます。


Step2:実行日時の設定

日時指定を行う前に、どの起動/停止方法を利用するか決める必要があります。
① ststv2_vms_Scheduled_start/stop:リソースパスを使い対象VMの起動/停止を行う。
② ststv2_vms_Sequenced_start/stop:タグを使い対象VMの起動/停止を行う。
③ ststv2_vms_AutoStop:(デフォルト)CPU使用率に基づいて対象VMの停止を行う。

作成した[ststv2_vms_xxx]を選択ー[ロジックアプリ デザイナー]を選択

間隔:頻度に合わせた数字を入力
頻度:[秒 / 分 / 時間 / 日 / 週 / ヶ月]
設定時刻(時間):時間を指定 ※Scheduled/Sequencedに必要
設定時刻(分):分を指定 ※Scheduled/Sequencedに必要
開始時刻:記入例[2022-06-28T00:10:00Z] ※ststv2_vms_AutoStopに必要

設定後に[保存]を選択


Step3:起動/停止対象となる仮想マシンの指定

Step2で選択した[ststv2_vms_xxx]ー[ロジックアプリ コードビュー]を選択

① ststv2_vms_Scheduled_start/stop を選択した場合

[サブスクリプション内のVMを対象とする場合]
“ResourceGroups”: [
“/subscriptions/11111111-2222-3333-4444-555555555/”
]

[リソースグループ内のVMを対象とする場合] ※複数指定
“ResourceGroups”: [
“/subscriptions/11111111-2222-3333-4444-555555555/resourceGroups/rg1/”,
“/subscriptions/11111111-2222-3333-4444-555555555/resourceGroups/rg2/”
]

[仮想マシンを指定する場合]
“ResourceGroups”: [
“/subscriptions/11111111-2222-3333-4444-555555555/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1”
]

[除外設定]
“ExcludedVMLists”: [
“/subscriptions/11111111-2222-3333-4444-5555555/resourceGroups/vmrg1/providers/Microsoft.Compute/virtualMachines/vm1”
]

② ststv2_vms_Sequenced_start/stop を選択した場合

対象VMにタグ設定を行います。※上記①の設定が必要です。

名前:起動の対象としたい場合[sequencestart] / 停止の対象としたい場合[sequencestop]
値:数字を入力。若番から実行される。※2番は、1番の起動後に実行される

③ ststv2_vms_AutoStop を選択した場合

デフォルトは、CPU使用率_5分平均_5%以下で停止 ※上記①の設定が必要です。

AutoStop_Frequency:評価頻度。この時間枠で集計される。
AutoStop_MetricName:メトリック名 ※CPU以外も指定可能
AutoStop_Threshold:しきい値。この値を下回るとVMが停止される。
AutoStop_TimeAggregationOperator:集計方法。Average,Maximum,Minimum
AutoStop_TimeWindow:メトリックを評価するための時間枠

設定後に[保存]を選択

最後に[有効]を選択


確認してみましょう!

各Logic Appの概要には、タスクが実行された履歴が表示されます。

共有ダッシュボードから全体の統計情報が確認できます。