レプリケーション構成でSecondaryのみとなってしまった場合の復旧方法について

565 views
Skip to first unread message

noriaki....@g.softbank.co.jp

unread,
Aug 14, 2014, 10:44:39 PM8/14/14
to mongo...@googlegroups.com
お世話になります。

Pri-Sec-Secの3台構成でレプリカ構成しています。
このうち2台で障害が発生した場合、過半数票を取得できない最後の1台は必ずSecondaryになると思います。

この場合で、残り2台の復旧が困難でありSecondaryで残った1台を使い
何とかサービス継続を行いたい場合このノードをPrimaryにする方法はあるのでしょうか?

障害の2台を切り離そうとレプリカの再構成を試みましたが、
Secondaryノードからは再構成ができませんでした。

皆様ご教示いただければ幸いです

よろしくお願いいたします。


Tetsutaro Watanabe

unread,
Aug 15, 2014, 4:14:17 AM8/15/14
to mongo...@googlegroups.com

渡部です

rs.reconfigを使って、一台のmongodでレプリカセットを構成するのが一般的です。

2014/08/15 11:44 <noriaki....@g.softbank.co.jp>:
--
このメールは Google グループのグループ「MongoDB JP」に登録しているユーザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには mongodb-jp+...@googlegroups.com にメールを送信してください。
このグループに投稿するには mongo...@googlegroups.com にメールを送信してください。
http://groups.google.com/group/mongodb-jp からこのグループにアクセスしてください。
その他のオプションについては https://groups.google.com/d/optout にアクセスしてください。

Naruhiko Ogasawara

unread,
Aug 15, 2014, 4:21:35 AM8/15/14
to mongo...@googlegroups.com
小笠原です。

2014年8月15日 17:14 Tetsutaro Watanabe <fet...@gmail.com>:
> 渡部です
>
> rs.reconfigを使って、一台のmongodでレプリカセットを構成するのが一般的です。

ご質問のケースだとすでにsecondaryに落ちているので、rs.reconfig叩けない気が
するんですが(手元で試すとやっぱりエラーになる)、もうちょっと詳しい手順を記述
していただけると助かります。

# なんか単純な見落としをしてる気もするのですが一応。

[以上]
--
Naruhiko Ogasawara (nar...@gmail.com)

norinomamedaifuku

unread,
Aug 15, 2014, 4:24:19 AM8/15/14
to mongo...@googlegroups.com
渡部さん、小笠原さん
コメントありがとうございます。

小笠原さんのコメント通り、自身もSecondaryのみのため
reconfigコマンドが発行できず、困っております。

もう少し教えていただけると助かります。

何卒よろしくお願いいたします。

岸本




2014年8月15日金曜日 11時44分39秒 UTC+9 norinomamedaifuku:

Naruhiko Ogasawara

unread,
Aug 15, 2014, 4:24:37 AM8/15/14
to mongo...@googlegroups.com
たびたび失礼します。
自分で検索して見つけました。

http://docs.mongodb.org/manual/tutorial/reconfigure-replica-set-with-unavailable-members/

> var conf = rs.conf()

で一度現在の構成を受けて、死んだノードをmembersから外して(このとき_idを変えたらだめ)、

> rs.reconfig(conf, {force: true})

でいけますね。

2014年8月15日 17:21 Naruhiko Ogasawara <nar...@gmail.com>:
--
Naruhiko Ogasawara (nar...@gmail.com)

norinomamedaifuku

unread,
Aug 15, 2014, 4:29:00 AM8/15/14
to mongo...@googlegroups.com
小笠原さん、渡部さん

ありがとうございました!
forceオプションで無事Primaryに選出することができました。

非常に助かりました(そして勉強になりました)
ありがとうございました!

岸本


2014年8月15日金曜日 11時44分39秒 UTC+9 norinomamedaifuku:
お世話になります。

Naruhiko Ogasawara

unread,
Aug 15, 2014, 4:33:27 AM8/15/14
to mongo...@googlegroups.com
小笠原です。

> ありがとうございました!
> forceオプションで無事Primaryに選出することができました。

おお、めでたいです!


> 非常に助かりました(そして勉強になりました)
> ありがとうございました!

ぼくもreconfig一番最初に試してダメだったので、渡部さんがそれで
イケると言ってくださらなかったら正解に辿りつけなかったと思います。
(さっきのリンクは "rs.reconfig secondary" でぐぐったら一発で出て
きたやつです)
勉強になりました。

これからもなにかありましたら質問を投げて頂いて、MongoDB JPを
盛り上げていきましょう :)

それでは。
--
Naruhiko Ogasawara (nar...@gmail.com)

Tetsutaro Watanabe

unread,
Aug 15, 2014, 7:27:41 AM8/15/14
to mongo...@googlegroups.com

渡部です

復旧して何よりです。

説明不足でしたが、小笠原さんが凄まじい早さでフォローしていただき、助かりました。ありがとうございます。

Hiroaki Kubota

unread,
Aug 15, 2014, 9:52:02 PM8/15/14
to mongo...@googlegroups.com
へー
昔は一回落としてlocal消してstandaloneで上げなおして再構成だったのに、今はforceなんてあるんですねー
便利!


2014年8月15日 20:27 Tetsutaro Watanabe <fet...@gmail.com>:

渡部です

復旧して何よりです。

説明不足でしたが、小笠原さんが凄まじい早さでフォローしていただき、助かりました。ありがとうございます。

--
このメールは Google グループのグループ「MongoDB JP」に登録しているユーザーに送られています。
Reply all
Reply to author
Forward
0 new messages