Data Connect 프로젝트는 다음 두 가지 주요 인프라 요소로 구성됩니다.
- 하나 이상의 Data Connect 서비스 인스턴스
- 하나 이상의 PostgreSQL용 Cloud SQL 인스턴스
이 가이드에서는 Data Connect 서비스 인스턴스를 설정하고 관리하는 방법을 설명하고 연결된 Cloud SQL 인스턴스를 관리하는 방법을 소개합니다.
Firebase Data Connect의 지역 구성
Data Connect를 사용하는 프로젝트에는 위치 설정이 필요합니다.
새 Data Connect 서비스 인스턴스를 만들면 서비스 위치를 선택하라는 메시지가 표시됩니다.
사용 가능한 위치
Data Connect 서비스는 다음 리전에서 만들 수 있습니다.
- asia-east1
- asia-east2
- asia-northeast1
- asia-northeast2
- asia-northeast3
- asia-south1
- asia-southeast1
- asia-southeast2
- australia-southeast1
- australia-southeast2
- europe-central2
- europe-north1
- europe-southwest1
- europe-west1
- europe-west2
- europe-west3
- europe-west4
- europe-west6
- europe-west8
- europe-west9
- me-west1
- northamerica-northeast1
- northamerica-northeast2
- southamerica-east1
- southamerica-west1
- us-central1
- us-east1
- us-east4
- us-south1
- us-west1
- us-west2
- us-west3
- us-west4
Data Connect 서비스 인스턴스 관리
서비스 만들기
새 서비스를 만들려면 Firebase 콘솔을 사용하거나 Firebase CLI를 사용하여 로컬 프로젝트 초기화를 실행합니다. 이 워크플로는 새 Data Connect 서비스를 만듭니다.
이 흐름에서는 다음 작업도 안내합니다.
- 새 Cloud SQL 인스턴스 프로비저닝 (무료 등급)
- 기존 Cloud SQL 인스턴스를 Data Connect에 연결 (Blaze 요금제)
사용자 관리
Data Connect는 최소 권한의 원칙 (각 사용자 또는 서비스 계정에 필요한 기능을 지원하는 데 필요한 최소 권한 부여) 및 역할 기반 액세스 제어 (RBAC) (데이터베이스 권한을 관리하는 사전 정의된 역할로 보안 관리 간소화)의 개념에 따라 사용자 액세스를 관리하는 도구를 제공합니다.
프로젝트 구성원을 프로젝트의 Data Connect 인스턴스를 수정할 수 있는 사용자로 추가하려면 Firebase 콘솔을 사용하여 적절한 사전 정의된 사용자 역할을 선택합니다.
이러한 역할은 Identity and Access Management (IAM)를 사용하여 권한을 부여합니다. 역할은 권한 모음입니다. 프로젝트 구성원에게 역할을 할당하면 역할에 포함된 모든 권한이 프로젝트 구성원에게 부여됩니다. 자세한 내용은 다음을 참고하세요.
특정 워크플로를 사용 설정할 역할 선택
IAM 역할은 Firebase CLI 워크플로를 사용해 Data Connect 프로젝트를 관리할 수 있도록 합니다.
CLI 명령어, 기타 워크플로 | 필요한 역할 |
---|---|
firebase init dataconnect
|
|
firebase deploy -–only dataconnect
|
|
firebase dataconnect:sql:diff
|
|
firebase dataconnect:sql:migrate |
|
firebase dataconnect:sql:grant
|
|
Data Connect 서비스 성능 모니터링
서비스 성능 파악
Data Connect 서비스와 PostgreSQL용 Cloud SQL 서비스의 성능이 미리보기 중에 환경에 영향을 줄 수 있습니다.
- Data Connect 서비스의 경우 분당 GraphQL 및 커넥터 요청이 1,200개로 제한되어 쿼리 및 변형을 호출하고 실행할 수 있는 속도에 영향을 미칩니다.
- PostgreSQL용 Cloud SQL 서비스의 경우 할당량 및 한도 문서의 일반적인 안내를 참고하세요.
서비스 성능, 사용량, 결제 모니터링
Firebase 콘솔에서 전 세계적으로 그리고 작업별로 요청, 오류, 작업 비율을 모니터링할 수 있습니다.
Cloud SQL 인스턴스 관리
무료 체험판 제한사항
무료 체험판에서는 다음과 같은 PostgreSQL용 Cloud SQL 기능이 지원되지 않습니다.
- 15.x가 아닌 PostgreSQL 버전
- 기존 PostgreSQL용 Cloud SQL 인스턴스 사용
- db-f1-micro와 다른 머신 등급
- 스토리지, 메모리, CPU와 같은 인스턴스 리소스 변경
- 읽기 복제본
- 비공개 인스턴스 IP 주소
- 고가용성 (다중 영역): 단일 영역 인스턴스만 지원됨
- Enterprise Plus 버전
- 자동 백업
- 스토리지 자동 증가
Cloud SQL 인스턴스 관리
일반적으로 Google Cloud 콘솔을 사용하여 Cloud SQL 인스턴스를 관리하고 다음 워크플로를 실행할 수 있습니다.
- Cloud SQL 인스턴스 중지 및 다시 시작
- Cloud SQL 데이터베이스 만들기 및 삭제 (인스턴스 내)
- 플래그를 사용하여 PostgreSQL 데이터베이스 인스턴스를 시작하고 다양한 확장 프로그램을 사용합니다.
- Google Cloud 콘솔에서 Cloud SQL 관측 가능성 기능을 사용하여 성능 모니터링
- IAM, Secret Manager, 데이터 암호화, 인증 프록시와 같은 기능으로 Cloud SQL 액세스 및 보안 관리
- Cloud SQL 사용자를 추가, 삭제, 관리합니다.
이러한 워크플로 및 기타 워크플로는 PostgreSQL용 Cloud SQL 문서를 참고하세요.
Firebase CLI 및 Google Cloud 도구를 사용하여 PostgreSQL 사용자 역할 부여
Data Connect는 최소 권한의 원칙 (각 사용자 또는 서비스 계정에 필요한 기능을 지원하는 데 필요한 최소 권한 부여) 및 역할 기반 액세스 제어 (RBAC) 개념 (데이터베이스 권한을 관리하는 사전 정의된 역할로 보안 관리 간소화)에 따라 사용자 액세스를 관리하는 도구를 제공합니다.
경우에 따라 Cloud Run, Cloud Functions 또는 GKE와 같은 원하는 SQL 클라이언트를 통해 Data Connect에서 관리하는 Cloud SQL 데이터베이스에 직접 연결할 수 있습니다.
이러한 연결을 사용 설정하려면 다음과 같이 SQL 권한을 부여해야 합니다.
- Google Cloud 콘솔에서 또는 gcloud CLI를 사용하여 인스턴스에 연결해야 하는 사용자 또는 서비스 계정에
roles/cloudsql.client
IAM 역할을 할당합니다. - Firebase CLI를 사용하여 필요한 PostgreSQL 역할 부여
Cloud SQL IAM 역할 할당
PostgreSQL용 Cloud SQL을 사용하여 IAM 역할 roles/cloudsql.client
를 할당하는 방법에 관한 자세한 내용은 역할 및 권한을 참고하세요.
PostgreSQL 역할 부여
Firebase CLI를 사용하면 firebase dataconnect:sql:grant
명령어로 프로젝트와 연결된 사용자 또는 서비스 계정에 사전 정의된 PostgreSQL 역할을 부여할 수 있습니다.
예를 들어 작성자 역할을 부여하려면 CLI에서 다음 명령어를 실행합니다.
firebase dataconnect:sql:grant --role writer
자세한 내용은 CLI 참조 가이드를 참고하세요.