3つの異なるAmazonサーバーインスタンスで3ノードレプリカセット(1プライマリ、1セカンダリ、1アービタ)があります。彼らがホストされているサーバはメモリアップグレードが必要でしたので、MongoDBインスタンスもシャットダウンする必要がありました。再起動後にPRIMARYがRECOVERINGに移行しています
は、私がこの順でMongoDBのインスタンスをシャットダウンします。
- 二
- アービタ
- プライマリIは、以下の各サーバー
をシャットダウンするためのプロセスを使用use admin db.shutdownServer()
すべてMong oDBインスタンスは問題なく正常にシャットダウンされました。これまでのところすべてが問題ありません。
アマゾンサーバーのアップグレード後、私は次の順序でのMongoDBインスタンスを開始しました:
- アービタ
- 二
- プライマリ
は、アービタがアービタモードで、二次的なものであるがセカンダリモードでは、私の驚いたことに、プライマリマシンは "回復"モードになりました。
理由がわからないので、なぜプライマリマシンが「回復」に行ったのですか?
私はログを調べました。それは同期するメンバを示していません...そのようなもの
私の基本的な疑問は "レプリカセットに再構成が起こるまでPRIMARYがPRIMARYになければなりません"です。
サーバーのシャットダウン中に手順がありません。または、サーバーの再起動中に一歩も欠けていますか?
私はこの問題をどのように克服することができるように、これについていくつか光を当ててください。 Amazonサーバーでは多くのアップグレードが行われているので、頻繁にMongoDBサーバーをシャットダウンする必要があります。
"RECOVERING"には永遠に滞在しますか? – gzc
以前にプライマリだったサーバーのログに何が表示されますか?それは重要だと思います。再起動後にプライマリが復旧しました。 –