Dela via


Flytta en virtuell dator (klassisk) eller cloud services-rollinstans till ett annat undernät med hjälp av PowerShell

Du kan använda PowerShell för att flytta dina virtuella datorer (klassisk) från ett undernät till ett annat i samma virtuella nätverk (VNet). Rollinstanser kan flyttas genom att redigera CSCFG-filen i stället för att använda PowerShell.

Anmärkning

Den här artikeln beskriver hur du flyttar virtuella datorer som distribueras via den klassiska distributionsmodellen.

Varför flytta virtuella datorer till ett annat undernät? Migrering av undernät är användbart när det äldre undernätet är för litet och inte kan expanderas på grund av befintliga virtuella datorer som körs i det undernätet. I så fall kan du skapa ett nytt större undernät och migrera de virtuella datorerna till det nya undernätet. När migreringen är klar kan du ta bort det gamla tomma undernätet.

Så här flyttar du en virtuell dator till ett annat undernät

Om du vill flytta en virtuell dator kör du Set-AzureSubnet PowerShell-cmdleten med exemplet nedan som mall. I exemplet nedan flyttar vi TestVM från dess nuvarande undernät till Undernät-2. Se till att redigera exemplet så att det återspeglar din miljö. Observera att när du kör cmdleten Update-AzureVM som en del av en procedur startar den om den virtuella datorn som en del av uppdateringsprocessen.

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

Om du har angett en statisk intern privat IP-adress för den virtuella datorn måste du rensa den inställningen innan du kan flytta den virtuella datorn till ett nytt undernät. I så fall använder du följande:

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

Flytta en rollinstans till ett annat undernät

Om du vill flytta en rollinstans redigerar du CSCFG-filen. I exemplet nedan flyttar vi "Role0" i det virtuella nätverket VNETName från det nuvarande undernätet till Subnet-2. Eftersom rollinstansen redan har distribuerats ändrar du bara undernätets namn = Undernät-2. Se till att redigera exemplet så att det återspeglar din miljö.

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