이 문서에서는 Azure Database for PostgreSQL에 대한 개요를 제공하여 주요 기능 및 핵심 개념을 파악하는 데 도움을 줍니다.
Azure Database for PostgreSQL은 데이터베이스 관리 기능 및 구성 설정에 대한 세부적인 제어 및 유연성을 제공하도록 설계된 완전 관리형 데이터베이스 서비스입니다. 이 서비스는 요구 사항에 따라 유연성 및 서버 구성 사용자 지정을 제공합니다. 아키텍처를 사용하면 대기 시간을 낮추기 위해 데이터베이스 엔진을 클라이언트 계층과 함께 배치하고 단일 가용성 영역 및 여러 가용성 영역에서 고가용성을 선택할 수 있습니다. 또한 Azure Database for PostgreSQL 유연한 서버 인스턴스는 서버를 중지 및 시작하는 기능과 전체 컴퓨팅 용량이 지속적으로 필요하지 않은 워크로드에 이상적인 버스트 가능한 컴퓨팅 계층을 통해 비용 최적화 컨트롤을 제공합니다. 이 서비스는 다양한 주요 커뮤니티 버전의 PostgreSQL을 지원합니다. 지원되는 특정 버전에 대한 자세한 내용은 Azure Database for PostgreSQL에서 지원되는 버전의 PostgreSQL을 참조하세요. 이 서비스는 다양한 Azure 지역에서 사용할 수 있습니다.
Azure Database for PostgreSQL 유연한 서버 인스턴스는 다음 작업에 가장 적합합니다.
- 제어 및 사용자 지정이 필요한 애플리케이션 개발.
- 영역 중복 고가용성
- 관리되는 유지 관리 기간.
아키텍처 및 고가용성
Azure Database for PostgreSQL 배포 모델은 단일 가용성 영역 내 및 여러 가용성 영역에서 고가용성을 지원하도록 설계되었습니다. 아키텍처는 컴퓨팅과 스토리지를 분리합니다. 데이터베이스 엔진은 Linux 가상 머신 내의 컨테이너에서 실행되는 반면, 데이터 파일은 Azure Storage에 상주합니다. 스토리지는 데이터베이스 파일의 로컬 중복 동기 복사본 3개를 유지하여 데이터 내구성을 보장합니다.
영역 중복 고가용성을 구성하는 경우 서비스는 동일한 Azure 지역 내의 가용성 영역에서 웜 스탠바이 서버를 프로비전하고 유지 관리합니다. 데이터 손실을 방지하기 위해 원본 서버의 데이터 변경 내용이 대기 서버에 동기적으로 복제됩니다. 영역 중복 고가용성을 사용하면 계획되거나 계획되지 않은 장애 조치(failover) 이벤트가 트리거되면 대기 서버가 즉시 온라인 상태가 되고 들어오는 트랜잭션을 처리할 수 있습니다. 이 기능을 사용하면 다음 그림과 같이 여러 가용성 영역을 지원하는 Azure 지역 내에서 가용성 영역 오류로 인한 서비스 복원력을 사용할 수 있습니다.
자세한 내용은 고가용성을 참조하세요.
관리되는 유지 관리 기간을 사용하여 자동 패치
서비스는 기본 하드웨어, OS 및 데이터베이스 엔진의 자동화된 패치를 수행합니다. 패치에는 보안 및 소프트웨어 업데이트가 포함됩니다. 계획된 유지 관리 릴리스에는 PostgreSQL 엔진에 대한 부 버전 업그레이드가 포함됩니다. 패치 일정을 시스템 관리로 구성하거나 사용자 지정 일정을 정의할 수 있습니다. 유지 관리 일정 중에 패치가 적용되고 업데이트를 완료하려면 패치 프로세스의 일부로 서버를 다시 시작해야 할 수 있습니다. 사용자 지정 일정을 사용하면 패치 주기를 예측 가능하게 만들고 비즈니스에 미치는 영향을 최소화하면서 유지 관리 기간을 선택할 수 있습니다. 일반적으로 서비스는 연속 통합 및 릴리스의 일부로 월별 릴리스 일정을 따릅니다.
자동 백업
Azure Database for PostgreSQL은 자동으로 서버 백업을 만들고 해당 지역의 ZRS(영역 중복 스토리지)에 저장합니다. 백업 보존 기간 내의 모든 지점으로 서버를 복원할 수 있습니다. 기본 백업 보존 기간은 7일입니다. 필요에 따라 최대 35일 동안 보존을 구성할 수 있습니다. 모든 백업은 AES 256비트 암호화를 사용하여 암호화됩니다. 자세한 내용은 백업을 참조하세요.
몇 초 이내 성능 및 규모 조정
Azure Database for PostgreSQL은 버스트 가능, 범용 및 메모리 최적화의 세 가지 컴퓨팅 계층에서 사용할 수 있습니다. 버스트 가능 계층은 연속 컴퓨팅 용량이 없는 저비용 개발 및 낮은 동시성 워크로드에 가장 적합합니다. 범용 및 메모리 최적화 계층은 높은 동시성, 규모 및 예측 가능한 성능이 필요한 프로덕션 워크로드에 더 적합합니다. 한 달에 몇 달러 동안 작은 데이터베이스에 첫 번째 애플리케이션을 빌드한 다음 솔루션의 요구 사항에 맞게 크기를 원활하게 조정할 수 있습니다.
TCO를 낮추기 위해 서버 중지 및 시작
Azure Database for PostgreSQL을 사용하면 요청 시 서버를 중지하고 시작하여 TCO를 낮출 수 있습니다. 서버를 중지하면 컴퓨팅 계층 청구가 즉시 중지됩니다. 이 기능은 개발, 테스트 및 시간 제한 예측 가능한 프로덕션 워크로드 중에 상당한 비용을 절감할 수 있습니다. 서버를 더 빨리 다시 시작하지 않는 한 서버는 7일 동안 중지된 상태로 유지됩니다.
엔터프라이즈급 보안
Azure Database for PostgreSQL은 미사용 데이터의 스토리지 암호화에 FIPS 140-2 유효성이 검사된 암호화 모듈을 사용합니다. 이 서비스는 쿼리를 실행하는 동안 만든 백업 및 임시 파일을 포함하여 데이터를 암호화합니다. Azure Storage 암호화에 포함된 AES 256비트 암호화를 사용하며 키는 시스템 관리(기본값)일 수 있습니다. Azure Database for PostgreSQL은 기본적으로 적용되는 기본 전송 계층 보안(SSL/TLS)을 사용하여 이동 중인 데이터를 암호화합니다. 이 서비스는 TLS 버전 1.2 이상을 적용하고 지원합니다.
Azure Database for PostgreSQL 유연한 서버 인스턴스는 Azure 가상 네트워크를 사용하여 서버에 대한 전체 프라이빗 액세스를 허용합니다. Azure 가상 네트워크의 서버는 개인 IP 주소를 통해서만 연결할 수 있습니다. 가상 네트워크 통합을 사용하면 공용 액세스가 거부되고 공용 엔드포인트를 사용하여 서버에 연결할 수 없습니다.
모니터링 및 경고
Azure Database for PostgreSQL에는 기본 제공 성능 모니터링 및 경고 기능이 있습니다. 모든 Azure 메트릭의 빈도는 1분이고 각각 30일의 기록을 제공합니다. 메트릭에 대한 경고를 구성할 수 있습니다. 서비스는 리소스 사용률을 모니터링하도록 호스트 서버 메트릭을 노출하고, 쿼리 로그를 느리게 구성할 수 있도록 허용합니다. 이러한 도구를 사용하여 워크로드를 신속하게 최적화하고 최적의 성능을 얻을 수 있도록 서버를 구성할 수 있습니다.
기본 제공 PgBouncer
Azure Database for PostgreSQL 유연한 서버 인스턴스에는 기본 제공 PgBouncer과 연결 풀러 기능이 포함되어 있습니다. 이를 사용하도록 설정하고 동일한 호스트 이름 및 포트 6432를 사용하여 PgBouncer를 통해 Azure Database for PostgreSQL 유연한 서버 인스턴스에 애플리케이션을 연결할 수 있습니다. 사용하도록 설정하면 포트 8432의 탄력적 클러스터에도 PgBouncer를 사용할 수 있습니다.
Azure 지역
Azure에서 워크로드를 실행하는 이점 중 하나는 글로벌 연결입니다. Azure Database for PostgreSQL은 현재 다음 Azure 지역에서 사용할 수 있습니다.
| Region | Intel V3/V4/V5/AMD 컴퓨팅 | 영역 중복 HA | 같은 존 HA | 지역 중복 백업 |
|---|---|---|---|---|
| Australia Central | ✅ (v3/v4/v5만 해당) | ❌ | ✅ | ✅ |
| 오스트레일리아 중부 2 * | ✅ (v3/v4/v5만 해당) | ❌ | ✅ | ❌ |
| Australia East | ✅(모든 SKU) | ✅ | ✅ | ✅ |
| Australia Southeast | ✅ (v3/v4/v5만 해당) | ❌ | ✅ | ✅ |
| 오스트리아 동부 | ✅(모든 SKU) | ✅ | ✅ | ❌ |
| Brazil South | ✅ (v3/v4/v5만 해당) | ✅ $ | ✅ | ❌ |
| 브라질 남동부 * | ✅ (v3/v4/v5만 해당) | ❌ | ✅ | ❌ |
| Canada Central | ✅(모든 SKU) | ✅ | ✅ | ✅ |
| Canada East | ✅(모든 SKU) | ❌ | ✅ | ✅ |
| Central India | ✅ (v3/v4/v5만 해당) | ✅ $ | ✅ | ✅ |
| Central US | ✅ (v3/v4/v5만 해당) | ✅ | ✅ | ✅ |
| Chile Central | ✅(모든 SKU) | ✅ | ✅ | ❌ |
| 중국 동부 2 | ✅ (v3/v4만 해당) | ❌ | ✅ | ❌ |
| 중국 동부 3 | ✅ (v3/v4만 해당) | ❌ | ✅ | ✅ |
| 중국 북부 2 | ✅ (v3/v4만 해당) | ❌ | ✅ | ❌ |
| 중국 북부 3 | ✅ (v3/v4/v5만 해당) | ✅ | ✅ | ✅ |
| East Asia | ✅ (v3/v4/v5만 해당) | ✅ $ ** | ✅ | ✅ |
| East US | ✅(모든 SKU) | ✅ $ | ✅ | ✅ |
| 미국 동부 2 | ✅ (v3/v4만 해당) | ✅ $ | ✅ | ✅ |
| France Central | ✅ (v3/v4/v5만 해당) | ✅ | ✅ | ✅ |
| France South | ✅ (v3/v4/v5만 해당) | ❌ | ✅ | ✅ |
| 독일 북부 * | ✅ (v3/v4/v5만 해당) | ❌ | ✅ | ✅ |
| 독일 중서부 | ✅ (v3/v4/v5만 해당) | ✅ $ | ✅ | ✅ |
| Indonesia Central | ✅ (v3/v4만 해당) | ✅ | ✅ | ❌ |
| Israel Central | ✅ (v3/v4만 해당) | ✅ | ✅ | ❌ |
| Italy North | ✅ (v3/v4/v5만 해당) | ✅ | ✅ | ❌ |
| Japan East | ✅ (v3/v4만 해당) | ✅ | ✅ | ✅ |
| Japan West | ✅ (v3/v4/v5만 해당) | ❌ | ✅ | ✅ |
| Jio 인도 중부 | ✅(V3만) | ❌ | ✅ | ✅ |
| Jio 인도 서부 | ✅(V3만) | ❌ | ✅ | ✅ |
| Korea Central | ✅ (v3/v4/v5만 해당) | ✅ ** | ✅ | ✅ |
| Korea South | ✅ (v3/v4/v5만 해당) | ❌ | ✅ | ✅ |
| Malaysia West | ✅ (v3/v4만 해당) | ✅ | ✅ | ❌ |
| Mexico Central | ✅ (v3/v4만 해당) | ✅ $ | ✅ | ❌ |
| 뉴질랜드 북부 | ✅ (v3/v4/v5만 해당) | ✅ | ✅ | ❌ |
| 미국 중북부 | ✅(모든 SKU) | ❌ | ✅ | ✅ |
| North Europe | ✅ (v3/v4/v5만 해당) | ✅ $ | ✅ | ✅ |
| 노르웨이 동부 * | ✅(모든 SKU) | ✅ | ✅ | ✅ |
| Norway West | ✅ (v3/v4/v5만 해당) | ❌ | ✅ | ✅ |
| Poland Central | ✅ (v3/v4만 해당) | ✅ | ✅ | ❌ |
| Qatar Central | ✅ (v3/v4만 해당) | ✅ $ | ✅ | ❌ |
| 남아프리카 북부 | ✅ (v3/v4/v5만 해당) | ✅ | ✅ | ✅ |
| 남아프리카 공화국 서부 * | ✅ (v3/v4/v5만 해당) | ❌ | ✅ | ✅ |
| 미국 중남부 | ✅ (v3/v4만 해당) | ✅ $ | ✅ | ✅ |
| South India | ✅ (v3/v4/v5만 해당) | ✅ | ✅ | ✅ |
| Southeast Asia | ✅ (v3/v4만 해당) | ✅ $ | ✅ | ✅ |
| Spain Central | ✅ (v3/v4만 해당) | ✅ | ✅ | ❌ |
| Sweden Central | ✅ (v3/v4/v5만 해당) | ✅ | ✅ | ✅ |
| Switzerland North | ✅ (v3/v4/v5만 해당) | ✅ | ✅ | ✅ |
| 스위스 서부 * | ✅ (v3/v4/v5만 해당) | ❌ | ✅ | ✅ |
| 아랍에미리트 중부 * | ✅ (v3/v5만 해당) | ❌ | ✅ | ✅ |
| UAE North | ✅ (v3/v4/v5만 해당) | ✅ | ✅ | ✅ |
| UK South | ✅(모든 SKU) | ✅ | ✅ | ✅ |
| UK West | ✅(모든 SKU) | ❌ | ✅ | ✅ |
| US Gov 애리조나 | ✅ (v3/v4만 해당) | ❌ | ✅ | ❌ |
| US Gov 텍사스 | ✅ (v3/v4만 해당) | ❌ | ✅ | ❌ |
| US Gov 버지니아 | ✅ (v3/v4만 해당) | ✅ | ✅ | ✅ |
| 미국 중서부 | ✅ (v3/v4/v5만 해당) | ❌ | ✅ | ✅ |
| West Europe | ✅ (v3/v4/v5만 해당) | ✅ $ | ✅ | ✅ |
| West US | ✅(모든 SKU) | ❌ | ✅ | ✅ |
| 미국 서부 2 | ✅ (v3/v4만 해당) | ✅ $ | ✅ | ✅ |
| 미국 서부 3 | ✅(모든 SKU) | ✅ ** | ✅ | ❌ |
Note
애플리케이션에 영역 중복 고가용성이 필요한데 기본 Azure 지역에서 사용할 수 없는 경우 영역 중복 HA를 사용할 수 있는 동일한 지역 내의 다른 지역을 사용하는 것이 좋습니다(예: 미국 동부 2의 경우 미국 동부, 미국 중북부의 경우 미국 중부 등).
V6 SKU 제품군 제한 사항
- V6 SKU 제품군에서 버스트 가능한 계층으로의 크기 조정은 지원되지 않습니다.
- 버스트형 SKU 제품군에서 V6 SKU 제품군으로의 확장은 지원되지 않습니다.
- Virtual Network 통합은 지원되지 않습니다.
Migration
Azure Database for PostgreSQL은 커뮤니티 버전의 PostgreSQL을 실행합니다. 이 버전은 전체 애플리케이션 호환성을 제공하며 PostgreSQL 엔진에서 개발된 기존 애플리케이션을 Azure Database for PostgreSQL로 마이그레이션하려면 최소한의 리팩터링이 필요합니다.
- Azure Database Migration Service – 가동 중지 시간을 최소화하면서 Azure Database for PostgreSQL로 원활하고 간소화된 마이그레이션을 위해 Azure Database Migration Service를 사용합니다. Azure Database for PostgreSQL의 마이그레이션 서비스란?
- 덤프 및 복원 – pg_dump 및 pg_restore 같은 커뮤니티 도구를 사용하여 가동 중지 시간, 덤프 및 복원을 감당할 수 있는 오프라인 마이그레이션의 경우 마이그레이션하는 가장 빠른 방법을 제공합니다. 자세한 내용은 덤프 및 복원을 사용하여 마이그레이션을 참조하세요.
피드백 및 지원
Azure Database for PostgreSQL에 대한 질문이나 제안이 있는 경우 다음 채널을 통해 도움말 및 지원을 받을 수 있습니다.
- Azure 고객 지원팀에 문의하려면 Azure Portal에서 티켓을 제출하세요.
- 계정 관련 문제를 해결하려면 Azure Portal에서 지원 요청을 제출합니다.
- 피드백을 제공하거나 새 기능을 요청하려면 UserVoice를 통해 항목을 만드세요.