スナップショットを作ってAzure VMを複製する
Azureで既存のVMからコピーを作りたいときどうするんだろう、と思って調べてみました。 ざっくり言うと、「既存のマネージドディスクからスナップショットを作成」→「スナップショットから新しいマネージドディスクを作成」→「作成したマネージドディスクからVMを作成」という流れのようです。
基本的には、管理ディスク (Managed Disks) スナップショットより VM をデプロイするという記事に従って実施すればよいはずです。
VM作成は、ポータルからは実施できないようで、Azure CLIやPowerShellを使う必要があるようです。
手順は上記記事からもリンクされている既存の VHD を管理ディスク (Managed Disk) に変換し、VM をデプロイするの「2. 既存の "ディスク" リソースを使用し、仮想マシンを作成する。」に記載がありますが、PowerShellでの実施例になります。どちらかというと、Azure CLIの方が好みなので、Azure Managed Disks(管理ディスク) でスナップショットを使ってみたを参考にしつつ、Azure CLIマニュアルを見て実施しました。
一連の流れを実施するスクリプトをGitHubに置きましたので、よろしければご利用ください。このリポジトリーのスクリプトを使った場合、作業手順は以下のような感じになります。
$ git clone https://github.com/kazusato/azure-copy-vm.git $ cd azure-copy-vm $ cd 00_common $ cp ZZ_target_info.sh.template nogit/ZZ_target_info.sh $ vi nogit/ZZ_target_info.sh # ここでコピー元、コピー先の名前等を指定する $ cd ../01_copy_vm $ sh 01_create_snapshot.sh $ sh 02_create_managed_disk.sh $ sh 03_create_vm.sh