본문 바로가기

인공지능,프로그래밍/MS Azure

애저 문제 VM 을 이미지로 복사하기 저장 로컬 VHD 파일 이동 복사 방법

반응형

 

Azure에 여러 대의 새로운 가상 머신(VM)을 배포할 계획입니다. 각 VM은 동일한 운영 체제와 사용자 지정 소프트웨어 요구 사항을 갖습니다.
온프레미스 가상 환경에 참조 VM을 구성합니다. 그런 다음 VM을 일반화하여 이미지를 만듭니다.
새 Azure VM을 만들 때 이미지를 선택할 수 있도록 Azure에 이미지를 업로드해야 합니다.

어떤 PowerShell cmdlet을 사용해야 할까요?

 

 

Azure에서 참조 가상 머신(VM)을 기반으로 이미지를 업로드하고 이를 사용하여 새 VM을 생성하려면 다음과 같은 PowerShell cmdlet을 사용할 수 있습니다. 아래는 단계별로 필요한 주요 cmdlet과 설명입니다.

1. 참조 VM 일반화

참조 VM을 일반화하려면 Set-AzVM cmdlet을 사용하여 VM을 "Generalized" 상태로 설정합니다.

  • Cmdlet: Set-AzVM
  • 설명: 참조 VM을 일반화 상태로 설정합니다.
  • 예제:
  •  
    powershell
    Stop-AzVM -ResourceGroupName "MyResourceGroup" -Name "MyReferenceVM" -Force Set-AzVM -ResourceGroupName "MyResourceGroup" -Name "MyReferenceVM" -Generalized

2. 이미지 캡처

일반화된 VM에서 이미지를 생성하려면 New-AzImage cmdlet을 사용합니다.

  • Cmdlet: New-AzImage
  • 설명: 일반화된 VM에서 Azure 관리 이미지를 생성합니다.
  • 예제:
  •  
    powershell
    $imageConfig = New-AzImageConfig -Location "EastUS" $imageConfig = Set-AzImageOsDisk -Image $imageConfig -OsState Generalized -OsType Windows -BlobUri "https://mystorageaccount.blob.core.windows.net/vhds/MyReferenceVM.vhd" New-AzImage -ImageName "MyCustomImage" -ResourceGroupName "MyResourceGroup" -Image $imageConfig

3. VHD 파일 업로드 (옵션)

온프레미스에서 생성된 VHD 파일(Virtual Hard Disk의 약자로, 물리적 하드 디스크를 가상 디스크 형태로 캡슐화한 파일, 아래 별도 설명 참조) 을 Azure로 업로드하려면 Add-AzVhd cmdlet을 사용합니다.

4. 새 VM 생성

업로드한 이미지나 VHD를 기반으로 새 VM을 생성하려면 New-AzVM cmdlet을 사용합니다.

  • Cmdlet: New-AzVM
  • 설명: 사용자 지정 이미지를 기반으로 새 Azure 가상 머신을 생성합니다.
  • 예제:
  •  
    powershell
    $vmConfig = New-AzVMConfig -VMName "MyNewVM" -VMSize "Standard_DS1_v2" $vmConfig = Set-AzVMOperatingSystem -Windows -ComputerName "MyNewVM" -Credential (Get-Credential) $vmConfig = Set-AzVMSourceImage -Id "/subscriptions/{subscription-id}/resourceGroups/MyResourceGroup/providers/Microsoft.Compute/images/MyCustomImage" $vmConfig = Add-AzVMNetworkInterface -Id "/subscriptions/{subscription-id}/resourceGroups/MyResourceGroup/providers/Microsoft.Network/networkInterfaces/MyNIC" New-AzVM -ResourceGroupName "MyResourceGroup" -Location "EastUS" -VM $vmConfig

5. 이미지 관리

이미지 목록을 조회하거나 삭제하려면 다음 cmdlet을 사용할 수 있습니다.

이미지 목록 조회

  • Cmdlet: Get-AzImage
  • 설명: 현재 구독에서 사용 가능한 모든 이미지를 조회합니다.
  • 예제:
  •  
    powershell
    Get-AzImage

