Docs Menu
Docs Home
/
MongoDB 매뉴얼
/ / /

MongoDB 의 최신 자체 관리 패치 릴리스로 업그레이드

이 페이지의 내용

  • 업그레이드 전
  • 업그레이드 절차
  • MongoDB 인스턴스 업그레이드
  • 기존 바이너리 교체
  • 복제본 세트 업그레이드
  • 샤딩된 클러스터 업그레이드

MongoDB 버전 관리X.Y.Z 형식을 가지며, 여기서 Z 는 수정본/패치 번호를 나타냅니다. 수정본은 보안 패치, 버그 수정, 신규 또는 변경된 기능을 제공하며, 일반적으로 이전 버전에 대한 호환성이 손상되는 변경은 포함하지 않습니다. 항상 릴리스 시리즈의 최신 수정본으로 업그레이드하세요.

버전 관리에 대한 자세한 내용은 MongoDB 버전 관리를 참조하세요.

데이터 세트 의 최신 백업 이 있는지 확인합니다. 자체 관리 배포서버를 위한 백업 방법을 참조하세요.

  • MongoDB 릴리스와 관련된 특별한 고려 사항 또는 호환성 문제에 대해서는 다음 문서를 참조하세요.

    • Release Notes(릴리스 노트)에서 확인할 수 있습니다.

    • 드라이버에 대한 설명서입니다.

중요

  • MongODB 4.2부터 MongoDB는 Ubuntu 16.04 PPCLE에 대한 지원을 제거합니다.

  • MongoDB 3.6.13부터는 MongoDB 3.6 시리즈는 Ubuntu 16.04 PPCLE에 대한 지원을 제거합니다.

  • MongoDB 3.4.21부터, MongoDB 3.4 시리즈는 Ubuntu 16.04 PPCLE에 대한 지원을 제거합니다.

설치에 복제본 세트 가 포함된 경우 사전 정의된 유지 관리 기간에 업그레이드를 계획하세요.

MongoDB 4.0.7부터 change stream 버전 1 v1 재개 토큰을 사용합니다. 4.0.7 이전의 MongoDB 버전에서는 v0 재개 토큰을 사용합니다.

MongoDB 4.0.6 이하 버전에서 MongoDB 4.0.7 이상으로 업그레이드하는 경우, 클라이언트가 업데이트되지 않은 멤버에 연결될 때 v1 즉, v0 또는 BinData 토큰만 허용), 실패합니다. 이러한 경우 클라이언트는 변경 스트림을 재개하기 전에 업그레이드가 완료될 때까지 기다려야 합니다.

프로덕션 환경을 업그레이드하기 전에 이 문서의 절차를 사용하여 프로덕션 환경을 재현하는 스테이징 환경을 업그레이드하여 프로덕션 구성이 모든 변경 사항과 호환되는지 확인합니다.

중요

MongoDB를 업그레이드하기 전에 항상 모든 데이터를 백업하세요.

여기에 설명된 절차에 따라 각 mongodmongos 바이너리를 개별적으로 업그레이드합니다. 바이너리를 업그레이드할 때는 MongoDB 인스턴스 업그레이드 절차를 따르세요.

다음 업그레이드 절차를 따르세요.

  1. 인증을 사용하는 배포서버의 경우 먼저 모든 MongoDB 드라이버를 업그레이드합니다. 업그레이드하려면 드라이버 설명서를 참조하세요.

  2. 샤딩된 클러스터 업그레이드에 설명된 대로 샤딩된 클러스터를 업그레이드합니다.

  3. 모든 독립형 인스턴스를 업그레이드합니다. MongoDB 인스턴스 업그레이드를 참조하세요.

  4. 복제본 세트 업그레이드에 설명된 대로 샤딩된 클러스터의 일부가 아닌 모든 복제본 세트를 업그레이드합니다.

mongod 또는 mongos 인스턴스를 업그레이드하려면 다음 접근 방식 중 하나를 사용합니다.

  • 운영 체제의 패키지 관리 도구와 공식 MongoDB 패키지를 사용하여 인스턴스를 업그레이드합니다. 이 방법이 선호되는 방식입니다. MongoDB 설치를 참조하세요.

  • 기존 바이너리를 새 바이너리로 교체하여 인스턴스를 업그레이드합니다. 기존 바이너리 교체를 참조하세요.

  • 인스턴스를 다시 시작하기 전에 필요한 구성 파일을 변경합니다.

중요

MongoDB를 업그레이드하기 전에 항상 모든 데이터를 백업하세요.

이 섹션에서는 기존 바이너리를 교체하여 MongoDB를 업그레이드하는 방법을 설명합니다. 업그레이드에 선호되는 방식은 MongoDB 설치에 설명된 대로 운영 체제의 패키지 관리 도구와 공식 MongoDB 패키지를 사용하는 것입니다.

