다음을 통해 공유


Azure Disk Encryption에서 호스트의 암호화로 마이그레이션

중요합니다

Virtual Machines 및 Virtual Machine Scale Sets용 Azure Disk Encryption은 2028년 9월 15일에 사용 중지됩니다. 새 고객은 모든 새 VM 에 대해 호스트에서 암호화 를 사용해야 합니다. 기존 고객은 서비스 중단을 방지하기 위해 사용 중지 날짜 이전에 현재 ADE 지원 VM을 호스트의 암호화로 마이그레이션할 계획입니다. Azure Disk Encryption에서 호스트의 암호화로 마이그레이션을 참조하세요.

이 문서에서는 ADE(Azure Disk Encryption)에서 호스트의 암호화로 가상 머신을 마이그레이션하기 위한 단계별 지침을 제공합니다. 마이그레이션 프로세스에서는 현재 위치 변환이 지원되지 않으므로 새 디스크 및 VM을 만들어야 합니다.

마이그레이션 개요

ADE(Azure Disk Encryption)는 BitLocker(Windows) 또는 dm-crypt(Linux)를 사용하여 VM 내의 데이터를 암호화하고 호스트의 암호화는 VM CPU 리소스를 사용하지 않고 VM 호스트 수준에서 데이터를 암호화합니다. 호스트의 암호화는 임시 디스크, 캐시 및 컴퓨팅과 스토리지 간의 데이터 흐름을 비롯한 모든 VM 데이터에 대한 엔드투엔드 암호화를 제공하여 Azure의 기본 SSE(서버 쪽 암호화)를 향상시킵니다.

자세한 내용은 호스트에서 암호화를 사용하여 관리 디스크 암호화 옵션엔드 투 엔드 암호화 사용 개요를 참조하세요.

마이그레이션 제한 사항 및 고려 사항

마이그레이션 프로세스를 시작하기 전에 마이그레이션 전략에 영향을 주는 다음과 같은 중요한 제한 사항 및 고려 사항에 유의하세요.

  • 현재 위치 마이그레이션 없음: 호스트에서 ADE 암호화 디스크를 암호화로 직접 변환할 수 없습니다. 마이그레이션하려면 새 디스크 및 VM을 만들어야 합니다.

  • Linux OS 디스크 제한 사항: Linux OS 디스크에서 ADE를 사용하지 않도록 설정하는 것은 지원되지 않습니다. ADE 암호화 OS 디스크가 있는 Linux VM의 경우 새 OS 디스크를 사용하여 새 VM을 만들어야 합니다.

  • Windows ADE 암호화 패턴: Windows VM에서 Azure Disk Encryption은 OS 디스크만 암호화하거나 모든 디스크(OS + 데이터 디스크)만 암호화할 수 있습니다. Windows VM에서만 데이터 디스크를 암호화할 수 없습니다.

  • UDE 플래그 지속성: Azure Disk Encryption으로 암호화된 디스크에는 암호 해독 후에도 지속되는 UDE(Unified Data Encryption) 플래그가 있습니다. 복사 옵션을 사용하는 스냅샷 및 디스크 복사본은 모두 이 UDE 플래그를 유지합니다. 마이그레이션을 수행하려면 Upload 메서드를 사용하여 새 관리 디스크를 만들고 VHD Blob 데이터를 복사해야 합니다. 그러면 원본 디스크의 메타데이터 없이 새 디스크 개체가 만들어집니다.

  • 가동 중지 시간 필요: 마이그레이션 프로세스에서는 디스크 작업 및 VM 재현을 위해 VM 가동 중지 시간이 필요합니다.

  • 도메인에 가입된 VM: VM이 Active Directory 도메인의 일부인 경우 추가 단계가 필요합니다.

    • 삭제하기 전에 도메인에서 원래 VM을 제거해야 합니다.
    • 새 VM을 만든 후 도메인에 다시 가입해야 합니다.
    • Linux VM의 경우 Azure AD 확장을 사용하여 도메인 조인을 수행할 수 있습니다.

    자세한 내용은 Microsoft Entra Domain Services란?

필수 조건

마이그레이션을 시작하기 전에 다음을 수행합니다.

  1. 데이터 백업: 마이그레이션 프로세스를 시작하기 전에 모든 중요한 데이터의 백업을 만듭니다.

  2. 프로세스 테스트: 가능하면 먼저 비프로덕션 VM에서 마이그레이션 프로세스를 테스트합니다.

  3. 암호화 리소스 준비: VM 크기가 호스트에서 암호화를 지원하는지 확인합니다. 대부분의 최신 VM 크기는 이 기능을 지원합니다. VM 크기 요구 사항에 대한 자세한 내용은 호스트에서 암호화를 사용하여 엔드투엔드 암호화 사용을 참조하세요.

  4. 문서 구성: 네트워크 설정, 확장 및 연결된 리소스를 포함하여 현재 VM 구성을 기록합니다.

