Amazon S3를 Aurora PostgreSQL 호환 DB 클러스터와 통합하려면 어떻게 해야 합니까?

2분 분량
0

Amazon Aurora PostgreSQL 호환 에디션 DB 클러스터에서 Amazon Simple Storage Solution(Amazon S3) 통합 기능을 켜고 싶습니다.

간략한 설명

Amazon S3 버킷에 저장된 데이터를 Aurora PostgreSQL 호환 DB 클러스터의 테이블로 가져올 수 있습니다. 먼저 Aurora PostgreSQL과 호환되는 aws_s3 확장 프로그램을 설치합니다. 이 확장 프로그램은 S3 버킷에서 데이터를 가져오는 데 필요한 함수를 제공합니다. 데이터는 쉼표로 구분된 값(CSV) 파일, 텍스트 파일(txt) 또는 압축(gzip) 파일에 포함될 수 있습니다. Amazon S3에서 Aurora PostgreSQL 호환 환경으로 가져오려면 데이터베이스에서 PostgreSQL 버전 10.7 이상이 실행되고 있어야 합니다.

Aurora DB 클러스터를 S3 버킷과 통합하려면 다음을 수행합니다.

  • aws_s3 확장 프로그램 설치
  • S3 버킷에 대한 액세스 권한 설정
  • Aurora 클러스터에 옵션 추가
  • psql 쿼리를 사용하여 데이터베이스에서 데이터를 가져오거나 내보내기

해결 방법

aws_s3 확장 프로그램 설치

데이터베이스 연결을 허용하는 aws_s3 확장을 설치하려면 다음 명령을 실행합니다.

postgres=> CREATE EXTENSION aws_s3 CASCADE;

aws_s3가 설치되었는지 확인하려면 psql \dx 메타 명령을 사용합니다. 또는 원하는 DB 클라이언트 도구에서 다음 쿼리를 사용할 수 있습니다.

select * from pg_available_extensions where installed_version is not null;

S3 버킷에 대한 액세스 권한 설정

Aurora PostgreSQL 호환 클러스터에 Amazon S3에 대한 액세스 권한을 부여하려면 AWS Identity and Access Management(IAM) 정책을 생성합니다. 이 정책은 DB 클러스터가 S3 버킷에 액세스할 수 있도록 하는 버킷 및 객체 권한을 제공합니다.

생성한 IAM 정책에 다음과 같은 필수 작업을 포함시킵니다. 이러한 작업을 통해 S3 버킷에서 DB 클러스터로 파일을 전송할 수 있습니다.

  • s3:GetObject
  • s3: ListBucket
  • s3:PutObject
  • s3:AbordMultipartUpload

자세한 내용은 Amazon S3 버킷에 대한 액세스 권한 설정을 참조하세요.

Aurora 클러스터에 옵션 추가

Amazon Relational Database Service(Amazon RDS) 콘솔이나 AWS Command Line Interface(AWS CLI)를 사용하여 클러스터에 IAM 역할을 추가합니다.

콘솔 사용

  1. Amazon RDS 콘솔에 로그인합니다.
  2. 탐색 창에서 수정하려는 PostgreSQL 클러스터를 선택합니다.
  3. 연결 및 보안(Connectivity & security) 탭을 선택합니다.
  4. IAM 역할 관리(Manage IAM roles) 섹션의 **이 인스턴스에 IAM 역할 추가(Add IAM roles to this instance)**에서 추가하려는 역할을 선택합니다.
  5. **기능(Feature)**에서 S3Export를 선택한 다음 **역할 추가(Add role)**를 선택합니다.

데이터베이스에서 데이터 가져오기 또는 내보내기

S3 버킷에서 PostgreSQL 클러스터로 데이터를 가져오거나 PostgreSQL 클러스터에서 S3 버킷으로 데이터를 내보냅니다.

자세한 내용은 Amazon S3에서 Amazon Aurora PostgreSQL로 데이터 내보내기 및 가져오기를 참조하세요.

이 단계를 완료한 후 aws_s3.table_import_from_s3를 사용하여 Amazon S3에서 Aurora PostgreSQL 호환 클러스터로 데이터를 가져옵니다. aws_s3.query_export_to_s3 함수를 사용하여 Aurora PostgreSQL 호환 클러스터에서 Amazon S3로 데이터를 내보낼 수 있습니다.


AWS 공식
AWS 공식업데이트됨 일 년 전