Cloud Shell을 처음 시작하면 스토리지 옵션을 선택하라는 메시지가 표시됩니다. Cloud Shell을 사용할 때마다 사용할 수 있는 파일을 저장하려는 경우 새 스토리지 리소스를 만들거나 기존 스토리지 리소스를 선택해야 합니다. Cloud Shell은 Microsoft Azure Files 공유를 사용하여 세션 간에 파일을 유지합니다.
- 새 스토리지 리소스를 만들려면 영구 스토리지를 사용하여 Azure Cloud Shell 시작을 참조하세요.
- 기존 스토리지 리소스를 사용하려면 기존 스토리지를 사용하여 Azure Cloud Shell 시작을 참조하세요.
Cloud Shell 스토리지 작동 방법
Cloud Shell은 다음 두 가지 방법을 통해 파일을 지속적으로 저장합니다.
-
$HOME디렉터리의 콘텐츠를 포함할 디스크 이미지를 만듭니다. 디스크 이미지는https://storageaccountname.file.core.windows.net/filesharename/.cloudconsole/acc_user.img에 저장됩니다. Cloud Shell은 이 디스크 이미지의 변경 내용을 자동으로 동기화합니다. -
$HOME디렉터리에 파일 공유를clouddrive로 탑재합니다./home/<User>/clouddrive경로는storageaccountname.file.core.windows.net/filesharename에 매핑됩니다.
참고
SSH 키와 같이 $HOME 디렉터리의 모든 파일은 마운트된 파일 공유에 저장된 사용자 디스크 이미지에 영구 저장됩니다. 모범 사례를 사용하여 $HOME 디렉터리 및 탑재된 파일 공유의 정보를 보호합니다.
지원되는 스토리지 지역
Cloud Shell은 여러 주요 리전에서 세션 머신을 실행합니다. 아래 표에 나열된 대로 기본 지역 또는 지원되는 보조 영역에 위치한 저장 계정에 영구 파일을 저장할 수 있습니다.
세션은 일반적으로 스토리지 계정과 연결된 주요 지역에서 실행됩니다. 보조 저장 영역을 사용하거나 임시 세션을 사용할 경우, Cloud Shell은 사용자와 가장 가까운 기본 영역을 선택합니다. 배치는 사용 가능한 용량에 따라 달라지므로 특정 지역이 보장되는 것은 아닙니다.
파일은 저장 계정 영역에서는 정지 상태로 남아 있지만, 세션이 실행되는 주요 영역에서는 처리됩니다. 예를 들어, 캐나다 동부에 저장된 파일은 캐나다에 그대로 저장되어 있지만, 세션이 미국 주요 지역에서 실행되면 미국에서 처리됩니다.
미사용(저장) 상태의 데이터를 다른 지역에 저장해야 하는 경우가 아니라면 저장 계정의 기본 지역을 선택하세요. 보조 저장 영역을 사용하면 파일 접근과 Cloud Shell 시작 속도가 느려질 수 있습니다.
현재 사용 중인 Cloud Shell 머신의 지역을 찾으려면 Bash에서 $env:ACC_LOCATION를 실행하거나 PowerShell에서 echo "$ACC_LOCATION"를 실행하세요.
주 지역
| 영역 | 지역 |
|---|---|
| 미국 | East US 2, South Central US, West Central US, West US 2 |
| Europe | 프랑스 중부, 독일 서중부, 스웨덴 중부, 서유럽 |
| Asia Pacific | 호주 동부, 호주 남동부, 중앙 인도, 동아시아, 남인도, 동남아시아 |
| Azure Government | 미국 애리조나 주 정부, 미국 버지니아 주 정부 |
2차 저장 영역
| 영역 | 지역 |
|---|---|
| Americas | 브라질 남부, 캐나다 중부, 캐나다 동부, 중부 미국, 동부 미국, 멕시코 중부, 북중부 미국, 서부 미국, 서부 미국 3 |
| Europe | 유럽 북부, 노르웨이 동부, 스페인 중부, 스위스 북부, 영국 남부, 영국 서부 |
| Asia Pacific | 오스트레일리아 중부, 일본 동부, 일본 서부, Jio 인도 서부, 한국 중부, 한국 남부, 인도 서부 |
| 중동 및 아프리카 | 카타르 중앙, 남아프리카 북부, UAE 북부 |
| Azure Government | 미국 정부 텍사스 |
스토리지 액세스 보안
보안을 위해 각 사용자는 자신의 스토리지 계정을 만들어야 합니다. Azure RBAC(역할 기반 액세스 제어)의 경우 사용자에게는 스토리지 계정 수준에서 기여자 액세스 권한 이상이 있어야 합니다.
Cloud Shell은 지정된 구독 내에 있는 스토리지 계정의 Azure 파일 공유를 사용합니다. 상속된 사용 권한으로 인해 구독에 충분한 액세스 권한이 있는 사용자는 구독에 포함된 스토리지 계정 및 파일 공유에 액세스할 수 있습니다.
사용자는 스토리지 계정 또는 구독 수준에서 사용 권한을 설정하여 파일에 대한 액세스를 제한해야 합니다.
Cloud Shell 스토리지 계정에는 Cloud Shell 사용자가 홈 디렉터리에 만든 파일이 포함되며, 여기에는 액세스 토큰 또는 자격 증명을 비롯한 중요한 정보가 포함될 수 있습니다.
Azure 리소스 정책으로 리소스 만들기 제한
Cloud Shell에서 만든 스토리지 계정에는 ms-resource-usage:azure-cloud-shell 태그가 지정됩니다.
사용자가 Cloud Shell에서 스토리지 계정을 만드는 것을 허용하지 않으려면 이 특정 태그에 의해 트리거되는 Azure 리소스 정책을 만듭니다.
Cloud Shell 스토리지 관리
새 clouddrive 마운트
이전에 Cloud Shell에 임시 세션을 사용하도록 선택한 경우 Cloud Shell에서 설정>사용자 설정 초기화를 선택하여 기본 설정을 다시 설정해야 합니다. 기존 스토리지 계정 또는 새 스토리지 계정을 연결하는 단계를 따릅니다.
참고
새 파일 공유를 탑재하는 경우 $HOME 디렉터리에 대한 새 사용자 이미지가 만들어집니다. 이전 $HOME 이미지는 이전 파일 공유에 보관됩니다.
clouddrive 마운트 해제
언제든지 Cloud Shell 파일 공유의 마운트를 해제할 수 있습니다. Cloud Shell을 사용하려면 탑재된 파일 공유가 필요하므로 Cloud Shell은 다음 세션에 다른 파일 공유를 만들고 탑재하라는 메시지를 표시합니다.
-
clouddrive unmount를 실행합니다. - 프롬프트를 승인하고 확인합니다.
분리된 파일 공유는 수동으로 삭제할 때까지 계속 존재합니다. 분리한 후 Cloud Shell은 이후 세션에서 이 파일 공유를 더 이상 검색하지 않습니다. 자세한 내용은 clouddrive unmount -h를 실행하십시오.
Command
clouddrive unmount: Unmount an Azure file share from Cloud Shell.
Unmount enables unmounting and disassociating a file share from Cloud Shell.
All current sessions will be terminated. Machine state and non-persisted files will be lost.
You will be prompted to create and mount a new file share on your next session.
Your previously mounted file share will continue to exist.
Note: This command does not unmount storage if the session is Ephemeral.
Arguments
None
경고
이 명령을 실행해도 리소스가 삭제되지는 않지만 Cloud Shell에 매핑된 리소스 그룹, 스토리지 계정 또는 파일 공유를 수동으로 삭제하면 사용자의 $HOME 디렉터리 디스크 이미지와 사용자 파일 공유의 모든 파일이 지워집니다. 이 작업은 취소할 수 없습니다.
PowerShell 명령 사용
현재 파일 공유에 대한 정보 가져오기
PowerShell에서 Get-CloudDrive 명령을 사용하여 파일 공유를 지원하는 리소스에 대한 정보를 가져옵니다.
PS /home/user> Get-CloudDrive
FileShareName : cs-user-microsoft-com-xxxxxxxxxxxxxxx
FileSharePath : //cs7xxxxxxxxxxxxxxx.file.core.windows.net/cs-user-microsoft-com-xxxxxxxxxxxxxxx
MountPoint : /home/user/clouddrive
Name : cs7xxxxxxxxxxxxxxx
ResourceGroupName : cloud-shell-storage-southcentralus
StorageAccountName : cs7xxxxxxxxxxxxxxx
SubscriptionId : aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e
파일 공유 마운트 해제
Dismount-CloudDrive cmdlet을 사용하면 언제든지 Cloud Shell 파일 공유를 분리할 수 있습니다.
clouddrive를 마운트 해제하면 현재 세션이 종료됩니다.
Dismount-CloudDrive
Do you want to continue
Dismounting clouddrive will terminate your current session. You will be prompted to create and
mount a new file share on your next session
[Y] Yes [N] No [S] Suspend [?] Help (default is "Y"):