Logic Appsを使ってAzure Virtual Machineを定時に起動停止

Logic Appsを利用したAzure VMの起動停止をやってみました。

今まではAutomationアカウントを使って今まではやってたのですが、Logic AppsでAzure VMの起動停止とかもできたりするのかなぁと思って、試してみた所めちゃめちゃ簡単にできました。

今回はAzure VMの起動停止だけをやってますが、色んな事が出来そうなので引き続き試してみたい所です。

スポンサーリンク

Azure VMを起動するロジックアプリ(Azure Logic Apps)を作成

ロジックアプリのサービスを作成する

ロジックアプリ自体を作成します。

作成手順

ロジックアプリのメニューで追加(Consumption)を選択します

ロジックアプリの作成で設定を行います。

  • リソースグループ名
  • ロジックアプリ名
  • リージョン

設定する値の入力が完了したら確認および作成をクリックします。

※今回は起動だけなのですが、将来的に色々やってみたかったのでVM-ReStartという名前にしてみました。

確認画面が表示されますので作成をクリックします。

繰り返しトリガーの作成

ロジックアプリデザイナーを使って作成していきます。まず最初にトリガーを作成します。今回は毎朝10時にAzure VMを起動するようにしてみました。

作成手順
ロジックアプリデザイナーを選択すると、トリガーが表示されますので繰り返しを選択します。

今回は毎朝10時に起動とします。

間隔/頻度を1日とします。

Add new parameterが表示されますので、タイムゾーン、開始時刻、設定時刻(時間)、設定時刻(分)にチェックを入れます。

今回は日本時間毎朝10時に起動するように設定した場合このようになります。

Invoke resource operationのアクションを作成する

Azure Resource ManagerのInvoke resource operationのアクションを使ってAzure VMの操作を実施します。

作成手順

検索欄にInvokeと入力します。

Invoke resource operationを選択します。

サインインを要求されます。サインインをクリックするとAzureへのログイン画面が表示されますのでログインします。

Subscription、Resource Group、Resource Providerを選択します。

Short Resource Idを設定します。Azure VMの場合は”virtualMachines/VM名”という形になります。

Client Api Versionは2021-03-01を設定しました。(この時点での最新版)

Action Nameは実際に操作する内容になります。VM起動の場合はStartになります。

設定が完了するとこのような感じになります。

最後にLogic Appデザイナーで保存を選択します。

ロジックアプリを実行してみる

作成したロジックアプリを実行してみます。

Logic Apps実行結果

ロジックアプリデザイナーの画面で実行をクリックします。

実行されている事が分かります。(起動に時間が掛かっている為、オレンジになっています。)

ロジックアプリ(Logic Apps)を複製(コピー)してAzure VMの停止も作成

作成したロジックアプリを複製(コピー)してAzure VMの停止を作成します。停止は毎朝10時30分にするようにしてみました。

作成手順

ロジックアプリの画面で複製をクリックします。そうするとロジックアプリの作成画面が表示されます。ロジックアプリ名を入力し作成をクリックします。

これで作成は完了です。

作成されたロジックアプリでロジックアプリデザイナーを選択します。

ロジックアプリデザイナーの設定もそのままコピーされていますので変更だけします。

設定時刻を10時30分に変更。Action Nameをdeallocateに変更し保存すると同じAzure VMの停止も作成出来ました。

 

非常に簡単にできました。色々出来そうなので今後も引き続き試していきたい所です。

Power Shellを使ったAzure VMの起動停止はこちら。