VMのディスクをStandardからPremiumに変更する手順

今回は下記のような環境で行います。

移行元Storage : japanwestdisks928

パフォーマンス : Standard

移行vhd : westtest201691818370.vhd

移行先Storage : easttestpremium

パフォーマンス : Premium

予め、Storage Accountのアクセスキーを取得する必要があります。

アクセスキーは管理画面から確認できます。

なお、AzCopyに使うvhdファイルでVMを起動させている場合、ファイルシステムを一貫した状態に保持するために、VM を停止する必要があります。

3.AsCopyを実行する

今回はPowerShellからAzCopyコマンドを使います。

まずはAzCopyをダウンロードしたディレクトリに移動します。

cd ‘C:\Program Files (x86)\Microsoft SDKs\Azure\AzCopy’

AzCopyでディスクコピーをする構文は下記の通りです。

AzCopy /Source:/SourceKey:/Dest: /DestKey: /Pattern:

パラメータは下記になります。

/Source:

/SourceKey:

/Dest:

/DestKey:

/Pattern:

実行すると、PowerShell上で経過が確認できます。

下の画像のように表示されたらコピー完了です。

実際にStorageの管理画面を開くとコピーされていることが確認できます。

4.vhdからVMを立ち上げる

Premium StorageにコピーしたvhdをVMとして起動させるにはPowerShellのコマンドが便利です。

PowerShellを起動したらログインします。

Login-AzureRmAccount

下記情報を変数に登録します。

$rgName = “”

$vnetName = “”

$location = “”

$subnetName = “”

$vmName = “”

$vmSize = “”

$ipName = “”

$nicName = “”

$vhdName = “”

$vhdUri = “”

仮想ネットワークの設定を読み込みます。

$vnet = Get-AzureRmVirtualNetwork -ResourceGroupName $rgName -Name $vnetName

パブリックIPを取得します。

固定IPにしたい場合は「AllocationMethod」を「Static」にしてください。

$pip = New-AzureRmPublicIpAddress -Name $ipName -ResourceGroupName $rgName -Location $location -AllocationMethod Dynamic

ネットワークインターフェースを作成し、読み込みます。

$nic = New-AzureRmNetworkInterface -Name $nicName -ResourceGroupName $rgName -Location $location -SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $pip.Id

$nic = Get-AzureRmNetworkInterface -ResourceGroupName $rgName -Name $nicName

立ち上げるVMの設定をしていきます。

まずは名前とサイズを指定します。

$VmConfig = New-AzureRmVMConfig -Name $vmName -VMSize $vmSize

先ほどコピーしてきたVHDファイルを指定します。

$VmConfig = Set-AzureRmVMOSDisk -VM $VmConfig -VhdUri $vhdUri -Name $vhdName -CreateOption attach -Windows -Caching ReadWrite

ネットワークインターフェースの紐づけをします。

$VmConfig = Add-AzureRmVMNetworkInterface -VM $VmConfig -NetworkInterface $nic

$VmConfig.NetworkProfile.NetworkInterfaces.Item(0).Primary = $true

設定を元にVMを立ち上げます。

New-AzureRmVM -ResourceGroupName $rgName -Location $location -VM $VmConfig -Verbose

実行後、下の画像のようにOKの表示がされていれば作成完了です。

いかがでしたでしょうか。別記事でもご紹介しますが、Premium Storageを使うことで可用性セットに設定しなくてもSLA99.9%が保証されるようになりましたので、この機会に是非ご利用ください。次回もお楽しみに!

この記事を書いた人

azure-recipe-user