자동화된 흐름을 사용하여 AlloyDB 스트림 만들기

Datastream의 자동 스트림 설정 흐름을 사용하여 클러스터 개요 페이지에서 직접 PostgreSQL용 AlloyDB 클러스터의 데이터를 BigQuery에 복제할 수 있습니다. Datastream은 가상 프라이빗 클라우드 (VPC) 연결, 소스 데이터베이스 설정, 스트림 리소스를 자동으로 구성하여 설정을 간소화합니다.

Datastream은 배포에 보조 클러스터 또는 인스턴스가 포함되어 있더라도 기본 AlloyDB 클러스터의 기본 인스턴스에서 스트림을 만듭니다. 자동 흐름을 사용하려면 기본 인스턴스에 비공개 서비스 액세스가 사용 설정되어 있어야 하고 Private Service Connect 인터페이스를 사용해야 합니다.

무료 등급

Datastream을 사용하면 무료 등급을 사용하여 PostgreSQL용 AlloyDB에서 BigQuery로 스트리밍할 수 있으며, 매월 최대 100GiB의 변경 데이터 캡처 데이터가 무료로 제공됩니다. 자세한 내용은 Datastream 가격 책정을 참조하세요.

시작하기 전에

  1. Datastream, 네트워크 연결, Compute Engine API를 사용 설정합니다.
  2. Datastream 리소스를 만들고 관리하는 데 필요한 Identity and Access Management (IAM) 권한이 있는지 확인합니다. 자세한 내용은 다음 섹션을 참조하세요.
  3. 복제를 위해 PostgreSQL용 AlloyDB 소스 클러스터를 만들고 구성합니다. 자세한 내용은 CDC용 PostgreSQL용 AlloyDB 데이터베이스 구성을 참조하세요.
  4. 스트림을 만들기 전에 클러스터에 논리적 복제를 사용 설정하는 것이 좋습니다. 논리적 복제를 사용 설정하지 않으면 Datastream에서 사용 설정하여 소스 인스턴스를 다시 시작합니다.

    PostgreSQL용 AlloyDB 클러스터에 논리 복제를 사용 설정하는 방법은 CDC용 PostgreSQL용 AlloyDB 데이터베이스 구성을 참조하세요.

  5. 소스 클러스터가 비공개 서비스 액세스를 사용하도록 구성되어 있는지 확인합니다.

필수 권한

자동 스트림 생성 흐름을 사용하려면 다음 Identity and Access Management (IAM) 역할 또는 권한이 필요합니다.

  • serviceusage.services.enable, compute.networkAdmin: 필수 API를 사용 설정하고 네트워크 구성 작업을 수행합니다.
  • 클러스터 및 인스턴스 구성 태스크의 경우 alloydb.admin
  • Datastream이 대신 수행하는 관리 태스크의 경우 datastream.admin

선택한 데이터베이스의 모든 스키마와 테이블이 postgres 또는 alloydbsuperuser 역할에 부여되었는지 확인합니다. 자동화된 흐름에는 기본적으로 데이터베이스의 모든 스키마와 테이블이 포함되므로 자동으로 생성된 사용자에게 스키마 또는 테이블에 대한 권한이 없으면 스트림 생성이 실패합니다.

스트림 설정을 맞춤설정하는 경우 데이터베이스 관리자 사용자에게 복제하려는 스키마에 대한 GRANT 권한과 소스 데이터베이스 내의 관리 및 구조적 태스크에 대한 몇 가지 추가 권한도 필요합니다. 소스 데이터베이스에 연결하고 다음을 실행합니다.

  GRANT alloydbsuperuser TO "USER_NAME";
  ALTER ROLE "USER_NAME" CREATEROLE;
  GRANT SELECT on ALL TABLES IN SCHEMA "SCHEMA_NAME" to "USER_NAME" WITH GRANT OPTION;
  ALTER DEFAULT PRIVILEGES
  IN SCHEMA "SCHEMA_NAME"
  GRANT SELECT ON TABLES TO "USER_NAME" WITH GRANT OPTION;
  GRANT CREATE ON DATABASE "DATABASE_NAME" TO "USER_NAME";
  

향후 테이블

향후 테이블은 자동화된 흐름 중에 인증을 위해 계정 세부정보를 제공하는 사용자가 만든 경우에만 스트림에 자동으로 추가됩니다. 향후 테이블이 다른 사용자에 의해 생성되는 경우 해당 사용자는 Datastream 리더 사용자에게 테이블에 대한 SELECT 권한을 명시적으로 부여해야 합니다.

스트림 만들기 및 시작

스트림을 만들고 시작하려면 다음 단계를 수행합니다.

콘솔

  1. 소스 PostgreSQL용 AlloyDB 클러스터 개요 페이지로 이동합니다.

    PostgreSQL용 AlloyDB로 이동

  2. 데이터를 스트리밍할 기본 클러스터를 클릭합니다.

  3. 다음 방법 중 하나를 사용하여 스트림을 자동으로 만들고 시작합니다.

    • 클러스터 세부정보 페이지의 데이터 복제에서 스트림 시작을 클릭합니다.
    • 통합 섹션의 BigQuery에 데이터 복제에서 스트림 시작을 클릭합니다.
    • 런치패드 탭의 다른Google Cloud 제품과 원활하게 통합에서 BigQuery에 데이터 복제를 클릭합니다.
  4. 스트림을 시작하여 데이터 복제 창이 열립니다.

  5. 스트림 설정에서 만드는 스트림의 기본 설정을 검토합니다.

  6. 해당 드롭다운을 펼치고 다른 값을 선택하여 소스 데이터베이스를 변경할 수 있습니다.

  7. 스트림을 만들고 시작할 준비가 되면 스트림 시작을 클릭합니다.

