Azureの仮想マシンの停止方法とAutomationサービス
IM事業部の 田村 です。
今回はAzureの仮想マシン(以下VM)の停止方法についてご紹介させていただきます。
AzureのVMもSQLDataWarehouseと同様に停止することにより、利用料金の節約が可能です。
使用しない時間帯は停止するようにして、無駄なコストを抑えるようにすべきですね。
VMの手動停止
通常のWindowsServerと同様にシャットダウンすることによりVMの停止が可能ですが、それだと利用料金が課金され続けてしまいます。Azureポータルからログインし、ポータル上から停止することにより、利用料金の課金が止まるので、そちらから停止するようにしましょう。
VMの手動停止方法
スケール変更はAzureのポータルから行えます。
下の画像のようにVM上からシャットダウンするだけでは課金が止まりません。

下の画像のようにポータル上の停止ボタンを押すことにより課金を止めることが可能です。

再び利用したい場合には、開始ボタンを押してください。
Automationを使用したVMの停止
前項ではポータルからの手動停止方法をご紹介させていただきましたが、本項ではAzure Automationサービスを使用した停止方法をご紹介します。
Azure AutomationサービスのRunbookから停止スクリプトを発行し、VM等の各サービスを停止することができます。
こちらの停止方法でもポータルから停止したときと同様に課金を止めることができます。
Runbookを使用した停止方法
1.AutomationサービスメニューからRunbookを選択し、「Runbookの追加」ボタンをクリック

2.「新しいRunbookを作成します」をクリックし、Runbook名を入力、Runbookの種類をPowershellに変更

3.Runbookの編集画面で以下のPowerShellスクリプトを記述し、発行ボタンをクリック
#パラメータ設定
$ServiceName = "停止するVMサービス名"
$VMName = "停止するVM名"
$Cred = "作成済のAutomation資格情報"
#資格情報取得
$azureCredential = Get-AutomationPSCredential -Name $Cred
#アカウント取得
Add-AzureAccount -Credential $azureCredential | Write-Verbose
#接続情報取得
$Con = Get-AutomationConnection -Name "AzureRunAsConnection"
#サブスクリプションを明示的に指定
Select-AzureSubscription -SubscriptionId $Con.SubscriptionId
Write-Output "-------------------------------------------------------------------------"
#VM取得
$vm = Get-AzureVM -ServiceName $ServiceName -name $VMName
$vm
Write-Output ""
#ステータスチェック
if ($vm.PowerState -eq "Started") {
Write-Output "停止開始"
Stop-AzureVM -ServiceName $vm.ServiceName -Name $vm.Name -Force
Write-Output "停止済み (割り当て解除)"
}
Write-Output "-------------------------------------------------------------------------"

資格情報が未作成の場合は、Automationから資格情報を作成してください。 以上の方法でVM停止Runbookの発行が行えました。

実際に停止する場合は、当該Runbookから開始ボタンをクリックしてください。
以上、VMの停止方法とRunbookの簡単なご紹介でしたが、いかがでしたでしょうか。
RunbookからはVMの停止・再開だけでなく、DataWarehouseの停止・再開・スケール変更等も行えます。こちらも機会があればご紹介させていただきます。
今回は手動でサービスの停止を行う方法をご紹介させていただきましたが、次回は各サービスをを決められた時間でスケジュール起動する方法をご紹介させていただこうと思います。
以上、最後までご愛読いただき
ありがとうございました。
お問い合わせは、
以下のフォームへご連絡ください。




