MongoDBの高可用性アーキテクチャ---レプリカセット

高可用性アーキテクチャ---レプリカセットレプリカセットは、自動フェイルオーバー(自動フェイルオーバー)の自動回復方式(自動回復)の利用可能性を含む構築物のmongod n個のノードを使用してのMongoDB。読みや分離を書くためのレプリカセットを使用します。マスターライブラリに指定された場合、接続または指定slaveOkにより、読み取りはセカンダリ圧、プライマリクマライト動作のみを共有することができます。二次ノードのデフォルトに設定されたレプリカの場合はそれが読めないです。環境は次のように:192.168.198.131 192.168.198.129 192.168.198.132のmongodサービスは、3台のサーバにインストールされてインストールされた次のようにします。#wgetのhttp://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.0.3.tgz #タールzxvfのMongoDB-Linuxベースx86_64-2.0.3.tgz -C ../software/#LN -sのMongoDB-Linuxベースx86_64-2.0.3は/ usr / local / MongoDBの#useraddのMongoDBの#ます。mkdir -p /データ/ MongoDBの/マイセット#CDは/ usr / local / MongoDBの/ binに#./mongod --replSet MYSET --dbpath /データ/ MongoDBの/マイセット--oplogSize 100 --logpath /data/mongodb/myset/myset.log --logappend --fork#./mongo //必要に応じて、次の実行>設定= {_ ID: "マイセット" のメンバー:[... {_id:0、ホスト: "192.168.198.131:27017"}、.. {_id:1、ホスト:「192.168.198.129:27017 "}、... {_id:2、ホスト:" 192.168.198.132:27017" 、arbiterOnly:真}]}以下输出内容:{ "_id": "MYSET"、 "メンバー":[{ "_id" :0、 "ホスト": "192.168.198.131:27017"}、{ "_id":1、 "ホスト": "192.168.198.129:27017"}、{ "_id":2、 "ホスト":「192.168。 198.132:27017" 、 "arbiterOnly":真}]}> rs.initiate(設定)//初始化以下输出内容:{ "情報":「構成は、現在ローカルに保存されました。分程度でオンラインに来るべき " "OK。":1}> rs.conf()//查看配置内容{ "_id": "マイセット"、 "バージョン":1、 "メンバー":[{" _id ":0、 "ホスト": "192.168.198.131:27017"}、{ "_id":1、 "ホスト": "192.168.198.129:27017"}、1は同時に0、正常異常を表し、各基は、書き込み動作を受信するために、1つのプライマリレプリカセットを有しています。そして、非同期データベースの他のメンバーにコピーされました。元のサーバーは、通常のメンバーになるために復元された後に、プライマリダイたら、自動的に、成功するために主に投票します。データがメンバーに以前のプライマリサーバーからコピーされていない場合は、データを失うことが可能です。PRIMARY> db.test.insert({ "名前": "foobarに"、 "年齢":25})PRIMARY> db.test.find(){ "_id":のObjectId( "4f4f38fc47db2bfa5ceb2aee")、 "名": " foob​​arに "" 年齢 ":25} SECONDARY> db.test.find()エラー:{" $のERR ":" マスターとslaveok =偽ではない "" コード「:13435} SECONDARY> db.test.insert({ "名前": "foobarに"、 "年齢":25})を設定slaveok = OK PRIMARYを習得ない> db.getMongo()setSlaveOk()SECONDARY>使用テストは、一次ライブラリーにdb.test> SECONDARYテストをDBに切り替え。 ObjectId( "4f4f38fc47db2bfa5ceb2aee")、 "名前"::(){ "_id" 見つける "foobarに" を、PV:1、checkEmpty:から、偽 "192.168.198.132:27017"}木3月1日午前4時17分53秒[rsHealthPoll] replSet部材192.168.198.131:27017は木3月1日午前4時17分58秒[DOWN状態にありますconn144] replSet情報192.168.198.129:27017ためいや投票(1)木3月1日4時17分59秒[rsHealthPoll] replSet部材192.168.198.129:27017がcouldn [rsHealthPoll]状態PRIMARY木3月1日4時18分05秒になりました「Tは192.168.198.131:27017に接続します)サーバー192.168.198.131:27017 PRIMARY> rs.status(に接続できませんでした。{ "設定": "マイセット"、 "日付":ISODate( "2012-03-01T09:20:37Z")、 "myState":1、 "syncingTo": "192.168.198.131:27017"、 "メンバー": [{ "_id":0、 "名前": "192.168.198.131:27017"、 "健康":0、 "状態":8、 "stateStr": "

ます。https://my.oschina.net/766/blog/211493で再現

おすすめ

転載: blog.csdn.net/weixin_34357436/article/details/91493039