View a markdown version of this page

Amazon DocumentDB 인플레이스 주요 버전 업그레이드 - Amazon DocumentDB

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon DocumentDB 인플레이스 주요 버전 업그레이드

동일한 엔드포인트, 스토리지 및 태그를 유지하면서 Amazon DocumentDB 클러스터의 인플레이스 메이저 버전 업그레이드(MVU)를 수행할 수 있습니다. 애플리케이션은 수정 없이 계속 작동합니다. 이 기능은 Amazon DocumentDB를 사용할 수 있는 모든 리전에서 추가 비용 없이 사용할 수 있습니다.

중요

업그레이드 중에는 클러스터를 사용할 수 없으며 여러 번 재부팅됩니다. 업그레이드를 시작한 후에는 클러스터에 연결하거나 클러스터에서 읽거나 클러스터에 쓰지 마십시오. 가동 중지 시간은 컬렉션, 인덱스, 데이터베이스 및 인스턴스 수에 따라 달라집니다. 유지 관리 기간 또는 사용률이 낮은 시간에 업그레이드를 수행하는 것이 좋습니다.

업그레이드한 후에는 이전 버전으로 다운그레이드할 수 없습니다. 필요한 경우 업그레이드 전 스냅샷을 새 클러스터로 복원할 수 있습니다.

지원되는 업그레이드 경로

소스 버전 대상 버전

Amazon DocumentDB 3.6

Amazon DocumentDB 5.0

Amazon DocumentDB 4.0

Amazon DocumentDB 5.0

Amazon DocumentDB 5.0

Amazon DocumentDB 8.0

참고

글로벌 클러스터 또는 탄력적 클러스터에는 현재 위치 MVU가 지원되지 않습니다. 글로벌 클러스터를 업그레이드하려면 보조 클러스터를 제거하고, 기본 클러스터를 리전 클러스터로 변환하고, MVU를 수행한 다음 동일한 이름을 사용하여 보조 클러스터를 추가하여 글로벌 클러스터를 다시 생성하여 엔드포인트를 유지합니다. 업그레이드된 기본가 새 보조에 데이터를 복제하는 동안 I/O 요금이 발생합니다. 자세한 단계는 Amazon DocumentDB 글로벌 클러스터에서 클러스터 분리 섹션을 참조하세요.

사전 조건

  • 인스턴스 유형 - Amazon DocumentDB 4.0+는 db.r4 인스턴스를 지원하지 않습니다. 업그레이드하기 전에 db.r4.* 인스턴스를 db.r5.* 인스턴스 이상으로 수정합니다. Amazon DocumentDB 인스턴스 수정리전별 지원되는 인스턴스 클래스 섹션을 참조하세요.

  • OS 패치 - 업그레이드하기 전에 모든 인스턴스에 보류 중인 OS 유지 관리 작업을 적용합니다. Amazon DocumentDB 운영 체제 업데이트을(를) 참조하세요.

    참고

    보류 중인 클러스터 수준 엔진 패치는 인스턴스 OS 패치를 숨길 수 있습니다. 필요한 경우 먼저 엔진 패치를 적용합니다. 클러스터의 엔진 버전에 대한 패치 업데이트 수행을(를) 참조하세요.

  • 버스트 가능 인스턴스(t 패밀리 인스턴스)의 인덱스 제한 - 버스트 가능 인스턴스에 3,000개 이상의 인덱스가 있는 경우 업그레이드하기 전에 기본를 최소 db.r5.large로 확장합니다. 업그레이드가 완료된 후 다시 축소할 수 있습니다.

    Instance MVU의 최대 인덱스

    db.t4g.medium

    3천

    db.t3.medium

    1만

  • 파라미터 그룹 - 업그레이드하기 전에 대상 버전에 대한 사용자 지정 클러스터 파라미터 그룹을 준비하는 것이 좋습니다. 지정하지 않으면 대상 버전의 기본 파라미터 그룹이 사용됩니다(예: default.docdb5.0 또는 default.docdb8.0).

  • 수동 스냅샷 - 업그레이드하기 전에 수동 스냅샷을 생성합니다. 업그레이드 프로세스는 라는 자동 스냅샷을 생성preupgrade-<name>-<version>-<timestamp>하지만 자체 백업을 사용하는 것이 좋습니다. 수동 클러스터 스냅샷 생성을(를) 참조하세요.

    참고

    업그레이드 프로세스에서 생성된 자동 스냅샷은 인플레이스 주요 버전 업그레이드가 완료된 후에도 자동으로 삭제되지 않습니다. 이 스냅샷은 보존 기간 내에 있는 한 요금이 부과되지 않습니다. 클러스터의 성공적인 업그레이드가 확인되면 이 스냅샷을 삭제하도록 선택할 수 있습니다.

    이미지: 이전에 생성한 스냅샷 테이블을 보여주는 스냅샷 탐색 상자입니다.

