App Design Center에서 Pub/Sub 구성

Pub/Sub는 메시지를 생성하는 서비스를 해당 메시지를 처리하는 서비스에서 분리하는 확장 가능한 비동기 메시징 서비스입니다. 자세한 내용은 Pub/Sub란 무엇인가요?를 참고하세요.

이 문서에서는 앱 디자인 센터를 사용하여 Pub/Sub 주제와 구독을 만들 때 구성할 수 있는 연결과 매개변수를 설명합니다. 구성 매개변수는 terraform-google-pubsub Terraform 모듈을 기반으로 합니다.

구성요소 연결

다음 표에는 Pub/Sub 주제 또는 구독에 연결할 수 있는 구성요소와 애플리케이션 및 생성된 Terraform 코드의 결과 업데이트가 포함되어 있습니다.

연결된 구성요소

애플리케이션 업데이트

배경 정보

Compute Engine 인스턴스 템플릿

  • Compute Engine 인스턴스는 Pub/Sub 주제에 게시하고 Pub/Sub 주제에서 메시지를 수신할 수 있습니다.
  • Pub/Sub 주제 ID가 Compute Engine 인스턴스 템플릿 메타데이터에 추가됩니다.
인스턴스 템플릿

서비스 계정

  • 서비스 계정은 Pub/Sub 주제를 관리하고 구독에서 메시지를 가져올 수 있습니다.
  • roles/pubsub.editor 역할이 서비스 계정에 추가됩니다.
  • 서비스 계정 이름과 이메일 정보가 Pub/Sub 풀 구독에 추가됩니다.
IAM으로 액세스 제어

BigQuery

  • Pub/Sub 구독은 BigQuery 데이터 세트에 메시지를 쓸 수 있습니다.
  • BigQuery 데이터 세트 정보가 BigQuery 구독 필드에 추가됩니다.
BigQuery 구독

Cloud Run

  • Cloud Run 서비스는 메시지를 수신하거나 Pub/Sub 주제에 게시할 수 있습니다.
  • Pub/Sub 주제 ID가 Cloud Run 환경 변수에 추가됩니다.
  • roles/pubsub.publisherroles/pubsub.subscriber 역할이 Cloud Run 서비스 계정에 추가됩니다.
  • Cloud Run 서비스가 Pub/Sub 푸시 및 풀 구독 필드에 추가됩니다.
Cloud Run에서 Pub/Sub 사용 튜토리얼

Cloud Storage

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

필수 구성 매개변수

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

매개변수 이름

설명 및 제약 조건

배경 정보

프로젝트 ID

Pub/Sub 리소스를 배포할 프로젝트입니다.

구성요소 구성

주제

name 주제, 구독, 스키마, 스냅샷 이름 지정 가이드라인

선택적 구성 매개변수

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

기능

매개변수 이름

설명 및 제약 조건 정보

배경 정보

주제 만들기 기본적으로 주제가 생성됩니다. 주제를 만들지 않으려면 체크박스를 선택 해제합니다. 주제 만들기
구독 만들기 기본적으로 구독이 생성됩니다. 구독을 만들지 않으려면 체크박스를 선택 해제합니다. 구독 개요

주제 라벨

labels 라벨을 사용하여 사용량 보고
labels 라벨을 사용하여 사용량 보고

푸시 구독

이름 name 주제, 구독, 스키마, 스냅샷 이름 지정 가이드라인
확인 기한(초) ackDeadlineSeconds 확인 기한
푸시 엔드포인트 pushEndpoint 엔드포인트
X-goog-version 푸시된 메시지의 Pub/Sub API 형식입니다. 예를 들어 v1beta1입니다. attributes
OIDC 서비스 계정 이메일 serviceAccountEmail 인증
잠재고객 audience 인증
만료 정책 expirationPolicy 만료 기간
데드 레터 주제 deadLetterTopic 데드 레터 주제
확인된 메시지 보관 retainAckedMessages 확인된 메시지 보관
메시지 보관 기간 messageRetentionDuration 메시지 보관 기간
최대 배송 시도 횟수 maxDeliveryAttempts 데드 레터 주제
최대 백오프 maximumBackoff 재시도 정책
최소 백오프 minimumBackoff 재시도 정책
필터 filter 구독 필터
메시지 순서 지정 사용 설정 enableMessageOrdering 메시지 순서

풀 구독

