Note: 本記事は、2018年11月時点の内容です。
【Q】Azureの仮想マシンを別の仮想ネットワークに変更(移動)したい。どうしたらよい?
【A】いくつかやり方があるが、仮想マシン再作成が手っ取り早そう。
- ↓こんな丁寧な記事があるが、インフラ屋さんでないと、なにぶん分かり辛い。。。
利用中の Azure 仮想ネットワークを変更する
-
仮想ネットワークを変更するというのが王道のようだが、分かりづらい。
-
手っ取り早くやるには、仮想マシンを一度消して再作成。OSディスクを再マウントする。
PowerShell を使用して Azure VM で使用される OS ディスクを変更する
- 以下手順は、自己責任でお願いします(くれぐれも間違ってディスクは消さないようにご注意ください。)
作業の手順
- 仮想マシンの削除
- 仮想マシンの新規作成
- Azure Cloud Shellの起動
- OSディスク名の確認
- Powershellコマンドの実行
【手順1】仮想マシンの削除
- 対象の仮想マシンのみ削除する。(ディスクは消さない。)
【手順2】仮想マシンの新規作成
- 仮想マシンを作成する
- ネットワークは、変更したい先の仮想ネットワークを選択して作成する
- ディスクも元のOSディスクを指定したいところだができない。この時点では、デフォルトで作っておき、この後の手順で変更する。
【手順3】Azure Cloud Shellの起動
- AzureポータルからAzure Cloud Shellを起動する
Azure Cloud Shell の PowerShell のクイックスタート
【手順4】OSディスク名の確認
- AzureポータルからOSディスク名を確認しておく
【手順5】Powershellコマンドの実行
- 以下コマンドを順に実行
Note:
以下手順では、<myResourceGroup>
を使用するリソースグループ名に、
<newDisk>
を使用するOSディスク(付け替えたい元のディスク)に置き換えてください。
- VMの取得
# Get the VM
$vm = Get-AzureRmVM -ResourceGroupName <myResourceGroup> -Name myVM
- VMの停止(すでに停止している場合はスキップ)
# Make sure the VM is stopped\deallocated
Stop-AzureRmVM -ResourceGroupName <myResourceGroup> -Name $vm.Name -Force
- OSディスク情報の取得と設定
# Get the new disk that you want to swap in
$disk = Get-AzureRmDisk -ResourceGroupName <myResourceGroup> -Name <newDisk>
# Set the VM configuration to point to the new disk
Set-AzureRmVMOSDisk -VM $vm -ManagedDiskId $disk.Id -Name $disk.Name
# Update the VM with the new OS disk
Update-AzureRmVM -ResourceGroupName <myResourceGroup> -VM $vm
- VMの起動
# Start the VM
Start-AzureRmVM -Name $vm.Name -ResourceGroupName <myResourceGroup>