모범 사례

업그레이드 전 - 복제본으로 테스트

  1. Amazon DocumentDB 클러스터에 대한 볼륨 복제를 사용하여 클러스터의 복제본을 생성합니다. 복제본의 데이터를 수정하지 않는 한 스토리지 비용이 발생하지 않습니다.

  2. 실제 시간 추정을 위해 복제본의 인스턴스 수를 대상 클러스터와 일치시킵니다.

  3. 복제본에서 MVU를 수행하고 기능적 차이를 완전히 테스트합니다.

  4. 를 실행describe-db-clusters하고를 찾아 업그레이드가 이미 예약되어 있는지 확인합니다PendingModifiedValues.EngineVersion. 클러스터를 수정하고 다음 유지 관리 기간에 적용하도록 선택한 경우 콘솔에 일정이 표시되지 않지만 AWS CLI다음에서 볼 수 있습니다.

    aws docdb describe-db-clusters \ --region us-east-1 \ --db-cluster-identifier mydocdbcluster
    "PendingModifiedValues": { "EngineVersion": "5.0.0" },
  5. 테스트에 성공하면 프로덕션 클러스터에서 업그레이드를 진행합니다.

업그레이드 중

클러스터 유지 관리 이벤트를 구독하면 인플레이스 주요 버전 업그레이드 진행 상황을 모니터링할 수 있습니다. 업그레이드가 완료되면 "데이터베이스 클러스터 메이저 버전이 업그레이드됨" 이벤트를 받게 됩니다. 업그레이드 중에 발생하는이 이벤트 및 기타 이벤트는 Amazon DocumentDB 콘솔의 클러스터 세부 정보 페이지의 이벤트 및 태그 섹션에 표시됩니다. 그러면 클러스터 상태가에서 upgrading로 변경됩니다available.

업그레이드 중에 다음 이벤트가 생성됩니다.

  1. 데이터베이스 클러스터 엔진 메이저 버전 업그레이드가 시작되었습니다. 클러스터는 온라인 상태로 유지됩니다.

  2. 업그레이드 준비 진행 중: 온라인 업그레이드 사전 확인 시작.

  3. 업그레이드 준비 진행 중: 온라인 업그레이드 사전 확인 완료.

  4. 기본 인스턴스가 패치/업그레이드 프로세스를 완료하는 동안 데이터베이스 클러스터를 오프라인으로 전환합니다.

  5. 업그레이드 준비 진행 중: 오프라인 업그레이드 사전 확인 시작.

  6. 업그레이드 준비 진행 중: 오프라인 업그레이드 사전 확인을 완료했습니다.

  7. 업그레이드 진행 중: 업그레이드 전 스냅샷 생성[preupgrade-<cluster-name>-<version-from>-to-<version-to>-<timestamp>].

  8. 업그레이드 진행 중: 볼륨 복제.

  9. 업그레이드 진행 중: 라이터 업그레이드.

  10. 업그레이드 진행 중: 리더 업그레이드.

  11. 데이터베이스 클러스터 엔진 메이저 버전이 업그레이드되었습니다.

이벤트는 콘솔의 이벤트 페이지에 표시됩니다.

이미지: 업그레이드 이벤트 테이블을 보여주는 이벤트 탐색 상자입니다.

에서 AWS CLI를 실행aws docdb describe-events하여 업그레이드 진행 상황을 모니터링할 수 있습니다. 알림을 자동으로 수신하려면 aws docdb create-event-subscription를 사용하여 이벤트를 구독하고 이메일, 푸시 메시지 또는 기타 전송 방법을 위해 Amazon SNS로 라우팅합니다. 자세한 내용은 Amazon DocumentDB 이벤트 구독 단원을 참조하십시오.

aws docdb describe-events --source-identifier mydocdbcluster --source-type db-cluster

이 명령은 다음과 비슷한 출력을 반환합니다.

