Azure Stack Hub에서 스토리지 계정 백업

이 문서에서는 Azure Stack Hub의 Azure Storage 계정 내에서 스토리지 계정의 보호 및 복구를 살펴봅니다.

솔루션의 요소

이 섹션에서는 솔루션의 전체 구조와 주요 부분을 살펴봅합니다.

Azure Stack Hub 스토리지 백업의 전체 구조를 보여 주는 다이어그램.

애플리케이션 레이어

여러 위치에 개체를 쓰는 여러 PUT Blob 또는 Put Block 작업을 실행하여 별도의 Azure Stack Hub 배율 단위의 스토리지 계정 간에 데이터를 복제할 수 있습니다. 또는 애플리케이션은 Blob 복사 작업을 실행하여 기본 계정에 배치 작업이 완료된 후 별도의 배율 단위로 호스트되는 스토리지 계정에 Blob을 복사할 수 있습니다.

예약된 복사 작업

AzCopy 도구를 활용하면 로컬 파일 시스템, Azure Cloud Storage, Azure Stack Hub 스토리지, s3에서 데이터를 효율적으로 복사할 수 있습니다. 현재는 AzCopy를 사용하여 두 Azure Stack Hub 스토리지 계정 간에 데이터를 복사할 수 없습니다. 원본 Azure Stack Hub Storage 계정에서 대상 Azure Stack Hub Storage 계정으로 개체를 복사하려면 중간 로컬 파일 시스템이 필요합니다.

자세한 내용은 Azure Stack Hub Storage의 데이터 전송 도구 사용 문서에서 AzCopy를 참조하세요.

Azure Stack Hub(원본)

백업하려는 스토리지 계정 데이터의 원본입니다.

원본 스토리지 계정 URL 및 SAS 토큰이 필요합니다. 스토리지 계정을 사용하는 방법에 대한 지침은 Azure Stack Hub 스토리지 개발 도구 시작을 참조하세요.

Azure Stack Hub(대상)

백업하려는 계정 데이터를 저장하는 대상입니다. 대상 Azure Stack Hub 인스턴스는 대상 Azure Stack Hub와 다른 위치에 있어야 합니다. 그리고 원본은 대상에 연결할 수 있어야 합니다.

원본 스토리지 계정 URL 및 SAS 토큰이 필요합니다. 스토리지 계정을 사용하는 방법에 대한 지침은 Azure Stack Hub 스토리지 개발 도구 시작을 참조하세요.

중간 로컬 파일 시스템

AzCopy를 실행하고 원본에서 복사한 다음 대상 Azure Stack Hub에 쓸 때 데이터를 저장할 위치가 필요합니다. 원본 Azure Stack Hub의 중간 서버입니다.

Linux 또는 Windows 서버를 중간 서버로 만들 수 있습니다. 서버에는 원본 Storage 계정 컨테이너에 모든 개체를 저장할 충분한 공간이 있어야 합니다.

Windows Server를 설정한 후에는 Azure Stack Hub PowerShellAzure Stack Hub Tools를 설치해야 합니다.

스토리지 계정에 대한 백업 설정

  1. 원본 및 대상 스토리지 계정에 대한 BLOB 엔드포인트를 검색합니다.

    원본 및 대상 스토리지 계정에 대한 기본 Blob 엔드포인트를 보여 주는 스크린샷.

  2. 원본 및 대상 스토리지 계정에 대한 SAS 토큰을 만들고 기록합니다.

    Azure Stack Hub Storage Backup

  3. 중간 서버에 AzCopy 를 설치하고 Azure Stack Hub Storage 계정을 고려하도록 API 버전을 설정합니다.

    • Windows 서버의 경우:
    set AZCOPY_DEFAULT_SERVICE_API_VERSION=2017-11-09 PowerShell use: $env:AZCOPY_DEFAULT_SERVICE_API_VERSION="2017-11-09"
    
    • Linux(Ubuntu) 서버:
    export AZCOPY_DEFAULT_SERVICE_API_VERSION=2017-11-09
    
  4. 중간 서버에서 스크립트를 만듭니다. 스토리지 계정, SAS 키로컬 디렉터리 경로로 이 명령을 업데이트합니다. 원본 스토리지 계정에서 데이터를 증분 방식으로 복사하는 스크립트를 실행합니다.

    azcopy sync "https:/<storagaccount>/<container>?<SAS Key>" "C:\\myFolder" --recursive=true --delete-destination=true
    
  5. 스토리지 계정, SAS 키로컬 디렉터리 경로를 입력합니다. 이를 사용하여 대상 스토리지 계정에 증분 방식으로 데이터를 복사합니다.

    azcopy sync "C:\\myFolder" "https:// <storagaccount>/<container>?<SAS Key>" --recursive=true --delete-destination=true
    
  6. Cron 또는 Windows 작업 스케줄러를 사용하여 원본 Azure Stack Hub 스토리지 계정에서 중간 서버의 로컬 스토리지로의 복사를 예약합니다. 그런 다음 중간 서버의 로컬 스토리지에서 대상 Azure Stack Hub 스토리지 계정으로 복사합니다.

    이 솔루션을 사용하여 달성할 수 있는 RPO는/MO 매개 변수 값과 원본 계정과 중간 서버 및 중간 서버와 대상 계정 사이의 네트워크 대역폭에 따라 결정됩니다.

    • Linux(Ubuntu) 서버:
    schtasks /CREATE /SC minute /MO 5 /TN "AzCopy Script" /TR C:\\&lt;script name>.bat
    
    매개 변수 참고
    /sc 분 일정을 사용합니다.
    /mo XX분의 간격입니다.
    /TN 작업 이름입니다.
    /tr 파일의 경로입니다 script.bat .
    • Windows 서버의 경우:

    Windows 작업 일정 사용에 대한 자세한 내용은 개발자용 작업 스케줄러를 참조하세요.

재해 상황에서 스토리지 계정 사용

각 Azure Stack Hub Storage 계정에는 Azure Stack Hub 지역 자체의 이름(예: https://krsource.blob.east.asicdc.com/)에서 파생된 고유한 DNS 이름이 있습니다. 이 DNS 이름을 읽고 쓰는 애플리케이션은 재해 도중 대상 계정(예: https://krtarget.blob.west.asicdc.com/)을 사용해야 하는 경우 스토리지 계정 DNS 이름 변경이 가능해야 합니다.

재해가 개체의 재배치를 고려하여 선언된 후 애플리케이션 연결 문자열을 수정하거나, 원본 및 대상 스토리지 계정을 프런트 엔드하는 부하 분산 장치 앞에서 CNAME 레코드를 사용하는 경우 관리자가 대상을 선언할 수 있는 수동 장애 조치(failover) 알고리즘으로 부하 분산 장치를 구성할 수 있습니다.

AAD 또는 AD FS가 아닌 애플리케이션에서 SAS를 사용하는 경우 위의 메서드가 작동하지 않으며 대상 스토리지 계정 URL 및 대상 스토리지 계정에 대해 생성된 SAS 키로 애플리케이션 연결 문자열을 업데이트해야 합니다.

다음 단계

Azure Stack Hub 스토리지 개발 도구 시작