【再】[Microsoft Azure]勤務時間中だけ仮想マシンを動かす(スケジュールによる自動起動・停止)
以前に書いた記事1は手順も長く面倒だったので、ModuleとしてまとめてPowerShell Galleryへ公開しました。
準備
PowerShell Galleryを使用できるように、Windows 10かWMF 5を用意します。
モジュールをインストールしてインポートします。
PS C:\> Install-Module AzureRmMinus
PS C:\> Import-Module AzureRmMinus
Login-AzureRmAccount
でログインしておきます。
使い方
ステップ
アプリケーション、サービスプリンシパル、Automationアカウント、RunBook、Automationアカウント資産を作成します。
PS C:\> New-AzureRmStartStopVmAutomation -ResourceGroupName rg01 -AutomationAccountName aaaa01
AD Application's Password:: *********
Re-type AD Application's Password:: *********
コマンドを起動するとパスワードを聞かれますので、アプリケーションに設定したいパスワードを入力してください。ここで設定するパスワードは他では使いませんので、適当に長く複雑なものを入力してください。
ロケーションは指定されたリソースグループと同一になります。
オプションの説明
オプション | 説明 |
---|---|
ResourceGroupName | 既存のリソースグループ名です。 |
AutomationAccountName | 作成するAutmationアカウント名です。 |
ステップ スケジュールの作成
作成したAutomationアカウントにスケジュールを作成します。
PS C:\> New-AzureRmAutomationSchedule -ResourceGroupName rg01 -AutomationAccountName aaaa01 -StartTime "2016-04-08 9:00" -Name nineo -OneTime
ここで作ったスケジュール名は次のステップで使います。
ステップ スケジュールとRunBookを紐づけ
VM起動RunBookとスケジュールを紐づけるときは、Register-AzureRmStartVmScheduleRunbook
を使います。
PS C:\> Register-AzureRmStartVmScheduleRunbook -ResourceGroupName rg01 -AutomationAccountName aaaa01 -VmName MyVmName -ScheduleName nineo
VM停止RunBookとスケジュールを紐づけるときは、Register-AzureRmStopVmScheduleRunbook
を使います。
PS C:\> Register-AzureRmStopVmScheduleRunbook -ResourceGroupName rg01 -AutomationAccountName aaaa01 -VmName MyVmName -ScheduleName nineo
オプションの説明
オプション | 説明 |
---|---|
ResourceGroupName | 既存のリソースグループ名です。 |
AutomationAccountName | 作成したAutmationアカウント名です。 |
VmName | 仮想マシン名です。 |
ScheduleName | 作成したスケジュール名です。 |