{ "Events": [ { "SourceIdentifier": "mydocdbcluster", "SourceType": "db-cluster", "Message": "Database cluster engine version upgrade started.", "EventCategories": [ "maintenance" ], "Date": "2023-07-11T23:20:32.444000+00:00", "SourceArn": "arn:aws:rds:us-east-1:xxxx:cluster:mycluster" } ] }

업그레이드 후

주의

인플레이스 메이저 버전 업그레이드 직후 Amazon DocumentDB 클러스터는 데이터베이스 엔진이 쿼리 실행 계획을 최적화하는 데 사용하는 인덱스 메타데이터를 다시 채웁니다. 이 프로세스가 완료되면 쿼리 성능이 예상 수준으로 돌아갑니다. 일반적으로 몇 분 내에 완료되지만 클러스터의 인덱스 수에 따라 최대 2시간이 걸릴 수 있습니다.

이 시간 동안 라이터 인스턴스를 재부팅, 장애 조치 또는 스케일 업/다운하지 마십시오. 인덱스 메타데이터 재계산이 중단될 수 있습니다. 이러한 변경을 수행하기 전에 예상 쿼리 성능이 관찰될 때까지 기다리는 것이 좋습니다.

다음 클러스터 이벤트를 통해 진행 상황을 추적합니다.

  • 업그레이드 후 클러스터 상태: 인덱스 메타데이터 새로 고침 프로세스가 시작됨

  • 업그레이드 후 클러스터 상태: X초 내에 완료된 인덱스 메타데이터 새로 고침 프로세스

인덱스 메타데이터 새로 고침 프로세스가 3시간 이내에 완료되지 않았거나 프로세스가 완료된 후에도 성능 문제가 계속 발생하는 경우 AWS 지원팀에 문의하십시오.

  1. 업그레이드 후 상태로 복원해야 하는 경우 업그레이드된 클러스터의 수동 스냅샷을 생성합니다. 인플레이스 메이저 버전 업그레이드가 완료되는 즉시 자동 스냅샷 프로세스가 재개됩니다.

  2. 3.6에서 업그레이드된 태그 클러스터. 태그를 추가하여 3.6에서 업그레이드된 클러스터를 구분합니다( 참조3.6 또는 4.0에서 업그레이드된 클러스터에 대한 업그레이드 후 고려 사항).

  3. 드라이버를 업데이트합니다. 새 기능(예: 8.0의 데이터 정렬, 뷰 또는 Zstd 압축)을 사용하려면 해당 MongoDB API 버전으로 업그레이드합니다. 자세한 내용은 Amazon DocumentDB 8.0의 새로운 기능을 참조하세요.

  4. 철저히 테스트합니다. 업그레이드된 클러스터에 대해 애플리케이션을 검증합니다.

Amazon DocumentDB 5.0에서 8.0으로 업그레이드한 후 변경되는 사항

Amazon DocumentDB 5.0에서 8.0으로 메이저 버전 업그레이드를 수행하면 다음 기능이 활성화되거나 변경됩니다.

  • 데이터 정렬. Amazon DocumentDB 8.0은 데이터 정렬을 지원합니다. 업그레이드 후 새 컬렉션과 해당 인덱스, 기존 컬렉션의 새 인덱스에는 기본적으로 데이터 정렬이 활성화되어 있습니다.

  • 텍스트 인덱스. 새 텍스트 인덱스는 MongoDB 호환성 향상을 위해 업데이트된 텍스트 검색 구문 분석기를 사용하는 텍스트 인덱스 V2를 사용하여 생성됩니다. 기존 텍스트 인덱스는 영향을 받지 않습니다.

  • 쿼리 플래너 버전. 사용자 지정 파라미터 그룹이 없는 경우 플래너 버전 3이 자동으로 선택된 Amazon DocumentDB 8.0에 대한 새 기본 파라미터 그룹이 생성됩니다. 쿼리 플래너 버전 3에서는 도 사용할 수 있습니다.

  • 압축. Amazon DocumentDB 8.0은 Zstd 알고리즘을 사용한 사전 기반 문서 압축을 지원합니다. 업그레이드 후 기본적으로 Zstd 압축을 활성화하여 새 컬렉션이 생성됩니다. 5.0의 기존 컬렉션은 압축 설정을 유지합니다. 기존 컬렉션에서 Zstd 압축을 활용하려면 압축 설정을 수정할 수 있습니다. 자세한 내용은 사전 기반 압축을 참조하세요.

  • 인덱스 재구축. Amazon DocumentDB 5.0에서 Amazon DocumentDB 8.0으로 업그레이드하는 경우 인덱스 재구축이 필요하지 않습니다.