마이그레이션 단계

다음 마이그레이션 단계는 대부분의 시나리오에서 작동하며 각 운영 체제에 대해 특정 차이점이 설명됩니다.

중요합니다

암호화된 OS 디스크가 있는 Linux VM은 현재 위치에서 암호를 해독할 수 없습니다. 이러한 VM의 경우 새 OS 디스크를 사용하여 새 VM을 만들고 데이터를 마이그레이션해야 합니다. 아래 일반 프로세스를 검토한 후 암호화된 OS 디스크를 사용하여 Linux VM 마이그레이션 섹션을 참조하세요.

Azure Disk Encryption 사용 안 함

첫 번째 단계는 가능한 경우 기존 Azure Disk Encryption을 사용하지 않도록 설정하는 것입니다.

ADE 사용 안 함 명령을 실행한 후 Azure Portal의 VM 암호화 상태가 즉시 "SSE + PMK"로 변경됩니다. 그러나 OS 수준의 실제 암호 해독 프로세스는 시간이 걸리며 암호화된 데이터의 양에 따라 달라집니다. 다음 단계로 진행하기 전에 OS 수준 암호 해독이 완료되었는지 확인해야 합니다.

Windows VM의 경우:

  • 관리자 권한으로 명령 프롬프트를 열고 다음을 실행합니다. manage-bde -status
  • 모든 볼륨에 "완전히 암호 해독됨" 상태가 표시되는지 확인합니다.
  • 암호 해독 비율은 암호화된 모든 볼륨에 대해 100개의% 표시해야 합니다.

Linux VM의 경우(데이터 디스크에만 해당):

  • sudo cryptsetup status /dev/mapper/<device-name>를 실행합니다.
  • 암호화된 디바이스가 더 이상 활성화되지 않는지 확인
  • 확인: lsblk 암호화된 매핑이 남아 있지 않은지 확인합니다.

데이터 무결성을 보장하기 위해 디스크 마이그레이션을 계속하기 전에 전체 암호 해독을 기다립니다.

새 관리 디스크 만들기

ADE 암호화 메타데이터를 전달하지 않는 새 디스크를 만듭니다. 이 프로세스는 Linux OS 디스크에 대한 몇 가지 특정 고려 사항과 함께 Windows 및 Linux VM 모두에서 작동합니다.

# Get the source disk ID
SOURCE_DISK_ID=$(az disk show --resource-group "MyResourceGroup" --name "MySourceDisk" --query "id" -o tsv)

# Create a new disk from the source disk
az disk create --resource-group "MyResourceGroup" --name "MyTargetDisk" 
  --source "$SOURCE_DISK_ID" --upload-type "Copy"

# For OS disks, specify --os-type "Linux" or --os-type "Windows"

비고

이 메서드는 정리 마이그레이션에 필수적인 Azure Disk Encryption 메타데이터(UDE 플래그) 없이 새 디스크를 만듭니다.

중요: Azure에서 관리 디스크를 복사할 때 디스크 크기를 보고할 때 Azure에서 생략하는 바닥글을 고려하여 디스크 크기에 512바이트를 추가합니다.

암호화를 사용하여 새 VM 만들기

선택한 암호화 방법으로 새로 만든 디스크를 사용하여 새 VM을 만듭니다.

보안 요구 사항에 따라 몇 가지 암호화 옵션 중에서 선택할 수 있습니다. 이 문서에서는 가장 일반적인 마이그레이션 경로인 호스트에서 암호화를 사용하여 새 VM을 만드는 단계를 제공합니다. 다른 암호화 옵션은 관리 디스크 암호화 옵션 개요에서 다룹니다.

호스트에서 암호화를 사용하여 새 VM 만들기

호스트의 암호화는 Azure Disk Encryption의 적용 범위와 가장 가까운 값을 제공하며 이 섹션에서 설명합니다.

OS 디스크의 경우:

# For Windows OS disks
az vm create 
  --resource-group "MyResourceGroup" 
  --name "MyVM-New" 
  --os-type "Windows" 
  --attach-os-disk "MyTargetDisk" 
  --encryption-at-host true

# For Linux OS disks
# az vm create 
#   --resource-group "MyResourceGroup" 
#   --name "MyVM-New" 
#   --os-type "Linux" 
#   --attach-os-disk "MyTargetDisk" 
#   --encryption-at-host true

데이터 디스크의 경우:

