Google Cloud Storage 설정

Cloud Storage 버킷을 사용하여 영화, 이미지, 기타 정적 콘텐츠와 같은 파일을 저장하고 제공할 수 있습니다. 이 문서에서는 Cloud Storage용 App Engine 클라이언트 라이브러리를 사용하도록 환경을 설정하는 방법을 설명합니다.

프로젝트 설정

Google Cloud 프로젝트를 만들고 App Engine에서 Go 1.11 앱이 구조화되는 방식을 이해합니다. 애플리케이션에서 사용할 프로젝트 ID를 기록해 둡니다.

Cloud Storage 버킷 활성화

Cloud Storage를 사용하려면 1개 이상의 버킷을 활성화해야 합니다. 저장용량 중 첫 5GB를 무료로 제공하는 기본 버킷을 사용할 수 있습니다. 다른 Cloud Storage 버킷을 활성화하고 사용할 수 있습니다. 기본 버킷에는 처음 5GB의 무료 스토리지가 포함되어 있습니다. 기본 버킷에는 Cloud Storage I/O 작업을 위한 무료 할당량도 포함되어 있습니다. 자세한 내용은 가격 책정, 할당량, 한도를 참조하세요.

앱의 기본 Cloud Storage 버킷을 활성화하려면 다음 단계를 따르세요.

  1. 프로젝트의 App Engine 설정 페이지에서 기본 Cloud Storage 버킷만들기를 클릭합니다. 이 버킷의 이름은 <project-id>.appspot.com 형식으로 되어 있습니다.

  2. 5GB 제한을 초과하는 저장용량이 필요할 경우 프로젝트에 결제를 사용 설정하여 유료 버킷으로 만들면 용량을 늘릴 수 있습니다. 5GB 제한을 초과하는 저장용량을 사용하면 요금이 청구됩니다.

유료 버킷을 1개 이상 활성화하려는 경우 버킷 만들기의 안내에 따라 버킷을 활성화합니다.

버킷 및 객체 권한 설정

앱 서비스 계정 또는 다른 사용자가 스토리지 버킷과 해당 콘텐츠에 액세스하도록 허용하는 방법은 버킷 권한 설정객체 권한 설정을 참조하세요.

클라이언트 라이브러리 다운로드

go 도구를 통해 Cloud Storage용 App Engine 클라이언트 라이브러리를 사용할 수 있습니다. 라이브러리를 다운로드하려면 다음 안내를 따르세요.

  1. 필요한 경우 GOPATH를 설정합니다. Linux 및 macOS를 사용하는 경우 다음과 같이 GOPATH를 설정할 수 있습니다.

    mkdir -p $HOME/go
    export GOPATH=$HOME/go
  2. oauth2, storage, appengine 패키지를 다운로드합니다.

    go get -u golang.org/x/oauth2
    go get -u cloud.google.com/go/storage
    go get -u google.golang.org/appengine/...
클라이언트 라이브러리 설치에 대한 자세한 내용은 Cloud Storage 클라이언트 라이브러리 페이지를 참조하세요.

개발 앱 서버에서 클라이언트 라이브러리 사용

개발 서버에서 클라이언트 라이브러리를 사용할 수 있습니다. 하지만 Cloud Storage 로컬 에뮬레이션이 없기 때문에 파일을 읽고 쓰기 위한 모든 요청을 인터넷을 통해 실제 Cloud Storage 버킷으로 보내야 합니다.

개발 앱 서버에서 클라이언트 라이브러리를 사용하려면 다음 단계를 따르세요.

  1. Cloud Storage 버킷을 활성화합니다.

  2. --default_gcs_bucket_name [BUCKET_NAME] 플래그를 사용하여 dev_appserver.py를 실행합니다. 이때 [BUCKET_NAME]을 사용 중인 Cloud Storage 버킷의 이름으로 바꿉니다.

    이 플래그는 애플리케이션이 file.DefaultBucketName(ctx)을 호출할 때 반환될 버킷을 제어합니다.

가격 책정, 할당량, 한도

App Engine의 클라이언트 라이브러리에서 Cloud Storage를 호출할 때는 대역폭 요금이 부과되지 않습니다. 하지만 작업 비용은 청구됩니다. 또한 라이브러리가 Cloud Storage와 상호작용하는 데 URL Fetch 서비스를 사용하므로 호출 수가 URL Fetch 할당량에 반영됩니다.

Cloud Storage는 유료 서비스이며 Cloud Storage 가격표에 따라 비용이 청구됩니다.

Cloud Storage에 액세스하는 다른 방법

클라이언트 라이브러리를 사용하는 대신 다음을 사용할 수 있습니다.

  • Cloud Storage 브라우저 - Google Cloud 콘솔에 있으며 객체를 빠르게 업로드하는 데 유용합니다.
  • gsutil - Cloud Storage에서 파일 작업을 수행하기 위한 명령줄 도구입니다.

다음 단계