Amazon RDS 스토리지 Autoscaling을 사용한 용량 자동 관리 - Amazon Relational Database Service

Amazon RDS 스토리지 Autoscaling을 사용한 용량 자동 관리

워크로드가 예측할 수 없는 경우에는 Amazon RDS DB 인스턴스에서 스토리지 Autoscaling을 활성화할 수 있습니다. Amazon RDS 콘솔, Amazon RDS API 또는 AWS CLI를 사용하면 가능합니다.

예를 들어 사용자들의 도입 속도가 빠른 모바일 게임 애플리케이션에서 이러한 기능을 사용할 수 있습니다. 이러한 경우에 급증하는 워크로드가 사용 가능한 데이터베이스 스토리지를 초과할 수 있기 때문입니다. 데이터베이스 스토리지를 수동으로 확장하지 않으려면 Amazon RDS 스토리지 Autoscaling을 사용할 수 있습니다.

스토리지 자동 크기 조정이 활성화된 상태에서 Amazon RDS가 데이터베이스의 여유 공간이 부족한 것을 감지하면 자동으로 스토리지를 확장합니다. Amazon RDS는 다음과 같은 요인이 적용될 때 자동 크기 조정이 활성화된 DB 인스턴스에서 스토리지 수정을 시작합니다.

  • 사용 가능한 여유 공간이 할당된 스토리지의 10% 이하일 때

  • 낮은 스토리지 조건이 5분 이상 지속될 때

  • 마지막 스토리지 수정 후 최소 6시간이 지났거나 인스턴스에서 스토리지 최적화가 완료된 시간 둘 중 더 긴 시간이 지났을 때

추가 스토리지는 다음 중 더 큰 값만큼 증가합니다.

  • 10GiB

  • 현재 할당된 스토리지의 10퍼센트

  • 지난 1시간 동안의 FreeStorageSpace 지표를 기반으로 향후 7시간 동안 현재 할당된 스토리지 크기를 초과할 것으로 예상되는 스토리지 증가량. 지표에 대한 자세한 내용은 Amazon CloudWatch를 사용하여 모니터링을 참조하세요.

최대 스토리지 임계값은 DB 인스턴스의 Auto Scaling을 위해 설정한 한도입니다. 다음과 같은 제약이 있습니다.

  • 최대 스토리지 임계값을 현재 할당된 스토리지보다 10% 이상 크게 설정해야 합니다. 스토리지 크기가 최대 스토리지 임계값에 도달했다는 이벤트 알림을 받지 않으려면 최소 26% 이상으로 설정하는 것이 좋습니다.

    예를 들어, 할당된 스토리지가 1000GiB인 DB 인스턴스가 있는 경우 최대 스토리지 임계값을 1100GiB 이상으로 설정합니다. 그러지 않으면 Invalid max storage size for engine_name(engine_name의 최대 스토리지 크기가 잘못됨)과 같은 오류 메시지가 표시됩니다. 하지만 이벤트 알림을 차단하려면 최대 스토리지 임계값을 최소 1260GiB로 설정하는 것이 좋습니다.

  • 프로비저닝된 IOPS(io1 또는 io2 Block Express) 스토리지를 사용하는 DB 인스턴스의 경우 IOPS 대 최대 스토리지 임계값(GiB)의 비율이 특정 범위 내에 있어야 합니다. 자세한 내용은 프로비저닝된 IOPS SSD 스토리지 단원을 참조하십시오.

  • 오토스케일링 지원 인스턴스의 최대 스토리지 임계값을 데이터베이스 엔진 및 DB 인스턴스 클래스에 할당된 최대 스토리지보다 큰 값으로 설정할 수 없습니다.

    예를 들어, db.m5.xlarge 기반의 SQL Server Standard Edition에 기본 할당된 인스턴스 스토리지는 20GiB(최소), 최대 할당 스토리지는 16,384GiB입니다. autoscaling의 기본 최대 스토리지 임계값은 1,000GiB입니다. 이 기본값을 사용하면 인스턴스가 1,000GiB 넘게 자동 확장되지 않습니다. 인스턴스에 할당된 최대 스토리지가 16,384GiB인 경우에도 마찬가지입니다.

참고

