AWS RDS(Relational Database Service)에서 PostgreSQL DB 인스턴스 만들기

버전 2019.3부터 AWS 클라우드 플랫폼에서 외부 리포지토리를 호스팅할 수 있습니다. 이 항목에서는 Tableau Server 외부 리포지토리로 사용할 AWS RDS PostgreSQL DB 인스턴스를 만드는 방법에 대해 설명합니다.

외부 리포지토리에 사용할 수 있는 전체 호스트 목록을 보려면 Tableau Server 외부 리포지토리를 참조하십시오.

요구 사항 및 권장 사항

  • 최소한 8vCPU 및 32GB RAM이 포함된 인스턴스를 사용합니다. 이는 Tableau Server 외부 리포지토리에 사용하기 위한 최소 권장 AWS RDS 인스턴스 크기이지만 정확한 요구 사항은 사용자 요구 사항 및 사용량에 따라 달라집니다. 우수한 성능을 위해 16 vCPU 및 128GB RAM Amazon RDS 메모리 최적화 인스턴스 유형을 사용하는 것이 좋습니다.

    처음에 작은 인스턴스 유형으로 시작하고 나중에 더 큰 인스턴스 유형이 필요해지면 기존 RDS 인스턴스를 업그레이드할 수 있습니다. 자세한 내용은 RDS 인스턴스 업그레이드를 참조하십시오.

    Tableau Server와 외부 PostgreSQL DB 인스턴스 간의 SSL 연결을 사용한 보안 통신은 필수는 아니지만 권장됩니다.

  • Tableau Server 클러스터의 모든 노드가 PostgreSQL DB 인스턴스에 연결할 수 있어야 합니다. 이렇게 하는 방법 중 하나는 PostgreSQL DB 인스턴스를 Tableau Server 클러스터의 모든 노드가 액세스할 수 있는 사용 권한을 가진 보안 그룹의 멤버로 만드는 것입니다.

  • PostgreSQL의 버전은 로컬로 설치할 때 Tableau Server에서 사용하는 버전과 일치해야 합니다. Tableau Server 2020.4는 PostgreSQL 버전 12를 사용합니다.

  • Tableau는 내부 데이터베이스 사용자가 내부에서 사용할 비밀번호를 자동으로 생성합니다. 이러한 비밀번호는 32자 길이이며 소문자와 숫자로 구성됩니다. 관리자가 액세스하거나 구성할 수 없습니다. 외부 PostgreSQL 인스턴스의 경우 관리자가 비밀번호 정책을 설정할 수 있습니다(사용 중인 플랫폼에 따라 다름). 숫자 및 소문자 이외의 문자 유형을 포함하는 정책을 지정하면 외부 리포지토리를 사용하도록 Tableau Server를 구성하는 동안 오류가 발생할 수 있습니다.

Amazon RDS에서 PostgreSQL DB 인스턴스 만들기

1단계: 매개 변수 그룹 만들기

postgresql.conf 파일에서 로컬 PostgreSQL 인스턴스에 대해 설정한 PostgreSQL 매개 변수는 DB 인스턴스의 DB 매개 변수 그룹에서 유지 관리됩니다. DB 인스턴스를 만들 경우 관련 DB 매개 변수 그룹의 매개 변수가 로드됩니다.

Tableau Server 수준에서 대부분의 매개 변수를 기본값으로 설정할 수 있습니다. 특정 성능 또는 로깅 요구 사항이 있는 경우 매개 변수 값을 수정할 수 있지만 다음 매개 변수를 기본값으로 두고 변경하지 않는 것이 좋습니다.

  • standard_conforming_strings

  • escape_string_warning

또한 성능 문제를 방지하기 위해 work_mem 값을 16384 이상으로 설정하는 것이 좋습니다.

PostgreSQL 매개 변수에 대한 자세한 내용과 전체 목록은 AWS 사이트에서 PostgreSQL 파라미터 작업(링크가 새 창에서 열림)을 참조하십시오.

2단계: Amazon RDS에서 PostgreSQL DB 인스턴스 만들기

새 PostgreSQL DB 인스턴스를 만들려면 Amazon 설명서 사이트(링크가 새 창에서 열림)에 제공된 지침을 따르십시오.

다음은 새 PostgreSQL DB 인스턴스에 대한 구성 옵션과 권장 값입니다.

  • Instance Specifications(인스턴스 사양)

    • 1단계에서 만든 매개 변수 그룹을 사용합니다.
    • 사용 중인 Tableau Server 버전의 호환되는 PostgreSQL 버전을 사용합니다. Tableau Server 버전과 호환되는 PostgreSQL 버전의 전체 목록은 제품 호환성을 참조하십시오.
    • db.m4.2xlarge 이상의 DB 인스턴스 클래스를 사용합니다.
    • 최소 100GB의 저장소를 할당합니다.
    • 저장소 유형 및 Provisioned IOPS: 기본값을 유지합니다(로드 테스트에 따라 권장 사항이 달라질 수 있음).
  • Settings(설정)

    • 마스터 사용자 이름으로 rails 사용해야 합니다.

      Tableau Server에서 외부 리포지토리가 올바르게 작동하려면 이 요구 사항이 충족되어야 합니다.

    • AWS의 요구 사항을 충족하는 암호를 선택합니다.

  • Network and Security(네트워크 및 보안)

    • 모든 Tableau Server 노드에서 RDS 인스턴스에 연결할 수 있는지 확인하십시오. 대부분 모든 노드에서 액세스할 수 있도록 허용하는 보안 그룹을 만들어 처리합니다.

  • Database Options(데이터베이스 옵션)

    • 초기 데이터베이스를 만들지 마십시오. Tableau Server가 RDS 인스턴스에서 필요한 데이터베이스를 만들므로 데이터베이스 이름은 비워 두어야 합니다.

    • 포트는 아무 값이나 사용할 수 있지만 기본값인 5432로 유지하는 것이 좋습니다.

    • DB Parameter Group(DB 매개 변수 그룹)을 1단계에서 만든 매개 변수 그룹으로 설정합니다.

    • IAM DB 인증을 사용 안 함으로 둡니다.

  • Encryption(암호화)

    • 암호화를 사용할지 여부를 선택할 수 있습니다.

  • Backup(백업)

    • 이것은 Tableau Server의 백업이 아니라 AWS의 자동화된 백업을 위한 것입니다. 요구 사항을 충족하는 설정을 지정할 수 있습니다.

  • Monitoring(모니터링)

    • 요구 사항에 따라 설정을 지정할 수 있습니다.

  • Log Exports(로그 내보내기)

    • 요구 사항에 따라 설정을 지정할 수 있습니다.

  • Maintenance(유지 관리)

    • 자동 부 버전 업그레이드를 사용하지 않도록 설정합니다. Tableau Server는 특정 버전의 PostgreSQL을 사용하도록 작성되었습니다. 필요한 경우 Tableau Server 업그레이드 중에 PostgreSQL 버전을 업그레이드하라는 메시지가 표시됩니다.

  • Delete Protection(삭제 방지)

    • 요구 사항에 따라 설정을 지정할 수 있습니다.

