다음을 통해 공유


PowerShell을 사용하여 VM(클래식) 또는 Cloud Services 역할 인스턴스를 다른 서브넷으로 이동

PowerShell을 사용하여 동일한 VNet(가상 네트워크)의 한 서브넷에서 다른 서브넷으로 VM(클래식)을 이동할 수 있습니다. 역할 인스턴스는 PowerShell을 사용하는 대신 CSCFG 파일을 편집하여 이동할 수 있습니다.

비고

이 문서에서는 클래식 배포 모델을 통해서만 배포된 VM을 이동하는 방법을 설명합니다.

VM을 다른 서브넷으로 이동하는 이유는 무엇인가요? 서브넷 마이그레이션은 이전 서브넷이 너무 작고 해당 서브넷에서 실행 중인 기존 VM으로 인해 확장할 수 없는 경우에 유용합니다. 이 경우 더 큰 새 서브넷을 만들고 VM을 새 서브넷으로 마이그레이션한 다음 마이그레이션이 완료되면 이전의 빈 서브넷을 삭제할 수 있습니다.

VM을 다른 서브넷으로 이동하는 방법

VM을 이동하려면 아래 예제를 템플릿으로 사용하여 Set-AzureSubnet PowerShell cmdlet을 실행합니다. 아래 예제에서는 TestVM을 현재 서브넷에서 서브넷-2로 이동합니다. 환경을 반영하도록 예제를 편집해야 합니다. 절차의 일부로 Update-AzureVM cmdlet을 실행할 때마다 업데이트 프로세스의 일부로 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>