사용 패턴 및 고객 요구에 따라 최대 스토리지 임계값을 신중하게 선택하는 것이 좋습니다. 사용 패턴에 수차가 있는 경우 자동 크기 조정이 매우 높은 임계값을 예측할 때 최대 스토리지 임계값은 예기치 않게 높은 값으로 스토리지 확장을 방지할 수 있습니다. DB 인스턴스가 자동 확장된 후에는 할당된 스토리지를 줄일 수 없습니다.

제한 사항

스토리지 Autoscaling에는 다음과 같은 제한 사항이 적용됩니다.

  • 스토리지 증분으로 최대 스토리지 임계값이 초과할 경우 Autoscaling이 발생하지 않습니다.

  • 자동 크기 조정 시 RDS는 후속 자동 크기 조정 작업을 위해 스토리지 크기를 예측합니다. 후속 작업이 최대 스토리지 임계값을 초과할 것으로 예상되는 경우 RDS는 최대 스토리지 임계값보다 작아지도록 자동으로 크기를 조정합니다.

  • 자동 크기 조정으로 대용량 데이터 로드에 대한 스토리지가 가득 찬 상황을 완전히 막을 수는 없습니다. 6시간 동안 또는 인스턴스에서 스토리지 최적화 완료 시까지 중 더 긴 시간 동안 스토리지를 추가로 수정할 수 없기 때문입니다.

    대용량 데이터 로드를 수행하고 Autoscaling이 충분한 공간을 제공하지 않으면 데이터베이스가 몇 시간 동안 스토리지가 가득 찬 상태로 유지될 수 있습니다. 이는 데이터베이스에 악영향을 미칠 수 있습니다.

  • Amazon RDS가 Autoscaling 작업을 시작할 때 동시에 사용자가 스토리지 확장 작업을 시작할 경우 사용자의 스토리지 수정이 우선합니다. Autoscaling 작업이 취소됩니다.

  • 자동 크기 조정으로 할당된 스토리지를 줄일 수는 없습니다. 스토리지가 할당된 후에 DB 인스턴스의 스토리지 양을 줄일 수 없습니다.

  • Autoscaling은 마그네틱 스토리지와 함께 사용할 수 없습니다.

  • Autoscaling은 주문 가능한 스토리지가 6TiB 미만인 이전 세대 인스턴스 클래스(db.m3.large, db.m3.xlarge 및 db.m3.2xlarge)와 함께 사용할 수 없습니다.

  • Auto Scaling 작업은 AWS CloudTrail에 의해 기록되지 않습니다. CloudTrail에 대한 자세한 내용은 AWS CloudTrail에서 Amazon RDS API 호출 모니터링 섹션을 참조하세요.

Autoscaling이 Amazon RDS DB 인스턴스의 스토리지를 동적으로 늘리는 데 효과적이기는 하지만 DB 인스턴스의 초기 스토리지는 일반적인 워크로드에 적합한 크기로 구성해야 합니다.

새로운 DB 인스턴스의 스토리지 Autoscaling 활성화

새로운 Amazon RDS DB 인스턴스를 생성할 때 스토리지 Autoscaling의 활성화 여부를 선택할 수 있습니다. 또한 Amazon RDS가 DB 인스턴스에 할당할 수 있는 스토리지의 상한선도 설정할 수 있습니다.

참고

스토리지 Autoscaling이 활성화된 Amazon RDS DB 인스턴스를 복제할 경우 해당 설정은 복제 인스턴스에서 자동으로 상속되지 않습니다. 새롭게 복제된 DB 인스턴스는 할당되는 스토리지 크기가 원본 인스턴스와 동일합니다. 하지만 복제된 인스턴스에서 스토리지 요건이 계속해서 증가할 경우 새로운 인스턴스에서도 스토리지 Autoscaling을 다시 활성화할 수 있습니다.

새로운 DB 인스턴스에서 스토리지 Autoscaling을 활성화하려면
  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. Amazon RDS 콘솔의 오른쪽 상단에서 DB 인스턴스를 생성하려는 AWS 리전을 선택합니다.

  3. 탐색 창에서 데이터베이스를 선택합니다.

  4. 데이터베이스 생성을 선택합니다. 엔진 선택 페이지에서 데이터베이스 엔진을 선택한 후 Amazon RDS 시작하기.에서 설명하는 대로 DB 인스턴스 정보를 지정합니다.

  5. Storage autoscaling(스토리지 Autoscaling) 섹션에서 DB 인스턴스의 Maximum storage threshold(최대 스토리지 임계값) 값을 설정합니다.

  6. 나머지 DB 인스턴스 정보를 Amazon RDS 시작하기에서 설명하는 대로 지정합니다.