이름 name 주제, 구독, 스키마, 스냅샷 이름 지정 가이드라인
확인 기한(초) ackDeadlineSeconds 확인 기한
데드 레터 주제 deadLetterTopic 데드 레터 주제
최대 배송 시도 횟수 maxDeliveryAttempts 데드 레터 주제
확인된 메시지 보관 retainAckedMessages 확인된 메시지 보관
메시지 보관 기간 messageRetentionDuration 메시지 보관 기간
최대 백오프 maximumBackoff 재시도 정책
최소 백오프 minimumBackoff 재시도 정책
필터 filter 구독 필터
메시지 순서 지정 사용 설정 enableMessageOrdering 메시지 순서
서비스 계정
1회만 전송 사용 설정 enableExactlyOnceDelivery 1회만 전송

BigQuery 구독

이름 name 주제, 구독, 스키마, 스냅샷 이름 지정 가이드라인
BigQuery 구독 만들기
주제 스키마 사용 useTopicSchema 주제 구독 사용
표 스키마 사용 useTableSchema 표 스키마 사용
메타데이터 쓰기 writeMetadata 메타데이터 쓰기
알 수 없는 필드 삭제 dropUnknownFields 알 수 없는 필드 삭제
확인 기한(초) ackDeadlineSeconds 확인 기한
확인된 메시지 보관 retainAckedMessages 확인된 메시지 보관
메시지 보관 기간 messageRetentionDuration 메시지 보관 기간
메시지 순서 지정 사용 설정 enableMessageOrdering 메시지 순서
만료 정책 expirationPolicy 만료 기간
필터 filter 구독 필터
데드 레터 주제 deadLetterTopic 데드 레터 주제
최대 백오프 maximumBackoff 재시도 정책
최소 백오프 minimumBackoff 재시도 정책

Cloud Storage 구독

이름 name 주제, 구독, 스키마, 스냅샷 이름 지정 가이드라인
버킷 버킷 버킷 이름
파일 이름 접두사 filenamePrefix 파일 이름 접두사, 접미사, 날짜 및 시간
파일 이름 서픽스 filenameSuffix 파일 이름 접두사, 접미사, 날짜 및 시간
Filename Datetime Format(파일 이름 날짜/시간 형식) filenameDatetimeFormat 파일 이름 접두사, 접미사, 날짜 및 시간
최대 기간 maxDuration 파일 일괄 처리
최대 바이트 maxBytes 파일 일괄 처리
최대 메시지 수 maxMessages 파일 일괄 처리
출력 형식 textConfig 또는 avroConfig 파일 형식
메타데이터 쓰기 writeMetadata 메타데이터 쓰기
주제 스키마 사용 useTopicSchema 주제 스키마 사용
확인 기한(초) ackDeadlineSeconds 확인 기한
확인된 메시지 보관 확인된 메시지 보관
메시지 보관 기간 messageRetentionDuration 메시지 보관 기간
메시지 순서 지정 사용 설정 enableMessageOrdering 메시지 순서
만료 정책 expirationPolicy 만료 기간
필터 filter 구독 필터
데드 레터 주제 deadLetterTopic 데드 레터 주제
최대 백오프 maximumBackoff 재시도 정책
최소 백오프 minimumBackoff 재시도 정책

구독 라벨

labels 라벨을 사용하여 사용량 보고
labels 라벨을 사용하여 사용량 보고
Topic Message Retention Duration(주제 메시지 보관 기간) topicMessageRetentionDuration 메시지 보관 기간
Topic KMS Key Name(주제 KMS 키 이름) kmsKeyName 고객 관리 암호화 키 (CMEK) 사용
BigQuery 프로젝트 역할 부여 기본적으로 BigQuery 메타데이터 뷰어BigQuery 데이터 편집자 역할은 기본 Pub/Sub 서비스 계정에 부여됩니다. 이러한 역할을 부여하지 않으려면 체크박스를 선택 해제합니다. Pub/Sub 서비스 계정에 BigQuery 역할 할당
토큰 생성 권한 부여 기본적으로 서비스 계정 토큰 생성자 역할은 기본 Pub/Sub 서비스 계정에 부여됩니다. 이 역할을 부여하지 않으려면 체크박스를 선택 해제합니다. Pub/Sub 인증 설정

스키마

이름 name 스키마에 대한 중요 정보
유형 type 스키마 유형
정의 정의 스키마 유형
인코딩 인코딩 스키마를 주제와 연결하기 위한 가이드라인