# Enable encryption at host on the VM
az vm update 
  --resource-group "MyResourceGroup" 
  --name "MyVM-New" 
  --encryption-at-host true

# Attach the newly created data disk
az vm disk attach 
  --resource-group "MyResourceGroup" 
  --vm-name "MyVM-New" 
  --name "MyTargetDisk"

새 디스크 확인 및 구성

호스트에서 암호화를 사용하여 새 VM을 만든 후에는 운영 체제에 맞게 디스크를 올바르게 확인하고 구성해야 합니다.

Windows VM의 경우:

  • 디스크 문자가 올바르게 할당되었는지 확인
  • 애플리케이션이 디스크에 올바르게 액세스할 수 있는지 확인
  • 특정 디스크 ID를 참조하는 애플리케이션 또는 스크립트 업데이트

Linux VM의 경우:

  • 새 디스크 UUID로 업데이트 /etc/fstab
  • 데이터 디스크를 올바른 탑재 지점에 탑재
# Get UUIDs of all disks
sudo blkid

# Mount all disks defined in fstab
sudo mount -a

Windows와 Linux 모두 애플리케이션 또는 워크로드와 관련된 추가 구성 단계가 필요할 수 있습니다.

암호화 및 정리 확인

호스트의 암호화가 Windows 및 Linux VM 모두에서 제대로 구성되었는지 확인합니다.

# Check encryption at host status
az vm show --resource-group "MyResourceGroup" --name "MyVM-New" --query "securityProfile.encryptionAtHost"

호스트에서 암호화가 제대로 작동하는지 확인한 후:

  1. VM 기능을 테스트하여 애플리케이션이 올바르게 작동하는지 확인합니다.
  2. 데이터에 액세스할 수 있고 그대로 유지되는지 확인
  3. 마이그레이션에 만족하면 원래 리소스를 삭제합니다.
# Delete the original VM
az vm delete --resource-group "MyResourceGroup" --name "MyVM-Original" --yes

# Delete the original disk
az disk delete --resource-group "MyResourceGroup" --name "MySourceDisk" --yes

암호화된 OS 디스크를 사용하여 Linux VM 마이그레이션

Linux OS 디스크에서 암호화를 사용하지 않도록 설정할 수 없으므로 프로세스는 Windows와 다릅니다.

  1. 호스트에서 암호화를 사용하도록 설정된 새 VM 만들기

    az vm create \
      --resource-group "MyResourceGroup" \
      --name "MyVM-New" \
      --image "Ubuntu2204" \
      --encryption-at-host true \
      --admin-username "azureuser" \
      --generate-ssh-keys
    
  2. 데이터 마이그레이션 옵션의 경우:

    • 애플리케이션 데이터의 경우: SCP, rsync 또는 기타 파일 전송 방법을 사용하여 데이터 복사
    • 구성: 중요한 구성 파일 및 설정 복제
    • 복잡한 애플리케이션의 경우: 애플리케이션에 적합한 백업/복원 프로시저 사용
    # Example of using SCP to copy files from source to new VM
    az vm run-command invoke -g MyResourceGroup -n MyVM-Original --command-id RunShellScript \
      --scripts "scp -r /path/to/data azureuser@new-vm-ip:/path/to/destination"
    

새 VM을 만든 후:

  1. 원래 환경과 일치하도록 새 VM 구성

    • 동일한 네트워크 구성 설정
    • 동일한 애플리케이션 및 서비스 설치
    • 동일한 보안 설정 적용
  2. 원래 VM을 서비스 해제하기 전에 철저히 테스트

이 방법은 Windows 및 Linux VM 모두에서 작동하지만, 현재 위치에서 암호를 해독할 수 없는 암호화된 OS 디스크가 있는 Linux VM에 특히 중요합니다.

데이터 마이그레이션에 대한 지침은 AZURE에 VHD 업로드SCP를 사용하여 Linux VM에 파일 복사를 참조하세요.

도메인에 가입된 VM 고려 사항

VM이 Active Directory 도메인의 멤버인 경우 마이그레이션 프로세스 중에 추가 단계가 필요합니다.

미리 배포 도메인 단계

  1. 문서 도메인 멤버 자격: 현재 도메인, OU(조직 구성 단위) 및 특수 그룹 멤버 자격 기록
  2. 참고 컴퓨터 계정: Active Directory의 컴퓨터 계정을 관리해야 합니다.
  3. 도메인별 구성 백업: 도메인별 설정, 그룹 정책 또는 인증서 저장

