문서 메뉴
문서 홈
/
MongoDB 매뉴얼
/ / /

샤드 클러스터의 키 회전하기

샤드 클러스터 멤버는 키파일 을 사용하여 동일한 배포의 멤버로 서로를 인증할 수 있습니다.

키 파일 에는 여러 개의 키가 포함될 수 있으며 멤버 간에 하나 이상의 키가 공통적으로 사용되는 경우 멤버십 인증이 설정됩니다. 이를 통해 다운타임 없이 키를 롤링 업그레이드할 수 있습니다.

다음 튜토리얼에서는 다운타임 없이 샤드 cluster의 키를 업데이트하는 프로세스를 단계별로 설명합니다. [1]

경고

이 튜토리얼의 예제 키는 설명 목적으로만 사용됩니다. 배포에 을(를) 사용하지 마세요 . 대신 원하는 방법을 사용하여 키 파일을 생성합니다(예: openssl rand -base64 756 등).

각 멤버의 키 파일에 다음 키가 포함된 샤드 클러스터를 생각해 보세요.

교체할 현재 키 이미지.

다음 절차는 새 키를 사용하도록 샤딩된 cluster 멤버를 업데이트합니다.

새 키 이미지.
[1] 이 튜토리얼은 MongoDB의 암호화된 스토리지 엔진 로컬 키 관리에 사용되는 키 파일 에는 적용되지 않습니다. 해당 키파일 에는 하나의 키만 포함할 수 있습니다.

이전 키와 새 키를 모두 포함하도록 각 멤버의 키 파일을 수정합니다.

경고

이 튜토리얼의 예제 키는 설명 목적으로만 사용됩니다. 배포서버에 사용하지 마세요 . 대신 원하는 방법을 사용하여 키 파일을 생성합니다(예: openssl rand -base64 756 등).

여러 키 문자열을 키 문자열의 시퀀스로 지정할 수 있습니다(선택적으로 따옴표로 묶음).

여러 키 문자열 시퀀스 이미지.

모든 키 파일에 이전 키와 새 키가 모두 포함되면 각 멤버를 한 번에 하나씩 다시 시작합니다.

config 서버 복제본 세트(CSRS)의 각 세컨더리 멤버에 대해 mongosh 를 멤버에 연결합니다.

  1. db.shutdownServer() 메서드를 사용하여 멤버를 종료합니다:

    use admin
    db.shutdownServer()
  2. 멤버를 다시 시작합니다.

프라이머리의 경우 mongosh 를 멤버에 연결하고

  1. rs.stepDown() 를 사용하여 멤버를 물러나게 합니다:

    rs.stepDown()
  2. db.shutdownServer() 메서드를 사용하여 멤버를 종료합니다:

    use admin
    db.shutdownServer()
  3. 멤버를 다시 시작합니다.

샤드 복제본 세트 의 각 세컨더리 멤버에 대해 mongosh 를 멤버에 연결하고 다음을 수행합니다.

  1. db.shutdownServer() 메서드를 사용하여 멤버를 종료합니다:

    use admin
    db.shutdownServer()
  2. 멤버를 다시 시작합니다.

각 샤드 복제본 세트 의 프라이머리에 대해 mongosh 를 멤버에 연결하고

  1. rs.stepDown() 를 사용하여 멤버를 물러나게 합니다:

    rs.stepDown()
  2. db.shutdownServer() 메서드를 사용하여 멤버를 종료합니다:

    use admin
    db.shutdownServer()
  3. 멤버를 다시 시작합니다.

각 mongos/router 인스턴스 에 대해 mongoshmongos 인스턴스에 연결하고 다음을 수행합니다.

  1. db.shutdownServer() 메서드를 사용하여 멤버를 종료합니다:

    use admin
    db.shutdownServer()
  2. 멤버를 다시 시작합니다.

모든 멤버가 다시 시작되면 이제 멤버는 멤버십 인증을 위해 이전 키 또는 새 키를 허용합니다.

경고

이 튜토리얼의 예제 키는 설명 목적으로만 사용됩니다. 배포서버에 사용하지 마세요 . 대신 원하는 방법을 사용하여 키 파일을 생성합니다(예: openssl rand -base64 756 등).

새 비밀번호만 포함하도록 각 멤버의 키 파일을 수정합니다.

새 키 이미지.

모든 키 파일에 새 키만 포함되면 각 멤버를 한 번에 하나씩 다시 시작합니다.

config 서버 복제본 세트(CSRS)의 각 세컨더리 멤버에 대해 mongosh 를 멤버에 연결하고 다음을 수행합니다.

  1. db.shutdownServer() 메서드를 사용하여 멤버를 종료합니다:

    use admin
    db.shutdownServer()
  2. 멤버를 다시 시작합니다.

프라이머리의 경우 mongosh 를 멤버에 연결하고

  1. rs.stepDown() 를 사용하여 멤버를 물러나게 합니다:

    rs.stepDown()
  2. db.shutdownServer() 메서드를 사용하여 멤버를 종료합니다:

    use admin
    db.shutdownServer()
  3. 멤버를 다시 시작합니다.

샤드 복제본 세트 의 각 세컨더리 멤버에 대해 mongosh 를 멤버에 연결하고 다음을 수행합니다.

  1. db.shutdownServer() 메서드를 사용하여 멤버를 종료합니다:

    use admin
    db.shutdownServer()
  2. 멤버를 다시 시작합니다.

각 샤드 복제본 세트 의 프라이머리에 대해 mongosh 를 멤버에 연결하고

  1. rs.stepDown() 를 사용하여 멤버를 물러나게 합니다:

    rs.stepDown()
  2. db.shutdownServer() 메서드를 사용하여 멤버를 종료합니다:

    use admin
    db.shutdownServer()
  3. 멤버를 다시 시작합니다.

각 mongos/router 인스턴스 에 대해 mongoshmongos 인스턴스에 연결하고 다음을 수행합니다.

  1. db.shutdownServer() 메서드를 사용하여 멤버를 종료합니다:

    use admin
    db.shutdownServer()
  2. 멤버를 다시 시작합니다.

모든 멤버가 다시 시작되면 이제 멤버는 멤버십 인증을 위해 새 키만 허용합니다.

돌아가기

복제본 세트의 키 회전

다음

회원 인증에 x.509 인증서 사용