Docs Menu
Docs Home
/
MongoDB マニュアル
/ / / /

自己管理型レプリカセットのキーのローテーション

レプリカセット ノードはキーファイルを使用して、同じ配置のノードとして相互に認証できます。

キーファイルには複数のキーを含めることができ、少なくとも 1 つのキーがメンバー間で共通の場合、メンバーシップ認証が確立されます。 これにより、ダウンタイムなしでキーのローリング アップグレードが可能になります。

次のチュートリアルでは、ダウンタイムなしでレプリカセットのキーを更新するプロセスについて説明します。 [1]

警告

このチュートリアルのサンプルキーは、説明のみを目的としています。 配置にを使用しないでください 。 代わりに、選択した任意の方法を使用してキーファイルを生成します(たとえば、 openssl rand -base64 756など)。

各ノードのキーファイルに次のキーが含まれる レプリカセット を考えてみましょう。

置き換える現在のキーのイメージ。

次の手順では、レプリカセット ノードを更新して新しいキーを使用します。

新しいキーのイメージ。
[1] このチュートリアルは、 MongoDB の暗号化されたストレージ エンジン のローカル キー管理に使用される キー ファイルには適用されません。そのキーファイルには1つのキーしか入れることができません。

各ノードのキーファイルを変更して、古いキーと新しいキーの両方を含めます。 引用符で囲まれた文字列またはキーのシーケンスとして複数のキーを指定できます。

警告

このチュートリアルのサンプルキーは、説明のみを目的としています。 配置に使用しないでください。 代わりに、選択した任意の方法でキーファイルを生成します(例: openssl rand -base64 756など)。

複数のキー文字列をキー文字列のシーケンスとして指定できます(一重引用符またはdouble引用符で囲むこともできます)。

複数のキーstringシーケンスのイメージ。

すべてのキーファイルに古いキーと新しいキーの両方が含まれたら、各ノードを一度に 1 つずつ再起動します。

各 セカンダリ メンバー について mongoshをメンバーに接続し、

  1. ノードをシャットダウンするには、 db.shutdownServer()メソッドを使用します。

    use admin
    db.shutdownServer()
  2. ノードを再起動します。

プライマリの場合はmongoshをノードに接続し、

  1. rs.stepDown()を使用してメンバーを降格します。

    rs.stepDown()
  2. ノードをシャットダウンするには、 db.shutdownServer()メソッドを使用します。

    use admin
    db.shutdownServer()
  3. ノードを再起動します。

キーファイルには古いキーと新しいキーの両方が含まれているため、すべてのノードはメンバーシップ認証にどちらのキーも受け入れることができるようになりました。

警告

このチュートリアルのサンプルキーは、説明のみを目的としています。 配置に使用しないでください。 代わりに、選択した任意の方法でキーファイルを生成します(例: openssl rand -base64 756など)。

各ノードのキーファイルを変更して、新しいパスワードのみを含めます。

新しいキーのイメージ。

すべてのキーファイルに新しいキーのみが含まれたら、各ノードを一度に 1 つずつ再起動します。

各 セカンダリ メンバー についてmongoshをメンバーに接続し、

  1. ノードをシャットダウンするには、 db.shutdownServer()メソッドを使用します。

    use admin
    db.shutdownServer()
  2. ノードを再起動します。

プライマリの場合はmongoshをノードに接続し、

  1. rs.stepDown()を使用してメンバーを降格します。

    rs.stepDown()
  2. ノードをシャットダウンするには、 db.shutdownServer()メソッドを使用します。

    use admin
    db.shutdownServer()
  3. ノードを再起動します。

すべてのノードがメンバーシップ認証に新しいキーのみを受け入れるようになりました。

戻る

シャーディングされたクラスターの更新(ダウンタイムなし)