Azure Database for Postgres 유연한 서버에서 비용을 최적화하는 방법

적용 대상: Azure Database for PostgreSQL - 유연한 서버

Azure Database for PostgreSQL은 PostgreSQL Community Edition을 기반으로 하는 Microsoft 클라우드의 관계형 데이터베이스 서비스입니다. 예측 가능한 성능과 동적 확장성으로 중요 업무용 워크로드를 처리할 수 있는 완전히 관리되는 서비스 제공 데이터베이스입니다.

이 문서에서는 Azure Postgres 유연한 서버 비용을 최적화하기 위한 권장 사항 목록을 제공합니다. 이 목록에는 워크로드를 최적화하는 데 도움이 되는 디자인 고려 사항, 구성 검사 목록 및 권장 데이터베이스 설정이 포함됩니다.

  • 예약된 용량 가격 책정을 활용합니다.
  • 컴퓨팅을 확장/축소합니다.
  • Azure Advisor 권장 사항 사용
  • HA(고가용성) 및 DR(재해 복구) 요구 사항을 평가합니다.
  • 데이터베이스 및 서버를 통합합니다.
  • 비용 효율적인 지역 지역에 테스트 서버를 배치합니다.
  • 서버 시작 및 중지
  • 콜드 스토리지에 대한 이전 데이터를 보관합니다.

1. 예약된 용량 가격 책정 사용

Azure Postgres 예약 용량 가격 책정을 사용하면 1-3년 동안 특정 용량을 커밋할 수 있으므로 Azure Database for PostgreSQL 서비스를 사용하는 고객의 비용을 절감할 수 있습니다. 예약된 용량의 양과 기간의 길이에 따라 종량제 가격 책정에 비해 비용 절감이 중요할 수 있습니다. 고객은 vCore 및 스토리지를 증분하여 예약된 용량을 구매할 수 있습니다. 예약된 용량은 고객의 Azure 구독에 적용되는 동일한 지역의 Azure Database for PostgreSQL 서버에 대한 비용을 충당할 수 있습니다. Azure Postgres 유연한 서버에 대한 예약 가격 책정은 용량을 예약하는 고객을 위해 1년 동안 최대 40%, 3년 약정에 대해 최대 60%의 비용 절감을 제공합니다. 자세한 내용은 가격 계산기 | Microsoft Azure에 대해 자세히 알아보려면 Azure 예약이란?을 참조 하세요.

2. 컴퓨팅 확장/축소

Azure Database for PostgreSQL 서버의 리소스를 확장하거나 축소하면 비용을 최적화하는 데 도움이 될 수 있습니다. 필요에 따라 vCore 및 스토리지를 조정하여 필요한 리소스에 대해서만 비용을 지불합니다. 크기 조정은 Azure Portal, Azure CLI 또는 Azure REST API를 통해 수행할 수 있습니다. 컴퓨팅 리소스 크기 조정은 언제든지 수행할 수 있으며 서버를 다시 시작해야 합니다. 데이터베이스 사용 패턴을 모니터링하고 그에 따라 리소스를 조정하여 비용을 최적화하고 성능을 보장하는 것이 좋습니다. 자세한 내용은 Azure Database for PostgreSQL - 유연한 서버의 컴퓨팅 및 스토리지 옵션을 참조하세요.

비-prod 환경을 보수적으로 구성 - 비용 효율적인 SKU를 갖도록 유휴 개발/테스트/단계 환경을 구성합니다. 버스트 가능한 SKU를 선택하는 것은 지속적인 전체 용량이 필요하지 않은 워크로드에 적합합니다.

자세한 내용은 유연한 서버의 크기 조정 작업을 참조 하세요.

3. Azure Advisor 권장 사항 사용

Azure Advisor는 Azure 리소스를 최적화하는 데 도움이 되는 권장 사항을 제공하는 무료 서비스입니다. 리소스 구성 및 사용 패턴을 분석하고 Azure 리소스의 성능, 보안, 고가용성 및 비용 효율성을 개선하는 방법에 대한 권장 사항을 제공합니다. 권장 사항은 컴퓨팅, 스토리지, 네트워킹 및 데이터베이스를 비롯한 다양한 Azure 서비스를 다룹니다.

Azure Database for PostgreSQL의 경우 Azure Advisor는 데이터베이스의 성능, 가용성 및 비용 효율성을 개선하는 방법에 대한 권장 사항을 제공할 수 있습니다. 예를 들어 데이터베이스를 확장 또는 축소하거나, 읽기 복제본(replica) 사용하여 읽기 집약적 워크로드를 오프로드하거나, 예약된 용량 가격 책정으로 전환하여 비용을 절감하도록 제안할 수 있습니다. 또한 Azure Advisor는 미사용 암호화를 사용하도록 설정하거나 네트워크 보안 규칙을 사용하여 데이터베이스로 들어오는 트래픽을 제한하는 것과 같은 보안 모범 사례를 권장할 수 있습니다.

