次の方法で共有


PowerShell を使用して VM (クラシック) または Cloud Services ロール インスタンスを別のサブネットに移動する

PowerShell を使用して、VM (クラシック) を同じ仮想ネットワーク (VNet) 内のあるサブネットから別のサブネットに移動できます。 ロール インスタンスは、PowerShell を使用するのではなく、CSCFG ファイルを編集することで移動できます。

この記事では、クラシック デプロイ モデルのみを使用してデプロイされた VM を移動する方法について説明します。

VM を別のサブネットに移動する理由 サブネットの移行は、古いサブネットが小さすぎて、そのサブネット内の既存の実行中の VM が原因で拡張できない場合に便利です。 その場合は、新しい大規模なサブネットを作成し、VM を新しいサブネットに移行できます。その後、移行が完了したら、古い空のサブネットを削除できます。

VM を別のサブネットに移動する方法

VM を移動するには、次の例をテンプレートとして使用して、Set-AzureSubnet PowerShell コマンドレットを実行します。 次の例では、TestVM を現在のサブネットから Subnet-2 に移動しています。 環境を反映するように、必ず例を編集してください。 Update-AzureVM コマンドレットをプロシージャの一部として実行すると、更新プロセスの一環として VM が再起動されることに注意してください。

Get-AzureVM –ServiceName TestVMCloud –Name TestVM `
| Set-AzureSubnet –SubnetNames Subnet-2 `
| Update-AzureVM

VM の静的内部プライベート IP を指定した場合は、VM を新しいサブネットに移動する前に、その設定をクリアする必要があります。 その場合は、次のコマンドを使用します。

Get-AzureVM -ServiceName TestVMCloud -Name TestVM `
| Remove-AzureStaticVNetIP `
| Update-AzureVM
Get-AzureVM -ServiceName TestVMCloud -Name TestVM `
| Set-AzureSubnet -SubnetNames Subnet-2 `
| Update-AzureVM

ロール インスタンスを別のサブネットに移動するには

ロール インスタンスを移動するには、CSCFG ファイルを編集します。 次の例では、仮想ネットワーク VNETName の "Role0" を現在のサブネットから Subnet-2 に移動しています。 ロール インスタンスは既にデプロイされているため、サブネット名 = Subnet-2 を変更するだけです。 環境を反映するように、必ず例を編集してください。

<NetworkConfiguration>
    <VirtualNetworkSite name="VNETName" />
    <AddressAssignments>
       <InstanceAddress roleName="Role0">
            <Subnets><Subnet name="Subnet-2" /></Subnets>
       </InstanceAddress>
    </AddressAssignments>
</NetworkConfiguration>