이 페이지에서는 Google Distributed Cloud (GDC) 에어 갭 스토리지 버킷에 객체를 업로드하고 버킷에서 객체를 다운로드하는 방법을 보여줍니다.
시작하기 전에
프로젝트 네임스페이스는 Management API 서버에서 버킷 리소스를 관리합니다. 버킷 및 객체로 작업하려면 프로젝트가 있어야 합니다.
또한 다음 작업을 수행하려면 적절한 버킷 권한이 있어야 합니다. 버킷 액세스 권한 부여를 참조하세요.
객체 이름 지정 가이드라인
객체 이름을 지정할 때는 다음 가이드라인을 따르세요.
- 객체 이름을 지정할 때는 UTF-8 문자를 사용합니다.
- 길이는 1~55자 사이여야 합니다.
- 개인 식별 정보 (PII)를 포함하지 않습니다.
스토리지 버킷에 객체 업로드
콘솔
- 탐색 메뉴에서 객체 스토리지 를 클릭합니다.
- 객체를 업로드할 버킷의 이름을 클릭합니다.
- 선택사항: 객체를 저장할 폴더를 만들려면 폴더 만들기 를 클릭하고 폴더 이름을 입력한 후 만들기 를 클릭합니다.
- 파일 업로드 를 직접 클릭하거나 방금 만든 폴더로 이동한 후 파일 업로드 를 클릭합니다.
- 원하는 파일을 선택하고 열기 를 클릭합니다.
- 업로드가 완료되었다는 확인 메시지가 표시될 때까지 기다립니다.
CLI
객체를 업로드하려면 다음 명령어를 실행합니다.
gdcloud storage cp LOCAL_PATH s3://REMOTE_PATH
gdcloud storage cp s3://FULLY_QUALIFIED_SOURCE_BUCKET_NAME s3://FULLY_QUALIFIED_DESTINATION_BUCKET_NAME
gdcloud storage mv s3://FULLY_QUALIFIED_SOURCE_BUCKET_NAME s3://FULLY_QUALIFIED_DESTINATION_BUCKET_NAME
다음 명령어에는 FULLY_QUALIFIED_BUCKET_NAME이 필요합니다. 버킷 구성 보기 섹션의 GET 또는 DESCRIBE 명령어를 사용하여 정규화된 버킷 이름을 가져옵니다.
다음 명령어는 로컬 디렉터리의 모든 텍스트 파일을 버킷에 업로드합니다.
gdcloud storage cp *.txt s3://FULLY_QUALIFIED_BUCKET_NAME
다음 명령어는 로컬 디렉터리의 여러 파일을 버킷에 업로드합니다.
gdcloud storage cp abc1.txt abc2.txt s3://FULLY_QUALIFIED_BUCKET_NAME
버킷에 폴더를 업로드하려면 --recursive 옵션을 사용하여 전체 디렉터리 트리를 복사합니다. 다음 명령어는 디렉터리 트리 dir을 업로드합니다.
gdcloud storage cp DIRECTORY_NAME s3://FULLY_QUALIFIED_BUCKET_NAME --recursive
대용량 객체의 경우 멀티파트 업로드를 실행하거나 업로드할 파일이 15MB보다 큰 경우 멀티파트 업로드를 자동으로 사용합니다. 이 경우 파일은 여러 부분으로 분할되며 각 부분의 크기는 15MB입니다. 마지막 부분은 더 작습니다. 각 부분은 개별적으로 업로드되고 전송이 완료되면 대상에서 재구성됩니다.
한 부분의 업로드가 실패하면 이미 업로드된 다른 부분에 영향을 주지 않고 업로드를 다시 시작할 수 있습니다.
멀티파트 업로드와 관련된 두 가지 옵션이 있습니다.
--disable-multipart: 모든 파일의 멀티파트 업로드를 사용 중지합니다.--multipart-chunk-size-mb=SIZE: 멀티파트 업로드의 각 청크 크기를 설정합니다.
SIZE보다 큰 파일은 자동으로 다중 스레드 멀티파트로 업로드됩니다. 더 작은 파일은 기존 방식을 사용하여 업로드됩니다. SIZE는 메가바이트 단위입니다. 기본 청크 크기는 15MB입니다. 허용되는 최소 청크 크기는 5MB이고 최대 청크 크기는 5GB입니다.
스토리지 버킷에서 객체 다운로드
콘솔
- 탐색 메뉴에서 객체 스토리지 를 클릭합니다.
- 객체가 포함된 버킷의 이름을 클릭합니다.
- 다운로드할 객체 이름 옆에 있는 체크박스를 선택합니다.
- 다운로드 를 클릭합니다.
CLI
버킷에서 객체를 가져오려면 다음 안내를 따르세요.
gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/OBJECT LOCAL_FILE_TO_SAVE
버킷의 모든 텍스트 파일을 현재 디렉터리로 다운로드하려면 다음 안내를 따르세요.
gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/*.txt .
버킷의 텍스트 파일 abc.txt를 현재 디렉터리로 다운로드하려면 다음 안내를 따르세요.
gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/abc.txt .
이전 버전의 파일을 다운로드하려면 먼저 파일의 모든 버전을 나열합니다.
gdcloud storage ls s3://FULLY_QUALIFIED_BUCKET_NAME/abc.txt --all-versions
출력 예시:
s3://my-bucket/abc.txt#OEQxNTk4MUEtMzEzRS0xMUVFLTk2N0UtQkM4MjAwQkJENjND
s3://my-bucket/abc.txt#ODgzNEYzQ0MtMzEzRS0xMUVFLTk2NEItMjI1MTAwQkJENjND
s3://my-bucket/abc.txt#ODNCNDEzNzgtMzEzRS0xMUVFLTlDOUMtQzRDOTAwQjg3RTg3
그런 다음 버킷의 특정 버전의 텍스트 파일 abc.txt를 현재 디렉터리로 다운로드합니다.
gdcloud storage cp s3://FULLY_QUALIFIED_BUCKET_NAME/abc.txt#OEQxNTk4MUEtMzEzRS0xMUVFLTk2N0UtQkM4MjAwQkJENjND .
커스텀 AEADKey 사용
더욱 세부적인 맞춤설정을 위해 자체 AEADKey를 만들고 버킷에서 객체를 암호화할 때 직접 사용할 수 있습니다. 이렇게 하면 기본값을 무시하고 암호화 키를 완전히 제어할 수 있습니다. 키 만들기에 따라 새 AEADKey를 만들고 사용할 버킷과 동일한 Namespace에 있는지 확인합니다. 그런 다음 요청을 보낼 때마다 HEADER가 x-amz-server-side-encryption: SSE-KMS 및 x-amz-server-side-encryption-aws-kms-key-id: NAMESPACE_NAME/AEADKey_NAME으로 구성되어 있는지 확인합니다.