이미지 삭제

  • Cmdlet: Remove-AzImage
  • 설명: 특정 이미지를 삭제합니다.
  • 예제:
  •  
    powershell
    Remove-AzImage -ResourceGroupName "MyResourceGroup" -ImageName "MyCustomImage"

이 과정을 통해 참조 VM에서 이미지를 생성하고, 이를 기반으로 여러 대의 가상 머신을 손쉽게 배포할 수 있습니다.



Azure에 온프레미스 가상 머신의 VHD를 업로드하려면 Add-AzVhd PowerShell cmdlet을 사용해야 합니다. 이 명령어는 로컬에 저장된 VHD 파일을 Azure 관리 디스크 또는 Blob 스토리지로 업로드하는 데 사용됩니다.

Add-AzVhd Cmdlet 개요

설명

  • Add-AzVhd는 온프레미스에서 생성된 VHD 파일(아래 별도 설명 참조)을 Azure로 업로드합니다.
  • 업로드 대상은 Azure 관리 디스크 또는 Blob 스토리지입니다.
  • Hyper-V를 통해 동적으로 크기 조정된 VHD 파일을 고정 크기로 변환하거나 필요한 경우 크기를 조정할 수 있습니다.

사용법

1. 기본 VHD 업로드

로컬 VHD 파일을 Azure 관리 디스크로 업로드합니다.

 
powershell
Add-AzVhd -LocalFilePath "C:\VMs\MyReferenceVM.vhd" -ResourceGroupName "MyResourceGroup" -Location "EastUS" -DiskName "MyManagedDisk"

2. Blob 스토리지에 업로드

로컬 VHD 파일을 Azure Blob 스토리지에 업로드합니다.

 
powershell
Add-AzVhd -Destination "https://mystorageaccount.blob.core.windows.net/vhds/MyReferenceVM.vhd" -LocalFilePath "C:\VMs\MyReferenceVM.vhd"

3. SAS URI를 사용한 업로드

Blob 스토리지에 대한 SAS URI를 사용하여 업로드합니다.

필수 매개변수

매개변수설명
-LocalFilePath 로컬 VHD 파일의 경로를 지정합니다.
-ResourceGroupName 관리 디스크가 생성될 리소스 그룹 이름입니다.
-Location 관리 디스크가 생성될 Azure 지역입니다.
-DiskName 관리 디스크의 이름입니다.
-Destination Blob 스토리지의 URI를 지정합니다(SAS URI 포함 가능).
 

선택적 매개변수

매개변수설명
-DiskSku 디스크 SKU를 지정합니다(예: Premium_LRS, StandardSSD_LRS).
-DiskZone 디스크가 생성될 가용성 영역을 지정합니다(예: 1, 2, 3).
-DiskHyperVGeneration Hyper-V 세대(V1 또는 V2)를 지정합니다(OS 디스크에만 적용).
-NumberOfUploaderThreads 업로드에 사용할 스레드 수를 지정하여 속도를 조정합니다.
-Overwrite 기존 Blob 또는 디스크를 덮어씁니다.
-DataAccessAuthMode 데이터 액세스 인증 모드를 설정합니다(예: AzureActiveDirectory).
 

예제

관리 디스크로 업로드

 
powershell
Add-AzVhd -LocalFilePath "C:\VMs\MyReferenceVM.vhd" -ResourceGroupName "MyResourceGroup" -Location "EastUS" -DiskName "MyManagedDisk"

Blob 스토리지로 업로드

 
powershell
Add-AzVhd -Destination "https://mystorageaccount.blob.core.windows.net/vhds/MyReferenceVM.vhd" -LocalFilePath "C:\VMs\MyReferenceVM.vhd"

SAS URI를 사용한 Blob 업로드

고급 구성으로 관리 디스크 생성 및 업로드

 
powershell
Add-AzVhd -LocalFilePath "C:\VMs\MyReferenceVM.vhd" -ResourceGroupName "MyResourceGroup" -Location "EastUS" -DiskName "CustomDisk" -DiskSku Premium_LRS -DiskZone 1