새로운 DB 인스턴스에서 스토리지 Autoscaling을 활성화하려면 AWS CLI 명령인 create-db-instance를 사용합니다. 다음 파라미터를 설정합니다.

  • --max-allocated-storage - 스토리지 자동 크기 조정을 활성화하고 스토리지 크기 상한선(기비바이트)을 설정합니다.

Amazon RDS 스토리지 자동 크기 조정을 DB 인스턴스에서 사용할 수 있는지 확인하려면 AWS CLI describe-valid-db-instance-modifications 명령을 사용합니다. 인스턴스를 생성하기 전에 인스턴스 클래스를 기준으로 확인하려면 describe-orderable-db-instance-options 명령을 사용합니다. 반환 값에서 다음 필드를 확인하십시오.

  • SupportsStorageAutoscaling - DB 인스턴스 또는 인스턴스 클래스의 스토리지 자동 조정 크기 지원 여부를 나타냅니다.

스토리지에 대한 자세한 내용은 Amazon RDS DB 인스턴스 스토리지 단원을 참조하십시오.

새로운 DB 인스턴스에서 스토리지 Autoscaling을 활성화하려면 Amazon RDS API 작업 CreateDBInstance를 사용합니다. 다음 파라미터를 설정합니다.

  • MaxAllocatedStorage - Amazon RDS 스토리지 자동 크기 조정을 활성화하고 스토리지 크기 상한선(기비바이트)을 설정합니다.

DB 인스턴스에 Amazon RDS 스토리지 Autoscaling을 사용할 수 있는지 확인하려면 기존 인스턴스일 경우 Amazon RDS API DescribeValidDbInstanceModifications 작업을 사용하고, 인스턴스 생성 전에는 DescribeOrderableDBInstanceOptions 작업을 사용합니다. 반환 값에서 다음 필드를 확인하십시오.

  • SupportsStorageAutoscaling - DB 인스턴스의 스토리지 자동 크기 조정 지원 여부를 나타냅니다.

스토리지에 대한 자세한 내용은 Amazon RDS DB 인스턴스 스토리지 단원을 참조하십시오.

DB 인스턴스의 스토리지 Autoscaling 설정 변경

기존 Amazon RDS DB 인스턴스에서 스토리지 Autoscaling을 활성화할 수 있습니다. 또한 Amazon RDS가 DB 인스턴스에 할당할 수 있는 스토리지의 상한선도 변경할 수 있습니다.

DB 인스턴스의 스토리지 Autoscaling 설정을 변경하려면
  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 탐색 창에서 데이터베이스를 선택합니다.

  3. 수정하려는 DB 인스턴스를 선택한 후 수정을 선택합니다. [Modify DB instance] 페이지가 나타납니다.

  4. Autoscaling 섹션에서 스토리지 제한을 변경합니다. 자세한 내용은 Amazon RDS DB 인스턴스 수정 섹션을 참조하세요.

  5. 원하는 대로 모두 변경되었으면 계속을 선택하고 수정 사항을 확인합니다.

  6. 확인 페이지에서 변경 내용을 검토합니다. 변경 사항이 정확할 경우 DB 인스턴스 수정을 선택하여 변경 내용을 저장합니다. 그렇지 않으면 뒤로를 선택하여 변경 사항을 편집하거나 취소를 선택하여 변경 사항을 취소합니다.

    스토리지 autoscaling 제한 변경은 즉시 적용됩니다. 이 설정은 [Apply immediately] 설정을 무시합니다.

DB 인스턴스의 스토리지 Autoscaling 설정을 변경하려면 AWS CLI 명령인 modify-db-instance를 사용합니다. 다음 파라미터를 설정합니다.

  • --max-allocated-storage - 스토리지 크기의 상한선(기비바이트)을 설정합니다. 값이 --allocated-storage 파라미터보다 크면 스토리지 Autoscaling이 활성화됩니다. 값이 --allocated-storage 파라미터와 동일하면 스토리지 Autoscaling이 비활성화됩니다.