3단계: PostgresSQL DB 인스턴스 끝점 가져오기

PostgreSQL 데이터베이스 인스턴스를 만든 후 AWS에 의한 초기화가 완료될 때까지 인스턴스를 사용할 수 없으며 이 과정에 몇 분 정도 걸릴 수 있습니다. 인스턴스가 준비되면 Tableau Server 리포지토리에 이 인스턴스를 사용하도록 Tableau Server를 구성하는 데 사용할 끝점 정보를 가져옵니다.

4단계: SSL 인증서 파일(.pem 파일) 다운로드

Tableau Server와 외부 리포지토리 간의 SSL을 사용한 보안 연결은 필수는 아니지만 권장됩니다.

Tableau Server와 외부 리포지토리 간에 보안 연결을 설정하지 않으려는 경우 외부 DB 인스턴스를 Tableau Server 리포지토리로 사용하도록 Tableau Server를 구성할 때 .pem 파일이 필요합니다. 자세한 내용은 SSL을 사용하여 DB 인스턴스에 대한 연결 암호화(링크가 새 창에서 열림)를 참조하십시오.

Tableau Server와 외부 리포지토리 간에 보안 연결을 사용할 필요가 없는 경우 암호화되지 않은 연결을 허용하도록 RDS 인스턴스를 구성해야 합니다.

중요: RDS 인스턴스 SSL 인증서의 계획된 만료의 일부로, RDS 인스턴스를 새 인증서 파일로 업데이트해야 하는 경우 Tableau Server 설정도 새 인증서 파일을 사용하도록 업데이트해야 합니다. 이 작업은 최신 파일을 다운로드한 후 tsm topology external-services repository replace-host 명령을 실행하고 새 인증서 파일을 제공하여 수행할 수 있습니다.

PostgreSQL DB의 고가용성 구성

Tableau Server는 외부 리포지토리에 대한 고가용성을 관리하거나 설정하지 않습니다. Amazon RDS는 고가용성을 제공하고 장애 조치를 관리하는 데 사용할 수 있는 고가용성 기능을 제공합니다. 자세한 내용은 Amazon RDS 고가용성(링크가 새 창에서 열림)을 참조하십시오.

PostgreSQL DB의 재해 복구

재해가 발생한 경우 새 RDS 인스턴스를 설치해야 할 수 있습니다. 또한 RDS 인스턴스 관련 문제에서 복구하려면 다른 시나리오가 필요할 수 있습니다. 예를 들어 Tableau Server를 업그레이드한 경우 RDS 인스턴스에서 PostgreSQL 버전도 업그레이드해야 할 수 있습니다. PostgreSQL 업그레이드가 실패한 경우 새 RDS 인스턴스를 사용해야 할 수 있습니다. 이와 같은 시나리오에서 Tableau Server를 새 RDS 인스턴스를 사용하도록 구성하려면 다음 단계를 따릅니다.

  1. 스냅샷을 새 RDS 인스턴스로 복원합니다. AWS는 기존 RDS 인스턴스로의 스냅샷 복원을 지원하지 않습니다. RDS 스냅샷 백업 및 복원에 대한 자세한 내용은 Amazon RDS 백업 및 복원(영문)을 참조하십시오.

  2. 새 RDS 인스턴스에 대한 연결 정보를 포함하는 새 JSON 설정 파일을 만듭니다. JSON 설정 파일 만들기에 대한 자세한 내용은 외부 PostgreSQL 리포지토리와 함께 Tableau Server 설치1단계를 참조하십시오.

  3. tsm topology external-services repository replace-host command 명령을 사용하여 Tableau Server를 새 RDS 인스턴스를 가리키도록 설정합니다.

    tsm topology external-services repository replace-host 명령에 대한 자세한 내용은 tsm topology를 참조하십시오.

이 작업을 수행할 수 있는 사용자

Tableau Server 관리자만 Tableau Server를 외부 리포지토리를 사용하도록 구성할 수 있습니다. 또한 RDS 인스턴스를 만들기 위한 AWS 계정이 필요합니다.

다음 단계

새 설치: 외부 PostgreSQL 리포지토리와 함께 Tableau Server 설치

외부 리포지토리를 사용하도록 기존 Tableau Server를 구성하려면 Tableau Server 리포지토리 다시 구성을 참조하십시오.

피드백을 제공해 주셔서 감사합니다!귀하의 피드백이 제출되었습니다. 감사합니다!