주:
- 이 자습서에서는 Oracle Cloud에 액세스해야 합니다. 무료 계정에 등록하려면 Oracle Cloud Infrastructure Free Tier 시작하기를 참조하십시오.
- Oracle Cloud Infrastructure 자격 증명, 테넌시 및 구획에 예제 값을 사용합니다. 실습을 완료했으면 이러한 값을 자신의 클라우드 환경과 관련된 값으로 대체하십시오.
Oracle Cloud Infrastructure Compute 인스턴스에 PostgreSQL 클러스터 배치
소개
PostgreSQL는 오픈 소스 객체 관계형 데이터베이스 관리 시스템입니다. 확장성이 뛰어나고 확장성이 뛰어나며 다양한 기능을 갖추고 있습니다. PostgreSQL는 여러 데이터 센터에서 데이터 복제를 지원합니다.
이 사용지침서에서는 Oracle Cloud Infrastructure(OCI) Compute 인스턴스에 대한 PostgreSQL 클러스터의 일반적인 3노드 배포를 보여줍니다. 이 자습서에서는 서버가 마스터 및 대기 구성으로 구성되고 스트리밍 복제를 사용합니다.
자동화 지침은 terraform-oci-arch-postgresql에서 확인할 수 있습니다.
주:
postgis34
및pgvector
가 자동으로 설치됩니다.
아키텍처 다이어그램
목표
-
3노드 PostgreSQL 클러스터를 배치합니다.
-
요구 사항에 맞게 코드를 수정합니다.
필요 조건
-
OCI 테넌시에서 VCN(가상 클라우드 네트워크), 인터넷 게이트웨이, 경로 테이블, 보안 목록, 서브넷 및 인스턴스 리소스를 관리할 수 있는 권한입니다.
-
다음 리소스를 만듭니다.
- 1 VCN,
- 1 Subnet,
- 1 인터넷 게이트웨이,
- 1개의 경로 규칙 및
- 컴퓨트 인스턴스 3개(기본 마스터 PostgreSQL 인스턴스 1개 및 PostgreSQL의 대기 인스턴스 2개).
작업 1: OCI 리소스 관리자를 사용하여 Terraform 코드 배치
배치는 Terraform CLI(명령행 인터페이스) 또는 OCI Resource Manager를 사용하여 두 가지 방법으로 수행할 수 있습니다. 이 사용지침서에서는 OCI Resource Manager를 사용합니다.
terraform CLI의 경우 저장소 설명서 terraform-oci-arch-postgresql을 참조하십시오.
-
다음 이미지를 눌러 리소스를 배치할 OCI Resource Manager 프로세스를 시작합니다.
-
아직 사인인하지 않은 경우 테넌시 및 사용자 인증서를 입력하고, 조건을 검토하고 수락하고, 스택이 상주할 영역, 컴파트먼트를 선택하고, 다음을 눌러 변수 구성의 다음 단계로 이동합니다.
-
변수 구성에 다음 정보를 입력하여 변수를 구성합니다.
- 구획: 리소스를 배치할 컴파트먼트를 선택합니다.
- 마스터용 가용성 도메인 PostgreSQL: 마스터 컴퓨트 인스턴스에 대한 가용성 도메인을 선택합니다.
- PostgreSQL 버전: 버전 9.6, 10, 11, 12 또는 13을 선택할 수 있습니다.
- PostgreSQL 비밀번호: PostgreSQL에 액세스하려면 비밀번호를 설정합니다.
- 먼저 배치 PostgreSQL HotStandby: 첫번째 대기를 배치하려면 선택합니다.
- 두번째 PostgreSQL HotStandby 배치: 두번째 대기를 배치하려면 선택합니다.
- 프라이빗 서브넷에 생성: 프라이빗 서브넷에 인스턴스를 생성하려면 선택합니다.
참고:
- 첫번째와 두번째 PostgreSQL HotStandby를 배치하면 하나의 노드, 두 노드 또는 세 개의 노드를 배치할 수 있습니다.
- 프라이빗 서브넷에서 생성하도록 선택하면 액세스를 허용하기 위해 OCI 배스천 서비스가 생성됩니다.
-
추가 구성 가능 변수 정보를 입력하려면 고급 옵션 표시를 누릅니다.
- 네트워크 선택적 구성: VCN 및 서브넷 CIDR을 지정하고 DRG(동적 경로 지정 게이트웨이)를 생성할지 여부를 지정할 수 있습니다.
- 컴퓨트, 스토리지 및 백업 선택적 구성: PostgreSQL 인스턴스에 액세스하고 백업을 구성할 수 있는 퍼블릭 SSH 키를 추가할 수 있습니다.
- PostgreSQL 마스터 선택적 구성: 가변 구성에 대한 PostgreSQL 마스터 인스턴스 결함 도메인, 구성, CPU 및 메모리를 지정합니다.
- PostgreSQL HotStandby1 선택적 구성: 가변 구성에 대한 PostgreSQL 첫번째 대기 인스턴스 가용성 도메인, 결함 도메인, 구성, CPU 및 메모리를 지정합니다.
- PostgreSQL HotStandby2 선택적 구성: 가변 구성에 대한 PostgreSQL 두번째 대기 인스턴스 가용성 도메인, 결함 도메인, 구성, CPU 및 메모리를 지정합니다.
-
다음을 눌러 정보를 검토합니다.
참고:
- 먼저 계획을 실행하려면 적용 실행을 선택 해제합니다.
- 적용 실행을 선택하면 terraform apply 명령이 트리거되며 리소스 프로비전이 자동으로 시작됩니다.
-
Create를 누릅니다.
작업 2: 배치 삭제
리소스를 삭제하려면 Stack Details 페이지로 이동하고 Destroy를 누릅니다.
PostgreSQL 설치 및 구성 방법 이해
이 정보는 PostgreSQL 작동 방식을 수정해야 하는 경우에 유용합니다.
그것은 당신이 이해하는 데 도움이 될 것입니다 :
-
정확히 설치 및 구성 위치입니다.
-
스크립트가 실행되는 순서입니다.
-
각 스크립트가 수행하는 작업에 대한 상위 레벨 개요입니다.
주: 자동화를 사용자 정의하는 방법은 다루지 않습니다. 변경 사항에 따라 여러 Terraform 파일에서 수정해야 할 수도 있습니다.
-
이 자습서에서 사용하는 중요한 파일은 다음과 같습니다.
remote.tf
: 스크립트가 각 PostgreSQL 인스턴스에 배치되는 Terraform 파일입니다.scripts/postgresql_install_binaries.sh
: PostgreSQL 서버와 일부 확장을 설치하고 방화벽을 구성합니다.scripts/postgresql_master_initdb.sh
: 데이터베이스를 초기화합니다.scripts/postgresql_master_setup.sh
: PostgreSQL standby1에 대한 복제본을 구성합니다.scripts/postgresql_master_setup2.sh
: PostgreSQL standby2에 대한 복제본을 구성합니다.scripts/postgresql_standby_setup.sh
: 방화벽, 최대 접속,replica.conf
편집과 같은 복제본에 대한 추가 구성입니다.
-
스크립트는 다음 순서로 실행됩니다.
scripts/postgresql_install_binaries.sh
: PostgreSQL 마스터 인스턴스에서 실행됩니다.scripts/postgresql_master_initdb.sh
PostgreSQL 마스터 인스턴스에서 실행됩니다.scripts/postgresql_install_binaries.sh
는 PostgreSQL standby1 인스턴스에서 실행됩니다.scripts/postgresql_install_binaries.sh
는 PostgreSQL standby2 인스턴스에서 실행됩니다.scripts/postgresql_master_setup.sh
PostgreSQL 마스터 인스턴스에서 실행됩니다.scripts/postgresql_master_setup2.sh
PostgreSQL 마스터 인스턴스에서 실행됩니다.scripts/postgresql_standby_setup.sh
는 PostgreSQL standby1 인스턴스에서 실행됩니다.scripts/postgresql_standby_setup.sh
는 PostgreSQL standby2 인스턴스에서 실행됩니다.
확인
- 작성자 - Gabriel Feodorov(수석 클라우드 엔지니어)
추가 학습 자원
docs.oracle.com/learn에서 다른 실습을 탐색하거나 Oracle Learning YouTube 채널에서 더 많은 무료 학습 콘텐츠에 액세스하세요. 또한 Oracle Learning Explorer가 되려면 education.oracle.com/learning-explorer을 방문하십시오.
제품 설명서는 Oracle Help Center를 참조하십시오.
Deploy a PostgreSQL Cluster on Oracle Cloud Infrastructure Compute Instances
G25662-01
January 2025
Copyright ©2025, Oracle and/or its affiliates.