도메인 제거 프로세스

  1. 도메인에서 제거: 원래 VM을 삭제하기 전에 다음 방법 중 하나를 사용하여 도메인에서 제거합니다.

    • Windows에서 PowerShell cmdlet 사용 Remove-Computer
    • 시스템 속성 대화 상자를 사용하여 작업 그룹으로 변경
    • Active Directory 사용자 및 컴퓨터에서 컴퓨터 계정을 수동으로 삭제
  2. Active Directory 정리: 분리된 컴퓨터 계정 또는 DNS 항목 제거

마이그레이션 후 도메인 다시 가입

  1. 도메인에 새 VM 조인: 호스트에서 암호화를 사용하여 새 VM을 만든 후:

    • Windows: PowerShell cmdlet 또는 시스템 속성 사용 Add-Computer
    • Linux의 경우: Azure AD 도메인 조인 확장 또는 수동 구성 사용
  2. 도메인 설정 복원: 도메인별 구성, 그룹 정책 또는 인증서 다시 적용

  3. 도메인 기능 확인: 도메인 인증 테스트, 그룹 정책 애플리케이션 및 네트워크 리소스 액세스

Linux 도메인 조인

Linux VM의 경우 Azure AD Domain Services VM 확장을 사용할 수 있습니다.

az vm extension set \
    --resource-group "MyResourceGroup" \
    --vm-name "MyLinuxVM-New" \
    --name "AADSSHLoginForLinux" \
    --publisher "Microsoft.Azure.ActiveDirectory"

자세한 내용은 Microsoft Entra Domain Services란?

중요한 도메인 고려 사항

  • 새 VM에는 일부 애플리케이션에 영향을 줄 수 있는 다른 컴퓨터 SID가 있습니다.
  • Kerberos 티켓 및 캐시된 자격 증명을 새로 고쳐야 합니다.
  • 일부 도메인 통합 애플리케이션에는 재구성이 필요할 수 있습니다.
  • 마이그레이션 중에 도메인 서비스의 잠재적인 일시적인 손실 계획

마이그레이션 후 확인

마이그레이션을 완료한 후 호스트의 암호화가 올바르게 작동하는지 확인합니다.

  1. 호스트 상태에서 암호화 확인: 호스트에서 암호화가 사용하도록 설정되어 있는지 확인합니다.

    az vm show --resource-group "MyResourceGroup" --name "MyVM-New" --query "securityProfile.encryptionAtHost"
    
  2. VM 기능 테스트: 애플리케이션 및 서비스가 제대로 작동하는지 확인합니다.

  3. 디스크 암호화 확인: 디스크가 제대로 암호화되었는지 확인합니다.

    Get-AzDisk -ResourceGroupName "MyResourceGroup" -DiskName "MyVM-OS-New" | Select-Object Name, DiskState
    
  4. 성능 모니터링: 마이그레이션 전후의 성능을 비교하여 예상되는 개선 사항을 확인합니다.

암호화 확인에 대한 자세한 내용은 호스트에서 암호화를 사용하여 엔드 투 엔드 암호화 사용을 참조하세요.

Cleanup

마이그레이션 및 확인에 성공한 후:

  1. 이전 VM 삭제: 원래 ADE 암호화 VM 제거

  2. 이전 디스크 삭제: 원래 암호화된 디스크 제거

  3. Key Vault 액세스 정책 업데이트: 다른 디스크 암호화 솔루션은 표준 Key Vault 권한 부여 메커니즘을 사용합니다. Azure Disk Encryption에 대한 Key Vault가 더 이상 필요하지 않은 경우 해당 액세스 정책을 업데이트하여 특수 디스크 암호화 설정을 사용하지 않도록 설정합니다.

    az keyvault update --name "YourKeyVaultName" --resource-group "YourResourceGroup" --enabled-for-disk-encryption false
    

  1. 리소스 정리: 마이그레이션 중에 만든 임시 리소스 제거
  2. 설명서 업데이트: 호스트에서 암호화로 마이그레이션을 반영하도록 인프라 설명서 업데이트

일반적인 문제 및 해결 방법

VM 크기는 호스트에서 암호화를 지원하지 않습니다.

해결 방법: 지원되는 VM 크기 목록을 확인하고 필요한 경우 VM 크기를 조정합니다.

마이그레이션 후 VM을 시작하지 못함

해결 방법: 모든 디스크가 제대로 연결되어 있고 OS 디스크가 부팅 디스크로 설정되어 있는지 확인합니다.

호스트에서 암호화를 사용할 수 없음

해결 방법: VM이 매개 변수를 사용하여 --encryption-at-host true 만들어졌으며 구독에서 이 기능을 지원하는지 확인합니다.

성능 문제가 지속됩니다.

해결 방법: 호스트에서 암호화가 제대로 사용하도록 설정되어 있고 VM 크기가 예상 성능을 지원하는지 확인합니다.

다음 단계