스트림 설정을 변경해야 하는 경우 맞춤설정을 클릭합니다.

스트림 설정 맞춤설정

맞춤설정을 클릭하면 스트림 설정 맞춤설정 페이지가 표시됩니다. 스트림 설정을 맞춤설정하는 데 필요한 권한이 있는지 확인합니다.

시작하기

  1. 시작하기 페이지의 스트림 이름 필드에 스트림 이름을 입력합니다. 스트림 ID 필드가 자동으로 채워집니다.
  2. 인스턴스 사용자 계정 세부정보 제공 섹션에서 인증 방법을 선택합니다.

    • IAM 데이터베이스 인증: 이 옵션은 사용자에게 Identity and Access Management (IAM) 주 구성원 ID가 할당된 경우에 사용할 수 있습니다. 자세한 내용은 IAM 주 구성원을 참조하세요. 이 옵션을 선택하는 경우 사용자에게 alloydbsuperuser 역할과 CREATEROLE 권한을 수동으로 부여해야 합니다.

      1. Google Cloud 콘솔에서 PostgreSQL용 AlloyDB 클러스터 페이지로 이동합니다.

      PostgreSQL용 AlloyDB로 이동

      1. PostgreSQL용 AlloyDB 클러스터를 선택합니다.
      2. 탐색 메뉴에서 PostgreSQL용 AlloyDB Studio를 클릭하고 로그인합니다.
      3. 탐색기 창에서 사용자에 대해 다음 쿼리를 실행합니다.
    GRANT alloydbsuperuser TO "USER_NAME";
    ALTER ROLE "USER_NAME" CREATEROLE;
    • 기본 제공 데이터베이스 인증: alloydbsuperuser 역할이 있는 사용자의 사용자 이름과 비밀번호를 제공합니다. 사용자에게 alloydbsuperuser 역할이 없으면 IAM 데이터베이스 인증 섹션에 설명된 단계에 따라 수동으로 부여합니다. 기본 제공 데이터베이스 인증을 선택하는 경우 사용자에게 복제하려는 테이블에 대한 GRANT 권한이 있는지 확인합니다.
  3. 리전, 암호화, 라벨과 같은 추가 스트림 세부정보를 검토합니다. 필요한 경우 추가 스트림 세부정보 섹션을 펼쳐 변경사항을 적용합니다.

  4. 계속을 클릭합니다.

소스 구성

  1. 소스 구성 페이지에서 데이터를 복제할 데이터베이스를 선택합니다.

  2. 선택한 객체 목록은 기본적으로 사용 가능한 모든 객체를 선택합니다. 목록의 객체는 스트리밍에 필요한 권한이 있는 객체입니다. 선택한 객체를 변경하려면 목록에서 선택 항목을 수정합니다.

  3. 백필 모드 및 최대 동시 백필 연결 수와 같은 고급 스트림 구성을 검토합니다. 필요한 경우 고급 스트림 구성 섹션을 펼쳐 변경사항을 적용합니다.

  4. 계속을 클릭합니다.

대상 위치 구성

  1. 대상 구성 페이지에서 필요한 경우 BigQuery 대상 설정을 조정합니다. 자세한 내용은 스트림의 대상에 대한 정보 구성을 참조하세요.

스트림 만들기 및 시작

  1. 만들기 및 시작을 클릭하여 스트림을 만들고 시작하거나 시작하지 않고 만들기를 클릭하여 스트림을 만들고 나중에 Datastream에서 시작합니다.

  2. 자동으로 수행되는 작업에 관한 알림을 받습니다.

    • Datastream은 내부 IP 주소 범위, 서브네트워크, 네트워크 연결과 같은 필수 가상 프라이빗 클라우드 리소스를 만듭니다.
    • Datastream은 CDC용 테이블을 구성하고, 복제 슬롯을 설정하고, 데이터베이스의 모든 테이블에 대한 게시를 설정하고, 전용 Datastream 사용자를 만듭니다.
    • Datastream은 비공개 연결 구성과 소스 및 대상 연결 프로필을 만듭니다.
  3. 스트림을 만들고 시작할 것인지 확인합니다.

스트림 모니터링

Google Cloud 콘솔의 소스 인스턴스 개요 페이지에서 기본 스트림 세부정보를 모니터링할 수 있습니다. 이 페이지에는 스트림 상태, 스트림 이름, 대상 BigQuery 데이터 세트, 대상 프로젝트 식별자와 같은 정보가 표시됩니다.

개요 페이지에서 스트림 시작 또는 일시중지와 같은 작업을 수행할 수도 있습니다. 더 세분화된 모니터링 정보를 보려면 스트림 이름을 클릭하여 Datastream으로 이동합니다.

스트림 삭제

자동화된 흐름을 사용하여 만든 스트림을 삭제하면 PostgreSQL 복제 슬롯과 같은 일부 리소스가 자동으로 삭제됩니다. 하지만 수동으로 삭제해야 하는 리소스가 있습니다.

  • 간행물입니다. 게시는 데이터베이스 관리자 사용자를 사용하여 생성되며 소유자(기본적으로 게시를 생성한 사용자)만 삭제할 수 있습니다.
  • Datastream 리더 사용자입니다.
  • Datastream 소스 및 대상 연결 프로필
  • 비공개 연결 리소스
  • 서브네트워크 및 네트워크 연결과 같이 자동화된 흐름 중에 생성된 모든 네트워크 리소스

다음 단계