|
based on v28 Master/Slave構成のセットアップmaster-slaveの構成で、masterデータベースの設定をするには、 master モードと、 slave モードの両方のデータベースインスタンスをスタートさせておく必要があります。
$ bin/mongod --master [--dbpath /data/masterdb/] このコマンドで作成されたmasterサーバプロセスは、 local.oplog.$main コレクションを作成します。これは、slave用のオペレーションのキューが入る"トランザクションログ"として使われます。 master-slave構成でslaveデータベースになるデータベースを設定するためには、 $ bin/mongod --slave --source <masterhostname>[:<port>] [--dbpath /data/slavedb/] sourceサーバの詳細は、 local.sources コレクションに保存されます。 --source パラメータを指定する代わりに、 masterサーバの情報を保存する local.sources へオブジェクトを追加する方法もあります。 $ bin/mongo <slavehostname>/local
> db.sources.find(); // コレクションが空のことを確認。そして、
> db.sources.insert( { host: <masterhostname> } );
slaveは、複数のマスターから情報を持ってくることができます。 このようなケースでは、複数の設定を、 local.sources に入れることができます。 One Slave Two Masters を参照してください。 サーバは、同時に、slaveとmasterになれます。 slaveは、masterとの同期が長いこと失敗した場合や、slaveが切断され、その後、時間が経ってから再開された場合など、masterからの適切なアップデートが存在しない場合に、syncされない状態(out of sync)になることがあります。もしslaveがこの状態になってしまった場合、レプリケーションは中断されます。もし再開したい場合には、デフォルトでは、人が手動で直す必要があります。 {resync:1} コマンドを使って、レプリケーションを再開させます。 または、 --autoresync オプションをコマンドラインで付けると、out of syncの状態だった場合、slaveは自動的に(10秒待った後)、レプリケーションを再開します。 --autoresync オプションが指定されている場合でも、slaveは、10分に一度以上の再試行をしません。 --oplogSize コマンドラインオプションで ( --master と一緒に指定され) 、slaveノードへアップデートするための情報を保存するための、ディスクスペースをメガバイト単位で指定します。 --oplogSize を指定しない場合、64bitマシーンではディスクスペースの5%(ただし1GBは最小限必要)が、32bitマシンでは50MBが使われます。 セキュリティセキュリティ機能が有効になっている場合の設定の例。 $ dbshell <slavehostname>/admin -u <existingadminusername> -p<adminpassword>
> use local
> db.addUser('repl', <replpassword>);
^c
$ dbshell <masterhostname>/admin -u <existingadminusername> -p<adminpassword>
> use local
> db.addUser('repl', <replpassword>);
|

IF YOU HAVE A QUESTION, POST IT TO THE USER GROUP.
These pages are fine for comments, but for questions, your best bet will always be the MongoDB User Group. blog comments powered by Disqus