Azure CLI と Managed Disks を使用して Linux VM のコピーを作成するCreate a copy of a Linux VM by using Azure CLI and Managed Disks

この記事では、Azure CLI を使用して、Linux を実行している Azure 仮想マシン (VM) のコピーを作成する方法について説明します。This article shows you how to create a copy of your Azure virtual machine (VM) running Linux by using the Azure CLI. VM イメージを大規模にコピー、作成、保存、共有する方法については、「共有イメージ ギャラリー」を参照してください。To copy, create, store and share VM images at scale, see Shared Image Galleries.

さらに、VHD から VM をアップロードして作成することもできます。You can also upload and create a VM from a VHD.

前提条件Prerequisites

  • Azure CLI をインストールします。Install the Azure CLI.

  • az login で Azure アカウントにサインインする。Sign in to an Azure account with az login.

  • コピーのソースとして使用する Azure VM がある。Have an Azure VM to use as the source for your copy.

ソース VM を停止するStop the source VM

az vm deallocate を使用して、ソース VM の割り当てを解除します。Deallocate the source VM by using az vm deallocate. 次の例では、myResourceGroup というリソース グループ内の myVM という VM の割り当てを解除します。The following example deallocates the VM named myVM in the resource group myResourceGroup:

az vm deallocate \
    --resource-group myResourceGroup \
    --name myVM

ソース VM をコピーするCopy the source VM

VM をコピーするには、基となる仮想ハード ディスクのコピーを作成します。To copy a VM, you create a copy of the underlying virtual hard disk. このプロセスでは、ソース VM と同じ構成および設定が含まれるマネージド ディスクとして、特殊な仮想ハード ディスク (VHD) を作成します。This process creates a specialized virtual hard disk (VHD) as a Managed Disk that contains the same configuration and settings as the source VM.

Azure Managed Disks の詳細については、「Azure Managed Disks の概要」をご覧ください。For more information about Azure Managed Disks, see Azure Managed Disks overview.

  1. az vm list で、各 VM とその OS ディスクの名前を一覧表示します。List each VM and the name of its OS disk with az vm list. 次の例では、myResourceGroup という名前のリソース グループに含まれているすべての VM の一覧を表示します。The following example lists all VMs in the resource group named myResourceGroup:

    az vm list -g myResourceGroup \
         --query '[].{Name:name,DiskName:storageProfile.osDisk.name}' \
         --output table
    

    出力は次の例のようになります。The output is similar to the following example:

    Name    DiskName
    ------  --------
    myVM    myDisk
    
  2. 新しいマネージド ディスクを作成し、az disk create を使用することによって、ディスクをコピーします。Copy the disk by creating a new managed disk and by using az disk create. 次の例では、myDisk という名前のマネージド ディスクから myCopiedDisk という名前のディスクを作成します。The following example creates a disk named myCopiedDisk from the managed disk named myDisk:

    az disk create --resource-group myResourceGroup \
         --name myCopiedDisk --source myDisk
    
  3. az disk list を使用して、リソース グループ内にマネージド ディスクがあることを確認します。Verify the managed disks now in your resource group by using az disk list. 次の例では、myResourceGroup という名前のリソース グループ内のマネージド ディスクの一覧を表示します。The following example lists the managed disks in the resource group named myResourceGroup:

    az disk list --resource-group myResourceGroup --output table
    

仮想ネットワークを設定するSet up a virtual network

省略可能な次の手順では、新しい仮想ネットワーク、サブネット、パブリック IP アドレス、仮想ネットワーク インターフェイス カード (NIC) を作成します。The following optional steps create a new virtual network, subnet, public IP address, and virtual network interface card (NIC).

トラブルシューティングまたは追加デプロイの目的で VM をコピーする場合は、既存の仮想ネットワークで VM を使用しないほうがよいことがあります。If you are copying a VM for troubleshooting purposes or additional deployments, you might not want to use a VM in an existing virtual network.

コピーする VM のために仮想ネットワーク インフラストラクチャを作成する場合、次の手順に従ってください。If you want to create a virtual network infrastructure for your copied VMs, follow the next few steps. 仮想ネットワークを作成しない場合は、「VM を作成する」に進んでください。If you don't want to create a virtual network, skip to Create a VM.

  1. az network vnet create を使用して、仮想ネットワークを作成します。Create the virtual network by using az network vnet create. 次の例では、myVnet という名前の仮想ネットワークと mySubnet という名前のサブネットを作成します。The following example creates a virtual network named myVnet and a subnet named mySubnet:

    az network vnet create --resource-group myResourceGroup \
        --location eastus --name myVnet \
        --address-prefix 192.168.0.0/16 \
        --subnet-name mySubnet \
        --subnet-prefix 192.168.1.0/24
    
  2. az network public-ip create を使用して、パブリック IP を作成します。Create a public IP by using az network public-ip create. 次の例では、DNS 名が mypublicdnsmyPublicIP という名前のパブリック IP を作成しますThe following example creates a public IP named myPublicIP with the DNS name of mypublicdns. (DNS 名は一意である必要があるため、一意の名前を入力してください)。(Because the DNS name must be unique, provide a unique name.)

    az network public-ip create --resource-group myResourceGroup \
        --location eastus --name myPublicIP --dns-name mypublicdns \
        --allocation-method static --idle-timeout 4
    
  3. az network nic create を使用して、NIC を作成します。Create the NIC by using az network nic create. 次の例では、mySubnet サブネットに接続される NIC myNic を作成します。The following example creates a NIC named myNic that's attached to the mySubnet subnet:

    az network nic create --resource-group myResourceGroup \
        --location eastus --name myNic \
        --vnet-name myVnet --subnet mySubnet \
        --public-ip-address myPublicIP
    

VM の作成Create a VM

az vm create を使用して VM を作成します。Create a VM by using az vm create.

次のコマンドを使用して、コピーしたマネージド ディスクを OS ディスク (--attach-os-disk) として使用するよう指定します。Specify the copied managed disk to use as the OS disk (--attach-os-disk), as follows:

az vm create --resource-group myResourceGroup \
    --name myCopiedVM --nics myNic \
    --size Standard_DS1_v2 --os-type Linux \
    --attach-os-disk myCopiedDisk

次のステップNext steps

共有イメージ ギャラリー を使用して VM イメージを管理する方法について学習します。To learn how to use a shared image gallery to manage VM images.