기존 바이너리를 교체하여 mongod 또는 mongos 인스턴스를 업그레이드하려면 다음과 같이 하세요.

  1. MongoDB 다운로드 페이지 에서 최신 MongoDB 수정본에 대한 바이너리를 다운로드하고 바이너리를 임시 위치에 저장합니다. 바이너리는 MongoDB 설치에서 사용하는 디렉토리 구조로 압축 해제되는 압축 파일로 다운로드됩니다.

  2. 인스턴스를 종료합니다.

  3. 기존 MongoDB 바이너리를 다운로드한 바이너리로 교체합니다.

  4. 필요한 구성 파일을 변경합니다.

  5. 인스턴스를 다시 시작합니다.

복제본 세트를 업그레이드하려면 세컨더리 부터 프라이머리 까지 각 멤버를 개별적으로 업그레이드합니다. 사전 정의된 유지 관리 기간에 업그레이드를 계획하세요.

중요

복제본 세트를 업그레이드하거나 다운그레이드하기 전에 모든 복제본 세트 멤버가 실행 중인지 확인하세요. 그렇지 않으면 모든 구성원이 시작될 때까지 업그레이드 또는 다운그레이드가 완료되지 않습니다.

참고

MongoDB 4.0.7부터 change stream은 버전 1 v1 재개 토큰 을 사용합니다. 4.0.7 이전의 MongoDB 버전에서는 v0 재개 토큰 또는 BinData 재개 토큰을 사용합니다.

MongoDB v1 에서 MongoDB 4.0.7 이상으로 업그레이드할 때, 클라이언트가 업데이트되지 않은 멤버에 연결되어 있을 때(예: v0 토큰 또는 BinData만 허용) 실패합니다. 이러한 경우 클라이언트는 change stream을 재개하기 전에 업그레이드가 완료될 때까지 기다려야 합니다.

다음과 같이 각 세컨더리를 개별적으로 업그레이드합니다.

  1. MongoDB 인스턴스 업그레이드 지침에 따라 세컨더리의 mongod 바이너리를 업그레이드합니다.

  2. 세컨더리를 업그레이드한 후 세컨더리가 SECONDARY 상태로 복구될 때까지 기다렸다가 다음 인스턴스를 업그레이드합니다. 멤버의 상태를 확인하려면 mongosh에서 rs.status()를 실행합니다.

    세컨더리는 잠시 STARTUP2 또는 RECOVERING(으)로 들어갈 수 있습니다. 이는 정상입니다. 업그레이드를 계속하기 전에 세컨더리가 SECONDARY(으)로 완전히 복구될 때까지 기다려야 합니다.

  1. 일반 페일오버 절차를 시작하려면 프라이머리를 단계적으로 낮춥니다. 다음 중 하나를 사용합니다.

    페일오버 중에는 세트에서 쓰기 (write)를 허용할 수 없습니다. 일반적으로 10~20초 정도 걸립니다. 사전 정의된 유지 관리 기간에 업그레이드를 계획하세요.

    참고

    프라이머리를 직접 종료하는 것보다 프라이머리를 단계적으로 낮추는 것이 좋습니다. 단계적으로 종료하면 페일오버 절차가 빨라집니다.

  2. 프라이머리가 강등되면 다른 멤버가 PRIMARY 상태를 맡을 때까지 mongosh에서 rs.status() 메서드를 호출합니다.

  3. 원본 프라이머리를 종료하고 MongoDB 인스턴스 업그레이드 지침에 따라 해당 인스턴스를 업그레이드합니다.

버전 3.4에서 변경됨: 이 절차는 5.0 에 적용됩니다. 다른 버전의 MongoDB 샤드 클러스터에 대한 리비전 업그레이드를 수행하려면 해당 버전의 매뉴얼을 참조하세요.

참고

MongoDB 4.0.7부터 change stream은 버전 1 v1 재개 토큰 을 사용합니다. 4.0.7 이전의 MongoDB 버전에서는 v0 재개 토큰 또는 BinData 재개 토큰을 사용합니다.

MongoDB 4.0.6 이하 버전에서 4.0.7 이상 버전으로 업그레이드하는 경우, 샤딩된 cluster의 구성원은 mongos 인스턴스가 업데이트될 때까지 v0 또는 BinData 재개 토큰을 계속 생성합니다. 업그레이드된 mongos instances가 v1 change stream 재개 토큰을 생성하기 시작합니다. 이러한 토큰은 아직 4.0.7 이상으로 업그레이드되지 않은 mongos 에서 스트림을 재개하는 데 사용할 수 없습니다.

5.0 샤드 클러스터를 업그레이드하려면 다음을 수행합니다.

  1. 밸런서 비활성화에 설명된 대로 cluster의 밸런서를 비활성화합니다.

  2. config 서버를 업그레이드합니다.

    config 서버 복제본 세트를 업그레이드하려면 복제본 세트 업그레이드 절차를 따르세요.

  3. 각 샤드를 업그레이드합니다.

  4. config 서버와 샤드가 업그레이드되면 MongoDB 인스턴스 업그레이드 지침에 따라 각 mongos 인스턴스를 업그레이드합니다. mongos 인스턴스는 어떤 순서로든 업그레이드할 수 있습니다.

  5. 밸런서 활성화에 설명된 대로 밸런서를 다시 활성화합니다.

돌아가기

런타임 데이터베이스 구성