Azure CLI는 Azure 리소스를 관리하는 Azure의 명령줄 환경을 제공합니다. Azure 리소스를 사용하기 위해 사용자 지정 자동화를 빌드하는 데 좋은 도구입니다. 이 문서에서는 Azure CLI를 사용하여 Azure Backup 에서 만든 복원 지점에서 전체 파일 공유 또는 특정 파일을 복원하는 방법을 설명합니다. Azure Portal, Azure PowerShell, REST API를 사용하여 Azure Files를 복원할 수도 있습니다.
이 문서의 끝부분에서는 Azure CLI를 사용하여 다음 작업을 수행하는 방법을 알아봅니다.
- 백업된 Azure Files의 복원 지점을 봅니다.
- 전체 Azure Files를 복원합니다.
- 개별 파일 또는 폴더를 복원합니다.
비고
- Azure Files 복원은 PowerShell 또는 CLI를 사용하는 경우에만 동일한 구독 내에서 지원됩니다.
- 이제 Azure Backup은 Azure CLI를 사용하여 여러 파일 또는 폴더를 원래 또는 대체 위치로 복원하도록 지원합니다. 자세한 내용은 이 문서의 원본 또는 대체 위치 섹션으로 여러 파일 또는 폴더 복원 섹션을 참조하세요.
필수 조건
이 문서에서는 Azure Backup에서 백업한 Azure Files가 이미 있다고 가정합니다. 없는 경우 CLI를 사용하여 Azure Files 백업을 참조하여 파일 공유에 대한 백업을 구성합니다. 이 문서에서는 다음 리소스를 사용합니다.
파일 공유 | 스토리지 계정 | 지역 | 세부 정보 |
---|---|---|---|
azurefiles |
afsaccount | 미국 동부 | Azure Backup을 사용하여 백업된 원본 |
azurefiles1 | afaccount1 | 미국 동부 | 대체 위치 복구에 사용되는 대상 원본 |
파일 공유에 유사한 구조를 사용하여 이 문서에 설명된 다양한 유형의 복원을 사용해 볼 수 있습니다.
Azure CLI에 대한 환경 준비
Bash 환경을 Azure Cloud Shell에서 사용합니다. 자세한 내용은 Azure Cloud Shell 시작을 참조하세요.
CLI 참조 명령을 로컬에서 실행하려면 Azure CLI를 설치하십시오. Windows 또는 macOS에서 실행하는 경우 Docker 컨테이너에서 Azure CLI를 실행하는 것이 좋습니다. 자세한 내용은 Docker 컨테이너에서 Azure CLI를 실행하는 방법을 참조하세요.
로컬 설치를 사용하는 경우 az login 명령을 사용하여 Azure CLI에 로그인합니다. 인증 프로세스를 완료하려면 터미널에 표시되는 단계를 수행합니다. 다른 로그인 옵션은 Azure CLI를 사용하여 Azure에 인증을 참조하세요.
메시지가 표시되면 처음 사용할 때 Azure CLI 확장을 설치합니다. 확장에 대한 자세한 내용은 Azure CLI로 확장 사용 및 관리를 참조하세요.
az version을 실행하여 설치된 버전과 관련 종속 라이브러리를 확인합니다. 최신 버전으로 업그레이드하려면 az upgrade를 실행합니다.
- 이 자습서에는 Azure CLI 버전 2.0.18 이상이 필요합니다. Azure Cloud Shell을 사용하는 경우 최신 버전이 이미 설치되어 있습니다.
Azure Files의 복구 지점 가져오기
cmdlet을 az backup recoverypoint list
사용하여 백업된 파일 공유에 대한 모든 복구 지점을 나열합니다.
다음 예제에서는 azurefiles
스토리지 계정에서 파일 공유에 대한 복구 지점 목록을 가져옵니다.
az backup recoverypoint list --vault-name azurefilesvault --resource-group azurefiles --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --backup-management-type azurestorage --item-name "AzureFileShare;azurefiles" --workload-type azurefileshare --out table
다음 두 개의 추가 매개 변수를 제공하여 컨테이너 및 항목에 대한 친숙한 이름을 사용하여 이전 cmdlet을 실행할 수도 있습니다.
-
--backup-management-type:
azurestorage
-
--workload-type:
azurefileshare
az backup recoverypoint list --vault-name azurefilesvault --resource-group azurefiles --container-name afsaccount --backup-management-type azurestorage --item-name azurefiles --workload-type azurefileshare --out table
결과 집합은 각 복원 지점에 대한 시간 및 일관성 세부 정보가 있는 복구 지점 목록입니다.
Name Time Consistency
------------------ ------------------------- --------------------
932887541532871865 2020-01-05T07:08:23+00:00 FileSystemConsistent
932885927361238054 2020-01-05T07:08:10+00:00 FileSystemConsistent
932879614553967772 2020-01-04T21:33:04+00:00 FileSystemConsistent
출력의 Name 특성은 복구 작업에서 --rp-name 매개 변수의 값으로 사용할 수 있는 복구 지점 이름에 해당합니다.
Azure CLI를 사용하여 전체 공유 복구
이 복원 옵션을 사용하여 원본 또는 대체 위치에서 전체 파일 공유를 복원할 수 있습니다.
복원 작업을 수행하려면 다음 매개 변수를 정의합니다.
- --container-name: 백업된 원본 파일 공유를 호스팅하는 스토리지 계정의 이름입니다. 컨테이너의 이름 또는 친숙한 이름을 검색하려면 az backup container list 명령을 사용합니다.
- --item-name: 복원 작업에 사용할 백업된 원본 파일 공유의 이름입니다. 백업된 항목의 이름이나 별칭을 조회하려면 az backup item list 명령을 사용합니다.
전체 공유를 원래 위치로 복원
원래 위치로 복원하는 경우 대상 관련 매개 변수를 지정할 필요가 없습니다. 충돌 해결만 제공해야 합니다.
다음 예제에서는 az backup restore restore-azurefileshare
cmdlet을 사용하여 복원 모드를 originallocation
로 설정하고 azurefiles
파일 공유를 원래 위치에 복원합니다.
Azure Files의 복구 지점 가져오기에서 얻은 복구 지점 932883129628959823을(를) 사용합니다.
az backup restore restore-azurefileshare --vault-name azurefilesvault --resource-group azurefiles --rp-name 932887541532871865 --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --item-name "AzureFileShare;azurefiles" --restore-mode originallocation --resolve-conflict overwrite --out table
Name ResourceGroup
------------------------------------ ---------------
6a27cc23-9283-4310-9c27-dcfb81b7b4bb azurefiles
출력의 Name 특성은 복원 작업을 위해 백업 서비스에서 만든 작업의 이름에 해당합니다. 작업 상태를 추적하려면 az backup job show cmdlet을 사용합니다.
전체 공유를 대체 위치로 복원
이 옵션을 사용하여 파일 공유를 대체 위치로 복원하고 원래 파일 공유를 있는 그대로 유지할 수 있습니다. 대체 위치 복구에 대해 다음 매개 변수를 지정합니다.
- --target-storage-account: 백업된 콘텐츠가 복원되는 스토리지 계정입니다. 대상 스토리지 계정은 자격 증명 모음과 동일한 위치에 있어야 합니다.
- --target-file-share: 백업된 콘텐츠가 복원되는 대상 스토리지 계정 내의 파일 공유입니다.
- --target-folder: 데이터가 복원되는 파일 공유 아래의 폴더입니다. 백업된 콘텐츠를 루트 폴더로 복원해야 하는 경우 대상 폴더 값을 빈 문자열로 제공합니다.
- --resolve-conflict: 복원된 데이터와 충돌하는 경우의 명령입니다. 덮어쓰기 또는 건너뛰기를 수락합니다.
다음 예제에서는 복원 모드를 az backup restore restore-azurefileshare
사용하여 alternatelocation
azurefiles
스토리지 계정의 파일 공유를 afaccount1 스토리지 계정의 azurefiles1" 파일 공유로 복원합니다.
az backup restore restore-azurefileshare --vault-name azurefilesvault --resource-group azurefiles --rp-name 932883129628959823 --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --item-name "AzureFileShare;azurefiles" --restore-mode alternatelocation --target-storage-account afaccount1 --target-file-share azurefiles1 --target-folder restoredata --resolve-conflict overwrite --out table
Name ResourceGroup
------------------------------------ ---------------
babeb61c-d73d-4b91-9830-b8bfa83c349a azurefiles
출력의 Name 특성은 복원 작업을 위해 백업 서비스에서 만든 작업의 이름에 해당합니다. 작업 상태를 추적하려면 az backup job show cmdlet을 사용합니다.
항목 수준 복구
이 복원 옵션을 사용하여 원래 위치나 대체 위치에서 개별 파일 또는 폴더를 복원할 수 있습니다.
복원 작업을 수행하려면 다음 매개 변수를 정의합니다.
- --container-name: 백업된 원본 파일 공유를 호스팅하는 스토리지 계정의 이름입니다. 컨테이너의 이름 또는 친숙한 이름을 검색하려면 az backup container list 명령을 사용합니다.
- --item-name: 복원 작업에 사용할 백업된 원본 파일 공유의 이름입니다. 백업된 항목의 이름이나 별칭을 조회하려면 az backup item list 명령을 사용합니다.
복구하려는 항목에 대해 다음 매개 변수를 지정합니다.
- SourceFilePath: 파일 공유 내에서 복원되는 파일의 절대 경로(문자열)입니다. 이 경로는 az storage file download 또는 az storage fileshow CLI 명령에 사용되는 경로와 동일합니다.
- SourceFileType: 디렉터리 또는 파일을 선택할지 여부를 선택합니다. 디렉터리 또는 파일을 수락합니다.
- ResolveConflict: 복원된 데이터와 충돌이 있는 경우 적용되는 지침입니다. 덮어쓰기 또는 건너뛰기를 수락합니다.
개별 파일 또는 폴더를 원래 위치로 복원
복원 모드가 az backup restore restore-azurefiles
설정된 cmdlet을 originallocation
사용하여 특정 파일 또는 폴더를 원래 위치로 복원합니다.
다음은 RestoreTest.txt 파일을 원래 위치인 파일 공유로 복원하는 azurefiles
예제입니다.
az backup restore restore-azurefiles --vault-name azurefilesvault --resource-group azurefiles --rp-name 932881556234035474 --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --item-name "AzureFileShare;azurefiles" --restore-mode originallocation --source-file-type file --source-file-path "Restore/RestoreTest.txt" --resolve-conflict overwrite --out table
Name ResourceGroup
------------------------------------ ---------------
df4d9024-0dcb-4edc-bf8c-0a3d18a25319 azurefiles
출력의 Name 특성은 복원 작업을 위해 백업 서비스에서 만든 작업의 이름에 해당합니다. 작업 상태를 추적하려면 az backup job show cmdlet을 사용합니다.
개별 파일 또는 폴더를 대체 위치로 복원
특정 파일 또는 폴더를 대체 위치로 복원하려면 복원 모드가 설정된 cmdlet을 사용하여 az backup restore restore-azurefiles
다음 대상 관련 매개 변수를 alternatelocation
지정합니다.
- --target-storage-account: 백업된 콘텐츠가 복원되는 스토리지 계정입니다. 대상 스토리지 계정은 자격 증명 모음과 동일한 위치에 있어야 합니다.
- --target-file-share: 백업된 콘텐츠가 복원되는 대상 스토리지 계정 내의 파일 공유입니다.
- --target-folder: 데이터가 복원되는 파일 공유 아래의 폴더입니다. 백업된 콘텐츠를 루트 폴더로 복원하려면 대상 폴더의 값을 빈 문자열로 지정합니다.
다음은 원래 파일 공유에 있는 azurefiles
파일을 restoredata
스토리지 계정에 호스트된 azurefiles1 파일 공유의 폴더와 같은 대체 위치 로 복원하는 예제입니다.
az backup restore restore-azurefiles --vault-name azurefilesvault --resource-group azurefiles --rp-name 932881556234035474 --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --item-name "AzureFileShare;azurefiles" --restore-mode alternatelocation --target-storage-account afaccount1 --target-file-share azurefiles1 --target-folder restoredata --resolve-conflict overwrite --source-file-type file --source-file-path "Restore/RestoreTest.txt" --out table
Name ResourceGroup
------------------------------------ ---------------
df4d9024-0dcb-4edc-bf8c-0a3d18a25319 azurefiles
출력의 Name 특성은 복원 작업을 위해 백업 서비스에서 만든 작업의 이름에 해당합니다. 작업 상태를 추적하려면 az backup job show cmdlet을 사용합니다.
원래 위치나 대체 위치로 여러 파일 또는 폴더 복원
여러 항목에 대한 복원을 수행하려면 원본 파일 경로 매개 변수의 값을 복원하려는 모든 파일 또는 폴더의 공백으로 구분된 경로로 전달합니다.
다음 예제에서는 원래 위치에서Restore.txt 및 AFS 테스트 Report.docx 파일을 복원합니다.
az backup restore restore-azurefiles --vault-name azurefilesvault --resource-group azurefiles --rp-name 932889937058317910 --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --item-name "AzureFileShare;azurefiles" --restore-mode originallocation --source-file-type file --source-file-path "Restore Test.txt" "AFS Testing Report.docx" --resolve-conflict overwrite --out table
출력은 다음과 유사합니다.
Name ResourceGroup
------------------------------------ ---------------
649b0c14-4a94-4945-995a-19e2aace0305 azurefiles
출력의 Name 특성은 복원 작업을 위해 백업 서비스에서 만든 작업의 이름에 해당합니다. 작업 상태를 추적하려면 az backup job show cmdlet을 사용합니다.
여러 항목을 대체 위치로 복원하려면 개별 파일 또는 폴더를 대체 위치로 복원 섹션에 설명된 대로 대상 관련 매개 변수를 지정하여 위의 명령을 사용합니다.
다음 단계
Azure portal, Azure PowerShell, Azure CLI, REST API를 사용하여 Azure Files 백업을 관리합니다.