SQL Server를 이용하는 고객사의 DB 인스턴스 절감 방안 및 클래스 선정 도움 자료
DB 인스턴스는 EC2 인스턴스와 다르게 할인을 받을 수 있는 서비스가 예약 DB 인스턴스 뿐입니다.
이미 DB 인스턴스가 있지만 용량을 확장해야 하는 경우에는 동일한 AWS 리전 및 데이터베이스 엔진, 해당 인스턴스 클래스 유형에서 확장할 수 있습니다. 예를 들어 db.r3.large DB 인스턴스 1개는 db.r3.small 8개와 같습니다. 반면 db.r5.large 예약 DB 인스턴스는 동일한 클래스 유형이 아닌 db.r6g.large에는 적용할 수 없습니다.
아래 DB 엔진에 대해서만 적용됩니다.
SQL Server를 이용하신다면 해당 확장성 서비스를 적용 받으실 수 없기 때문에 결국 초기에 DB 인스턴스 클래스를 선정할 때 나중의 사용량까지 고려한 클래스로 선정하셔야 합니다.

현재까지 문제가 되고 있는 DB 인스턴스는 rds-mssql-t-farmon-live이다보니 이것을 중점으로 고려해보았습니다. rds-mysql-ai-tfarm-dev의 경우 기존처럼 선정해도 문제가 없다고 판단됩니다.
현재 예약 DB 인스턴스 클래스는 db.m5.xlarge인데, 사용량을 고려해봤을 때 적어도 한 단계 상위의 클래스로 선정해야 하는 것은 불가피해보입니다.
sqlserver-web(li) 제품에서 동일 유형 클래스 내 db.m5.xlarge보다 상위 클래스는 db.m5.2xlarge, db.m5.4xlarge가 있습니다.
각 클래스의 요금 차이는 아래와 같습니다.
| 인스턴스 이름 | vCPU | Memory | 선결제 요금 | 월별 요금 | 온디맨드 대비 절감액 | 온디맨드 요금 |
|---|---|---|---|---|---|---|
| db.m5.xlarge | 4 | 16 GiB | 0 USD | 343.10 USD | 29% | 0.6640 USD |
| db.m5.2xlarge | 8 | 32 GiB | 0 USD | 686.20 USD | 30% | 1.3500 USD |
| db.m5.4xlarge | 16 | 64 GiB | 0 USD | 1,372.40 USD | 31% | 2.7410 USD |
요금은 1년 기준으로 산정했고, 클래스가 한 단계 오를 수록 요금은 2배씩 증가한다고 보시면 됩니다.
온디맨드 대비 예약 DB 인스턴스의 비용 절감은 약 30%입니다.
예약 DB 인스턴스의 요금에는 스토리지, 백업 및 I/O와 관련된 비용이 포함되지 않습니다. 따라서 해당 서비스를 이용할 경우 상기 비용에 추가적인 비용이 발생하게 됩니다. 현재 예약 DB 인스턴스 비용을 제외한 비용은 스토리지만 있는 것으로 보여집니다.
현재 스토리지는 범용 SSD(gp2)로 200GiB를 사용 중입니다. 따라서 요금 계산은 아래와 같습니다.
예약 DB 인스턴스에 대한 약정 기간은 1년 또는 3년입니다. 예약 DB 인스턴스는 아시다시피 취소할 수 없고, EC2 인스턴스는 남은 약정 기간이 있는 인스턴스를 마켓플레이스에 되파는 방법도 있지만, DB 인스턴스는 불가능합니다. DB 엔진도 SQL Server를 쓰기 때문에 더욱이 초기에 예약 DB 인스턴스 클래스를 잘 선정해야하는 이유입니다. 반드시 나중의 사용량을 고려한 클래스 선정이 이루어져야 합니다.
위에 설명드린 해당 사항을 참고하시어 적합한 예약 DB 인스턴스라고 고려되는 클래스를 선정해주시면 감사하겠습니다.