참고 사항

  1. Hyper-V가 활성화되어 있어야 동적으로 크기 조정된 VHD 파일을 고정 크기로 변환할 수 있습니다27.
  2. 50GiB 이상의 VHD 파일은 더 빠른 업로드를 위해 AzCopy를 사용하는 것이 권장됩니다111.
  3. RBAC 권한이 필요할 경우 적절한 역할을 할당해야 합니다15.

이 cmdlet은 온프레미스 환경에서 준비된 VHD 파일을 Azure로 손쉽게 업로드하여 관리 디스크 또는 Blob 스토리지에서 사용할 수 있도록 지원합니다.



로컬 VHD 파일은 Virtual Hard Disk의 약자로, 물리적 하드 디스크를 가상 디스크 형태로 캡슐화한 파일입니다. 이는 실제 하드 디스크처럼 작동하며, 가상 머신에서 사용하거나 백업 및 복구 목적으로 활용됩니다. 아래는 로컬 VHD 파일의 주요 특징과 의미를 정리한 내용입니다:

로컬 VHD 파일의 의미

  1. 가상 디스크 파일:
    • VHD는 물리적 하드 디스크를 대신하여 작동하는 파일 형식으로, .vhd 확장자를 가집니다124.
    • 파일 형태로 저장되므로 복사, 이동, 삭제가 용이하며, 필요할 때 드라이브로 마운트하여 사용할 수 있습니다12.
  2. 백업 및 복구 용도:
    • VHD는 운영 체제나 데이터의 백업 및 복구에 자주 사용됩니다36.
    • Windows 자체 백업 프로그램을 통해 생성된 VHD 파일로 복구 작업을 수행할 수 있습니다3.
  3. 가상 머신에서 사용:
    • VHD는 가상 머신에서 하드 디스크로 간주되며, 여러 운영 체제를 테스트하거나 소프트웨어를 개발하는 데 사용됩니다26.
    • Hyper-V 및 VMware 같은 가상화 플랫폼에서 활용됩니다610.
  4. 유연한 관리:
    • VHD는 동적 확장(Dynamically Expanding), 고정 크기(Fixed Size), 차등 디스크(Differencing Disk)와 같은 다양한 형식을 지원합니다28.
    • 필요에 따라 크기를 조정하거나 특정 파일 시스템(NTFS, FAT 등)을 호스팅할 수 있습니다4.
  5. 파일 시스템 통합:
    • VHD는 물리적 디스크와 동일하게 파티션과 볼륨을 포함하며, 운영 체제에서 네이티브 파일 시스템처럼 작동합니다4.

사용 사례

  1. 운영 체제 설치 및 테스트:
    • Hyper-V 또는 VMware를 통해 가상 컴퓨터를 생성하고 운영 체제를 설치하는 데 사용됩니다610.
  2. 데이터 백업:
    • 중요한 데이터를 백업하고 복구하는 용도로 활용됩니다3.
  3. 다중 운영 체제 환경:
    • 개발자가 여러 운영 체제를 테스트하기 위해 사용하며, 다른 하드 디스크를 설치하지 않고도 다양한 환경을 구현할 수 있습니다2.
  4. 클라우드 업로드:
    • 로컬에서 생성된 VHD 파일을 Azure 또는 다른 클라우드 플랫폼으로 업로드하여 VM 이미지를 배포할 수 있습니다13.

VHD의 장점

  • 유연성: 물리적 디스크와 동일하게 작동하면서도 파일 형태로 관리 가능.
  • 이동성: 쉽게 복사하거나 이동 가능.
  • 호환성: 다양한 플랫폼(Windows, Hyper-V, VMware 등)에서 사용 가능.
  • 백업 및 복구 기능: 데이터를 안전하게 저장하고 필요 시 복구 가능.

로컬 VHD 파일은 물리적 하드 드라이브의 대안으로 사용되며, 가상화 및 데이터 관리에 있어 매우 유용한 도구입니다. Azure와 같은 클라우드 환경에서도 이를 활용하여 VM 이미지를 업로드하고 배포할 수 있습니다13.

반응형