Cloud Storage 버킷 구성

앱 디자인 센터에서 Cloud Storage 버킷을 구성하여 웹사이트 콘텐츠 제공, 보관처리 및 재해 복구, 대규모 객체 배포와 같은 워크로드의 비정형 객체 데이터를 저장하고 검색할 수 있습니다. terraform-google-cloud-storage Terraform 모듈을 기반으로 버킷의 구성요소 연결 및 구성 매개변수를 맞춤설정할 수 있습니다.

구성요소 연결

다음 표에는 Cloud Storage 버킷에 연결할 수 있는 구성요소와 애플리케이션 및 생성된 Terraform 코드에 대한 결과 업데이트가 포함되어 있습니다.

연결된 구성요소

애플리케이션 업데이트

배경 정보

Compute Engine 인스턴스 템플릿

  • Compute Engine 인스턴스는 객체 나열, 생성, 보기, 삭제를 포함하여 버킷 객체를 제어할 수 있습니다.
  • roles/storage.objectAdmin 역할이 Compute Engine 인스턴스 템플릿 서비스 계정에 할당됩니다.
버킷의 IAM 정책 설정 및 관리

서비스 계정

  • 서비스 계정은 Cloud Storage 버킷의 객체를 관리할 수 있습니다.
  • 서비스 계정 IAM 정보가 Cloud Storage 버킷에 추가됩니다.
  • roles/storage.objectAdmin 역할이 서비스 계정에 할당됩니다.
버킷의 IAM 정책 설정 및 관리

Cloud Run

  • Cloud Run 서비스는 Cloud Storage 버킷의 객체를 관리할 수 있습니다.
  • Cloud Run 서비스 계정 IAM 정보가 Cloud Storage 버킷에 추가됩니다.
  • roles/storage.objectAdmin 역할이 Cloud Run 서비스 계정에 할당됩니다.
Google Cloud 서비스에 연결

Pub/Sub

  • Pub/Sub 구독은 Cloud Storage 버킷에 메시지를 쓸 수 있습니다.
  • Cloud Storage 버킷 정보가 Pub/Sub 구독 필드에 추가됩니다.
Cloud Storage 구독

필수 구성 매개변수

템플릿에 Cloud Storage 구성요소가 포함된 경우 배포하기 전에 다음 매개변수를 구성해야 합니다.

매개변수 이름

설명 및 제약조건

배경 정보

프로젝트 ID

Cloud Storage 리소스를 배포할 프로젝트입니다.

구성요소 구성

리전

location 버킷 위치

이름

name 버킷 이름

선택적 구성 매개변수

다음 매개변수는 선택사항입니다. 고급 매개변수를 표시하려면 구성 영역에서 고급 필드 표시를 선택합니다.

기능

매개변수 이름

설명 및 제약 조건 정보

배경 정보

스토리지 클래스

storageClass 스토리지 클래스

버킷 정책 전용

iamConfiguration.uniformBucketLevelAccess 균일한 버킷 수준 액세스

버전 관리

versioning.enabled 객체 버전 관리

자동 클래스

autoclass.enabled 자동 클래스
보관 정책

잠김

retentionPolicy.isLocked 버킷 잠금

보관 기간

retentionPolicy.retentionPeriod 보관 정책

암호화

기본 KMS 키 이름

encryption.defaultKmsKeyName 고객 관리 암호화 키 사용

수명 주기 규칙

유형

lifecycle.rule[].action.type 객체 수명 주기 관리

스토리지 클래스

lifecycle.rule[].action.storageClass setStorageClass

Age

lifecycle.rule[].condition.age age

Send Age If Zero

send_age_if_zero lifecycle_rules

다음 날짜 이전에 생성

lifecycle.rule[].condition.createdBefore createdBefore

상태 포함

with_state lifecycle_rules

스토리지 클래스 일치

lifecycle.rule[].condition.matchesStorageClass[] matchesStorageClass

프리픽스 일치

lifecycle.rule[].condition.matchesPrefix[] matchesPrefix 및 matchesSuffix

일치하는 서픽스

lifecycle.rule[].condition.matchesSuffix[] matchesPrefix 및 matchesSuffix

최신 버전 수

lifecycle.rule[].condition.numNewerVersions numNewerVersions

특정 날짜 전의 커스텀 시간

lifecycle.rule[].condition.customTimeBefore customTimeBefore

커스텀 시간 이후의 경과 일수

lifecycle.rule[].condition.daysSinceCustomTime daysSinceCustomTime

이전 버전이 된 이후의 경과 일수

lifecycle.rule[].condition.daysSinceNoncurrentTime daysSinceNoncurrentTime

이전 버전이 된 시점

lifecycle.rule[].condition.noncurrentTimeBefore noncurrentTimeBefore

내부 암호화 구성

암호화 키 만들기

Cloud Key Management Service 키링 및 키를 만들려면 체크박스를 선택합니다. 고객 관리 암호화 키

삭제 방지

Cloud KMS 키가 폐기되지 않도록 하려면 체크박스를 선택합니다. 키 버전 및 잠긴 객체

키 폐기 예약 기간

destroyScheduledDuration 키 버전 및 잠긴 객체

키 순환 기간

rotationPeriod 키 순환

강제 폐기

버킷을 삭제할 때 포함된 모든 객체를 삭제하려면 체크박스를 선택합니다.

force_destroy

IAM 구성원

역할

부여하려는 권한 모음입니다.

버킷의 IAM 정책 설정 및 관리

회원

역할이 부여된 주 구성원입니다.

버킷의 IAM 정책 설정 및 관리

라벨

키

labels 태그 및 라벨

값

labels 태그 및 라벨

맞춤 게재위치 구성

데이터 위치

customPlacementConfig.dataLocations[] 이중 리전

CORS

원본

cors[].origin[] 교차 출처 리소스 공유 (CORS)

메서드

cors[].method[] CORS 작동 원리

응답 헤더

cors[].responseHeader[] CORS 구성의 구성요소

최대 수명(초)

cors[].maxAgeSeconds[] CORS 구성의 구성요소

로그 버킷

logging.logBucket 사용량 로그 및 스토리지 로그

로그 객체 프리픽스

logging.logObjectPrefix 사용량 로그 및 스토리지 로그

웹사이트

기본 페이지 접미사

website.mainPageSuffix 권장사항: 특수 페이지 할당

찾을 수 없는 페이지

website.notFoundPage 권장사항: 특수 페이지 할당

공개 액세스 방지

iamConfiguration.publicAccessPrevention 공개 액세스 방지

소프트 삭제 정책

보관 기간(초)

softDeletePolicy.retentionDurationSeconds 소프트 삭제