몇 번의 클릭만으로 권장 사항을 보고 구현할 수 있는 Azure Portal을 통해 Azure Advisor에서 제공하는 권장 사항에 액세스할 수 있습니다. Azure Advisor 권장 사항을 구현하면 Azure 리소스를 최적화하고 비용을 절감할 수 있습니다. 자세한 내용은 Azure Advisor for PostgreSQL - 유연한 서버를 참조하세요.

자세한 내용은 Azure Advisor for PostgreSQL을 참조 하세요.

4. HA(고가용성) 및 DR(재해 복구) 요구 사항 평가

Azure Database for PostgreSQL – 유연한 서버에는 추가 비용 없이 기본 제공 노드 및 스토리지 복원력이 있습니다. 노드 복원력을 통해 유연한 서버는 데이터 손실(즉, RPO 0)이 없고 애플리케이션을 다시 연결해야 한다는 점을 제외하고 연결 문자열 변경 없이 정상 VM으로 자동으로 장애 조치(failover)할 수 있습니다. 마찬가지로 데이터 및 트랜잭션 로그는 세 개의 동기 복사본에 저장되며 스토리지 손상을 자동으로 감지하고 수정 작업을 수행합니다. 대부분의 개발/테스트 워크로드 및 많은 프로덕션 워크로드의 경우 이 구성으로 충분합니다.

워크로드에 AZ 복원력과 낮은 RTO가 필요한 경우 영역 내 또는 AZ 간 대기 상태로 HA(고가용성)를 사용하도록 설정할 수 있습니다. 이렇게 하면 배포 비용이 두 배로 늘어나지만 더 높은 SLA도 제공됩니다. 애플리케이션에 대한 지역 복원력을 달성하기 위해 더 낮은 비용으로 더 높은 RTO로 GeoBackup을 설정할 수 있습니다. 또는 지역 재해가 발생한 경우 몇 분 안에 RTO를 제공하는 두 배의 비용으로 GeoReadReplica를 설정할 수 있습니다.

핵심은 전체 애플리케이션 스택의 요구 사항을 평가한 다음 유연한 서버에 적합한 구성을 선택하는 것입니다. 예를 들어 애플리케이션이 AZ 복원력이 없는 경우 AZ 복원력 구성에서 유연한 서버를 구성하여 얻을 수 있는 것은 없습니다.

자세한 내용은 유연한 서버의 고가용성 아키텍처를 참조 하세요.

5. 데이터베이스 및 서버 통합

데이터베이스 통합은 Azure Database for PostgreSQL 유연한 서버에 대한 비용 절감 전략일 수 있습니다. 여러 데이터베이스를 단일 유연한 서버 인스턴스로 통합하면 인스턴스 수와 Azure Database for PostgreSQL 실행의 전체 비용을 줄일 수 있습니다. 다음 단계에 따라 데이터베이스를 통합하고 비용을 절감합니다.

  1. 서버 액세스: 데이터베이스의 크기, 지역, 구성(CPU, 메모리, IOPS), 성능 요구 사항, 워크로드 유형 및 데이터 일관성 요구 사항을 고려하여 통합할 수 있는 서버를 식별합니다.
  2. 새 유연한 서버 인스턴스 만들기: 통합된 데이터베이스를 지원하기에 충분한 vCPU, 메모리 및 스토리지를 사용하여 새 유연한 서버 인스턴스를 만듭니다.
  3. 기존 유연한 서버 인스턴스 다시 사용: 기존 서버가 이미 있는 경우 통합된 데이터베이스를 지원하기에 충분한 vCPU, 메모리 및 스토리지가 있는지 확인합니다.
  4. 데이터베이스 마이그레이션: 데이터베이스를 새 유연한 서버 인스턴스로 마이그레이션합니다. pg_dump 및 pg_restore 같은 도구를 사용하여 데이터베이스를 내보내고 가져올 수 있습니다.
  5. 성능 모니터링: 통합 유연한 서버 인스턴스의 성능을 모니터링하고 필요에 따라 리소스를 조정하여 최적의 성능을 보장합니다.

데이터베이스를 통합하면 실행해야 하는 유연한 서버 인스턴스 수를 줄이고 더 작은 인스턴스보다 비용 효율적인 더 큰 인스턴스를 사용할 수 있도록 하여 비용을 절감할 수 있습니다. 통합이 데이터베이스의 성능에 미치는 영향을 평가하고 통합된 유연한 서버 인스턴스의 크기를 모든 데이터베이스 요구 사항에 맞게 적절하게 조정해야 합니다.

자세한 내용은 Azure Advisor를 사용하여 Azure 애플리케이션의 성능 향상을 참조 하세요.

6. 비용 효율적인 지역 지역에 테스트 서버 배치