참고

기능 차이의 전체 목록은 섹션을 참조하세요Amazon DocumentDB의 MongoDB 호환성.

3.6 또는 4.0에서 업그레이드된 클러스터에 대한 업그레이드 후 고려 사항

  • 인덱스 재구축. MVU는 원본 인덱스를 유지합니다. Amazon DocumentDB 5.0은 특히 카디널리티가 낮은 인덱스의 경우 인덱스 유지 관리 및 가비지 수집을 개선했습니다. 3.6 또는 4.0에서 업그레이드한 후에는 최적의 쿼리 성능을 보장하기 위해 인덱스를 다시 빌드하는 것이 좋습니다(선택 사항, 추가 I/O 포함). reIndex를 사용한 인덱스 유지 관리을(를) 참조하세요.

  • 하위 문서 숫자 비교(3.6만 해당). 3.6에서 업그레이드된 클러스터는 하위 문서의 숫자 유형이 유형 간에 비교되지 않는 3.6 동작을 상속합니다. 예를 들어 {a: {b: NumberLong(1)}}는 3.6{a: {b: 1}}에서는 같지 않지만 4.0 이상에서는 동일합니다. 이 동작은 3.6에서 업그레이드된 모든 클러스터에 영향을 미칩니다.

업그레이드 수행

Using the AWS Management Console
  1. AWS Management Console에 로그인하고 Amazon DocumentDB 콘솔을 엽니다.

  2. 클러스터 테이블에서 원본 클러스터를 선택하고 작업을 클릭한 다음 수정을 클릭합니다.

    이미지: 기존 클러스터 링크 및 해당 인스턴스 링크의 목록을 보여주는 클러스터 탐색 상자입니다.
  3. 클러스터 사양엔진 버전 드롭다운에서 대상 버전(예: 5.0.0 또는 8.0.0)을 선택합니다.

    이미지: 클러스터 식별자 및 엔진 버전 필드를 보여주는 클러스터 수정 대화 상자의 클러스터 사양 섹션입니다.
  4. 클러스터 옵션에서 대상 엔진 버전의 클러스터 파라미터 그룹을 선택합니다. 기본값(예: default.docdb5.0 또는 default.docdb8.0) 또는 생성한 사용자 지정 파라미터 그룹을 사용할 수 있습니다.

    이미지: 클러스터 파라미터 그룹 필드를 보여주는 클러스터 수정 대화 상자의 클러스터 옵션 섹션입니다.
  5. 계속을 선택하고 예약 기본 설정(즉시 적용 또는 다음 유지 관리 기간)을 선택한 다음 클러스터 수정을 선택합니다.

    이미지: 선택한 클러스터에 대한 수정 요약 및 일정을 보여주는 클러스터 수정 대화 상자입니다.
  6. 업그레이드로 변경될 때 클러스터 테이블의 클러스터 상태를 모니터링합니다.

    이미지: 업그레이드 중인 클러스터의 상태 열을 강조 표시하는 클러스터 탐색 상자입니다.
Using the AWS CLI

--allow-major-version-upgrade 플래그와 modify-db-cluster 함께를 사용합니다.

aws docdb modify-db-cluster \ ‐‐db-cluster-identifier mydocdbcluster \ ‐‐allow-major-version-upgrade \ ‐‐engine-version 8.0.0 \ ‐‐apply-immediately \ ‐‐cluster-parameter-group mydocdbparametergroup \ ‐‐region us-east-1

자리 표시자를 클러스터 정보로 바꿉니다.

문제 해결

  • 업그레이드 실패 및 롤백. 업그레이드에 실패하면 자동으로 롤백을 시도합니다. 롤백에 성공하면 "데이터베이스 클러스터가 업그레이드할 수 없는 상태입니다."라는 이벤트가 생성됩니다. 클러스터가 업그레이드 전 상태로 돌아가고 계속 사용할 수 있습니다. 다시 시도하기 전에 AWS 지원팀에 문의하여 문제를 해결하세요.

  • 업그레이드 후 성능. 인덱스 메타데이터 새로 고침이 실행되는 동안 일시적인 성능 저하와 높은 CPU 사용률이 발생할 수 있습니다. 3시간 후에도 성능 저하가 지속되면 AWS 지원팀에 문의하십시오.

추가 지원이 필요한 경우 AWS Support에 문의하십시오.