Amazon RDS 스토리지 자동 크기 조정을 DB 인스턴스에서 사용할 수 있는지 확인하려면 AWS CLI describe-valid-db-instance-modifications 명령을 사용합니다. 인스턴스를 생성하기 전에 인스턴스 클래스를 기준으로 확인하려면 describe-orderable-db-instance-options 명령을 사용합니다. 반환 값에서 다음 필드를 확인하십시오.

  • SupportsStorageAutoscaling - DB 인스턴스의 스토리지 자동 크기 조정 지원 여부를 나타냅니다.

스토리지에 대한 자세한 내용은 Amazon RDS DB 인스턴스 스토리지 단원을 참조하십시오.

DB 인스턴스의 스토리지 Autoscaling 설정을 변경하려면 Amazon RDS API 작업 ModifyDBInstance를 사용합니다. 다음 파라미터를 설정합니다.

  • MaxAllocatedStorage - 스토리지 크기의 상한선(기비바이트)을 설정합니다.

DB 인스턴스에 Amazon RDS 스토리지 Autoscaling을 사용할 수 있는지 확인하려면 기존 인스턴스일 경우 Amazon RDS API DescribeValidDbInstanceModifications 작업을 사용하고, 인스턴스 생성 전에는 DescribeOrderableDBInstanceOptions 작업을 사용합니다. 반환 값에서 다음 필드를 확인하십시오.

  • SupportsStorageAutoscaling - DB 인스턴스의 스토리지 자동 크기 조정 지원 여부를 나타냅니다.

스토리지에 대한 자세한 내용은 Amazon RDS DB 인스턴스 스토리지 단원을 참조하십시오.

DB 인스턴스의 스토리지 Autoscaling 비활성화

Amazon RDS에서 더 이상 Amazon RDS DB 인스턴스의 스토리지를 자동으로 늘릴 필요가 없다면 스토리지 Autoscaling을 비활성화할 수 있습니다. 비활성화한 후에도 DB 인스턴스 스토리지의 크기를 수동으로 늘릴 수 있습니다.

DB 인스턴스의 스토리지 Autoscaling을 비활성화하려면
  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 탐색 창에서 데이터베이스를 선택합니다.

  3. 수정하려는 DB 인스턴스를 선택한 후 수정을 선택합니다. [Modify DB instance] 페이지가 나타납니다.

  4. Storage autoscaling(스토리지 Autoscaling) 섹션에서 Enable storage autoscaling(스토리지 Autoscaling 활성화) 확인란을 해제합니다. 자세한 내용은 Amazon RDS DB 인스턴스 수정 섹션을 참조하세요.

  5. 원하는 대로 모두 변경했으면 계속을 선택하고 수정 사항을 확인합니다.

  6. 확인 페이지에서 변경 내용을 검토합니다. 변경 사항이 정확할 경우 DB 인스턴스 수정을 선택하여 변경 내용을 저장합니다. 그렇지 않으면 뒤로를 선택하여 변경 사항을 편집하거나 취소를 선택하여 변경 사항을 취소합니다.

스토리지 autoscaling 제한 변경은 즉시 적용됩니다. 이 설정은 [Apply immediately] 설정을 무시합니다.

DB 인스턴스에서 스토리지 Autoscaling을 비활성화하려면 AWS CLI 명령인 modify-db-instance와 다음 파라미터를 사용합니다.

  • --max-allocated-storage - --allocated-storage 설정과 동일하게 값을 지정하여 지정된 DB 인스턴스에서 Amazon RDS 스토리지 자동 크기 조정을 더 이상 사용하지 않습니다.

스토리지에 대한 자세한 내용은 Amazon RDS DB 인스턴스 스토리지 단원을 참조하십시오.

DB 인스턴스의 스토리지 Autoscaling을 비활성화하려면 Amazon RDS API 작업 ModifyDBInstance를 사용합니다. 다음 파라미터를 설정합니다.

  • MaxAllocatedStorage - AllocatedStorage 설정과 동일하게 값을 지정하여 지정된 DB 인스턴스에서 Amazon RDS 스토리지 자동 크기 조정을 더 이상 사용하지 않습니다.

스토리지에 대한 자세한 내용은 Amazon RDS DB 인스턴스 스토리지 단원을 참조하십시오.