비용 효율적인 Azure 지역에서 테스트 서버를 만드는 것은 Azure Database for PostgreSQL 유연한 서버에 대한 비용 절감 전략일 수 있습니다. 컴퓨팅 리소스 비용이 낮은 지역에 테스트 서버를 만들면 테스트 서버 실행 비용을 줄이고 Azure Database for PostgreSQL 실행 비용을 최소화할 수 있습니다. 다음은 비용 효율적인 Azure 지역에서 테스트 서버를 만드는 데 도움이 되는 몇 가지 단계입니다.

  1. 비용 효율적인 지역 식별: 컴퓨팅 리소스 비용이 낮은 Azure 지역을 식별합니다.
  2. 새 유연한 서버 인스턴스 만들기: 테스트 환경에 적합한 구성을 사용하여 비용 효율적인 지역에 새 유연한 서버 인스턴스를 만듭니다.
  3. 테스트 데이터 마이그레이션: 테스트 데이터를 새 유연한 서버 인스턴스로 마이그레이션합니다. pg_dump 및 pg_restore 같은 도구를 사용하여 데이터베이스를 내보내고 가져올 수 있습니다.
  4. 성능 모니터링: 테스트 서버의 성능을 모니터링하고 필요에 따라 리소스를 조정하여 최적의 성능을 보장합니다.

비용 효율적인 Azure 지역에서 테스트 서버를 만들면 테스트 서버 실행 비용을 줄이고 Azure Database for PostgreSQL 실행 비용을 최소화할 수 있습니다. 테스트 서버의 성능 및 조직의 특정 지역 요구 사항에 대한 지역의 영향을 평가하는 것이 중요합니다. 이렇게 하면 사용 사례에 네트워크 대기 시간 및 데이터 전송 비용이 허용됩니다.

자세한 내용은 Azure 지역을 참조 하세요.

7. 서버 시작 및 중지

서버를 시작하고 중지하는 것은 Azure Database for PostgreSQL 유연한 서버에 대한 비용 절감 전략일 수 있습니다. 필요한 경우에만 서버를 실행하면 Azure Database for PostgreSQL을 실행하는 비용을 줄일 수 있습니다. 서버를 시작 및 중지하고 비용을 절감하는 데 도움이 되는 몇 가지 단계는 다음과 같습니다.

  1. 서버 식별: 시작 및 중지하려는 유연한 서버 인스턴스를 식별합니다.
  2. 서버 시작: 필요할 때 유연한 서버 인스턴스를 시작합니다. Azure Portal, Azure CLI 또는 Azure REST API를 사용하여 서버를 시작할 수 있습니다.
  3. 서버 중지: 필요하지 않은 경우 유연한 서버 인스턴스를 중지합니다. Azure Portal, Azure CLI 또는 Azure REST API를 사용하여 서버를 중지할 수 있습니다.
  4. 또한 서버가 몇 주 동안 중지(또는 유휴) 상태인 경우 필요한 실사 후 서버를 삭제하는 것이 좋습니다.

필요에 따라 서버를 시작하고 중지하면 Azure Database for PostgreSQL을 실행하는 비용을 줄일 수 있습니다. 원활한 데이터베이스 성능을 보장하려면 서버 시작 및 중지의 영향을 평가하고 필요에 따라 이러한 작업에 대한 신뢰할 수 있는 프로세스를 마련하는 것이 중요합니다. 자세한 내용은 Azure Database for PostgreSQL - 유연한 서버 중지/시작을 참조하세요.

자세한 내용은 유연한 서버 인스턴스 중지/시작을 참조 하세요.

8. 콜드 스토리지에 대한 이전 데이터 보관

자주 액세스하지 않는 데이터를 Azure 보관 저장소에 보관하는 것은 액세스를 유지하면서 비용을 절감하는 데 도움이 될 수 있습니다. PostgreSQL에서 Azure Archived Storage로 데이터를 내보내고 저비용 스토리지 계층에 저장합니다.

  1. Azure Blob Storage 계정을 설치하고 데이터베이스 백업에 대한 컨테이너를 만듭니다.
  2. 이전 데이터를 파일로 내보내는 데 사용합니다 pg_dump .
  3. Azure CLI 또는 PowerShell을 사용하여 내보낸 파일을 Blob Storage 컨테이너에 업로드합니다.
  4. Blob Storage 컨테이너에서 보존 정책을 설정하여 이전 백업을 자동으로 삭제합니다.
  5. 백업 스크립트를 수정하여 이전 데이터를 로컬 스토리지 대신 Blob Storage로 내보냅니다.
  6. 백업 및 복원 프로세스를 테스트하여 필요한 경우 보관된 데이터를 복원할 수 있는지 확인합니다.

Azure Data Factory를 사용하여 이 프로세스를 자동화할 수도 있습니다.

자세한 내용은 덤프 및 복원을 사용하여 PostgreSQL 데이터베이스 마이그레이션을 참조 하세요.

비용에 대한 절충

Azure Database for PostgerSQL 유연한 서버에서 애플리케이션 데이터베이스를 디자인할 때 비용 최적화와 보안, 확장성, 복원력 및 조작성과 같은 디자인의 다른 측면 간의 절충을 고려합니다.

비용 및 안정성

비용은 안정성과 직접적인 상관관계가 있습니다.

비용 및 성능 효율성

성능을 높이면 비용이 더 많이 듭니다.

비용 및 보안

워크로드의 보안을 높이면 비용이 증가합니다.

비용 및 운영 우수성

시스템 모니터링 및 자동화에 투자하면 초기에는 비용이 증가할 수 있지만 시간이 지나면 비용이 절감됩니다.

다음 단계

비용 최적화에 대한 자세한 내용은 다음을 참조하세요.