Google Cloud의 Storage인 GCS(=Google Cloud Storage)는 AWS(Amazon Web Service)의 S3에 해당하는 서비스입니다
별로 잘 안쓰고 있었는데, GCP(=Google Cloud Platform)을 계속 사용하다가 보니까 사용하면 정말 편할거 같아서 공부할겸 내용을 정리해보려고 합니다
기본적으로 제가 사용하는 환경이 MacOS이기 때문에 터미널에서 명령을 입력하는 것만으로 업로드 및 다운로드가 된다는게 크게 좋게 다가왔습니다
자세한 사항은 구글 공식 가이드를 참고하세요
gsutil을 위한 사전 준비
만약 gcloud가 설치되어있지 않다면 Google Cloud SDK(=gcloud) 설치하기를 참고하여 설치를 먼저 진행합니다
그 다음 아래 명령어를 통해서 gsutil
컴포넌트를 설치하면 사용준비가 끝이 납니다
$ gcloud components install gsutil # gsutil 명령어를 다운받아보겠습니다
gsutil 명령어 모음
$ gsutil list # 나의 버킷 리스트 보기
$ gsutil ls -r gs://버킷이름 # 버킷 안에 들어있는 파일 확인
$ gsutil du -s gs://버킷이름 # 버킷 용량 확인
$ gsutil mb gs://버킷이름 # 버킷 생성
$ gsutil rb gs://버킷이름 # 버킷 삭제
$ gsutil cp 로컬 파일 위치 gs://버킷이름 # 로컬 -> 버킷 복사
$ gsutil cp gs://버킷이름 로컬 파일 위치 # 버킷 -> 로컬 복사
$ gsutil mv 로컬 파일 위치 gs://버킷이름 # 로컬 -> 버킷 이동
$ gsutil mv gs://버킷이름 로컬 파일 위치 # 버킷 -> 로컬 이동
$ gsutil rm gs://버킷이름/파일이름 # 파일 삭제
$ gsutil ls -L gs://버킷이름/파일이름 # 파일 정보 보기
gsutil의 성능을 향상시키기 (-m 옵션
)
Facebook의 Google Cloud Platform 커뮤니티 에서 알려줘서 추가로 업데이트 합니다
-m
옵션을 주게되면 처리가 Parallel 하게 처리가 되기 때문에 성능이 비약적으로 향상됩니다.
관련해서 자세한 문서는 Top-Level Command-Line Options 를 참고해주세요
-m을 지원하는 명령어들
$ gsutil -m acl ch [해당 명령어 관련 설정] # Access Control List 변경
$ gsutil -m acl set [해당 명령어 관련 설정] # Access Control List 세팅
$ gsutil -m cp [해당 명령어 관련 설정] # 복사
$ gsutil -m mv [해당 명령어 관련 설정] # 이동
$ gsutil -m rm [해당 명령어 관련 설정] # 삭제
$ gsutil -m rsync [해당 명령어 관련 설정] # 원본과 버킷 사이에 동기화
$ gsutil -m setmeta [해당 명령어 관련 설정] # 메타데이터 셋
명령어에 대한 자세한 설명은 gsutil Commands를 참고해주세요
실습
나의 버킷 리스트 보기
$ gsutil list
버킷 안에 들어있는 파일 확인
$ gsutil ls -r gs://버킷이름
버킷 용량 확인
$ gsutil du -s gs://버킷이름
버킷 생성
$ gsutil mb gs://버킷이름
버킷 삭제
$ gsutil rb gs://버킷이름
로컬 -> 버킷으로 파일 복사(=업로드)
$ gsutil cp 로컬 파일 위치 gs://버킷이름
버킷 -> 로컬로 파일 복사(=다운로드)
$ gsutil cp gs://버킷이름 로컬 파일 위치
로컬 -> 버킷으로 파일 이동(=업로드)
$ gsutil mv 로컬 파일 위치 gs://버킷이름
버킷 -> 로컬로 파일 이동(=다운로드)
$ gsutil mv gs://버킷이름 로컬 파일 위치
버킷안에 파일 삭제하기
$ gsutil rm gs://버킷이름/파일이름
버킷안에 파일 정보 보기
$ gsutil ls -L gs://버킷이름/파일이름