真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

MongoDB復制集的選舉原理詳解以及復制集管理簡介-創(chuàng)新互聯(lián)

前言介紹

主要從事網(wǎng)頁設(shè)計、PC網(wǎng)站建設(shè)(電腦版網(wǎng)站建設(shè))、wap網(wǎng)站建設(shè)(手機版網(wǎng)站建設(shè))、響應(yīng)式網(wǎng)站開發(fā)、程序開發(fā)、微網(wǎng)站、小程序開發(fā)等,憑借多年來在互聯(lián)網(wǎng)的打拼,我們在互聯(lián)網(wǎng)網(wǎng)站建設(shè)行業(yè)積累了豐富的成都網(wǎng)站制作、成都做網(wǎng)站、網(wǎng)絡(luò)營銷經(jīng)驗,集策劃、開發(fā)、設(shè)計、營銷、管理等多方位專業(yè)化運作于一體,具備承接不同規(guī)模與類型的建設(shè)項目的能力。

復制的原理:

復制操作是基于oplog,類似mysql中的bin-log,只記錄發(fā)生改變的記錄。

選舉的原理:

節(jié)點分為:標準節(jié)點、被動節(jié)點和仲裁節(jié)點。

  • 標準節(jié)點(priority值高):只有標準節(jié)點才可成為primary;

  • 被動節(jié)點(priority值低):被動節(jié)點只能是secondary;

  • 仲裁節(jié)點:不能復制數(shù)據(jù)、不可成為活躍點、只有選舉權(quán);

選舉結(jié)果:票數(shù)高者獲勝;若票數(shù)相同,數(shù)據(jù)新者獲勝

一、復制集選舉實驗介紹

實驗步驟

  1. 查看oplog日志

  2. 配置復制集的優(yōu)先級

  3. 模擬主節(jié)點故障

  4. 模擬所有標準節(jié)點故障

二、復制集選舉實驗內(nèi)容

---------------------------查看oplog日志-------------------------

> use school
switched to db school
> db.info.insert({"id":1,"name":"tom"})
WriteResult({ "nInserted" : 1 })
> db.info.find()
{ "_id" : ObjectId("5b9a0873692de658bd931c64"), "id" : 1, "name" : "tom" }
> use local
switched to db local
> show collections
me
oplog.rs
…
> db.oplog.rs.find()                
{ "ts" : Timestamp(1536723445, 3), … : { "create" : "transactions", "idIndex" : { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "config.transactions" } } }
{ "ts" : Timestamp(1536723445, 5), …: { "create" : "system.keys", "idIndex" : { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "admin.system.keys" } } }

------------------------配置復制集的優(yōu)先級----------------------------

cfg={"_id":"yandada","members": [{"_id":0,"host":"192.168.218.149:27017","priority":100},{"_id":1,"host":"192.168.218.149:27018","priority":100},{"_id":2,"host":"192.168.218.149:27019","priority":0},{"_id":3,"host":"192.168.218.149:27020","arbiterOnly":true}]}

rs.reconfig(cfg)

       { "ok" : 1 }             //顯示OK:1時表示節(jié)點配置成功

rs.status()                   //查看狀態(tài)信息

rs.isMaster()             //查看節(jié)點信息

{                                          //顯示信息如下
    "hosts" : [
        "192.168.218.149:27017",
        "192.168.218.149:27018"
    ],
    "passives" : [
        "192.168.218.149:27019"
    ],
    "arbiters" : [
        "192.168.218.149:27020"
    ]

------------------------模擬主節(jié)點故障----------------------------

關(guān)閉主節(jié)點服務(wù)器

yandada:PRIMARY> use admin               #進入admin集合才能進行下一步操作
switched to db admin
yandada:PRIMARY> db.shutdownServer()              #關(guān)閉服務(wù)器
server should be down…

以上操作等同于[root@yandada3 ~]# mongod -f /etc/mongod.conf --shutdown

[root@yandada3 ~]# mongo --port 27018

yandada:PRIMARY> rs.status()

查看狀態(tài)信息后會發(fā)現(xiàn)MongoDB復制集會選舉第二個標準節(jié)點作為主節(jié)點

---------------------------模擬所有標準節(jié)點故障------------------------

[root@yandada3 ~]# mongod -f /etc/mongod.conf --shutdown
killing process with pid: 4238

[root@yandada3 ~]# mongo --port 27019

yandada:SECONDARY> rs.status()

查看查看狀態(tài)信息后會發(fā)現(xiàn)無primary節(jié)點,被動節(jié)點無法成為主節(jié)點

三、復制集管理簡介

1.配置允許從節(jié)點讀取數(shù)據(jù)

yandada:SECONDARY> rs.slaveOk()

2.查看復制集狀態(tài)信息

rs.help()

yandada:PRIMARY> rs.printReplicationInfo()
configured oplog size:  990MB              #oplog存儲大小為990MB
log length start to end: 101403secs (28.17hrs)
oplog first event time: Wed Sep 12 2018 11:37:13 GMT+0800 (CST)
oplog last event time:  Thu Sep 13 2018 15:47:16 GMT+0800 (CST)
now:                    Thu Sep 13 2018 15:47:17 GMT+0800 (CST)
yandada:PRIMARY> rs.printSlaveReplicationInfo()
source: 192.168.218.149:27018
    syncedTo: Thu Sep 13 2018 15:47:26 GMT+0800 (CST)
    0 secs (0 hrs) behind the primary
source: 192.168.218.149:27019
    syncedTo: Thu Sep 13 2018 15:47:26 GMT+0800 (CST)
    0 secs (0 hrs) behind the primary

3.更改oplog大小

        1.第一步,退出復制集

yandada:PRIMARY> use admin             
switched to db admin
yandada:PRIMARY> db.shutdownServer()             
server should be down…

       2.第二步,更改端口(復制集中含有源端口),關(guān)閉配置文件中復制集名稱,啟動mongod

vim /etc/mongod.conf

net:
  port: 2

#replication:
 #  replSetName: yandada

mongod -f /etc/mongod.conf

         3.第三步,更改oplog大小

[root@yandada3 ~]# mongo --port 27028

> use local
switched to db local
> db.oplog.rs.drop()
true
> db.runCommand({create:"oplog.rs",capped:true,size:(2*2048*2048*2048)})
{ "ok" : 1 }

[root@yandada3 ~]# mongod -f /etc/mongod.conf --shutdown
killing process with pid: 8296
[root@yandada3 ~]# vim /etc/mongod.conf

net:
  port: 27017

replication:
    replSetName: yandada
    oplogSizeMB: 16384

[root@yandada3 ~]# mongod -f /etc/mongod.conf

[root@yandada3 ~]# mongo

yandada:SECONDARY> rs.printReplicationInfo()

configured oplog size: 16384MB            #oplog大小更改為16G

4.認證部署

        1.第一步,創(chuàng)建認證用戶

yandada:PRIMARY> use admin
switched to db admin
yandada:PRIMARY> db.createUser({"user":"root","pwd":"123","roles":["root"]})
Successfully added user: { "user" : "root", "roles" : [ "root" ] }

        2.第二步,編輯認證配置

vim /etc/mongod.conf

    security:

          keyFile: /usr/bin/kgcrskey1

          clusterAuthMode:keyFile             注:需要與上一行齊平

同理,修改mongod[2,3,4]文件

[root@yandada3 ~]# echo "kgcrs key" > /usr/bin/kgcrskey[1,2,3,4]

[root@yandada3 bin]# echo "kgcrs key" > /usr/bin/kgcrskey1
[root@yandada3 bin]# echo "kgcrs key" > /usr/bin/kgcrskey2
[root@yandada3 bin]# echo "kgcrs key" > /usr/bin/kgcrskey3
[root@yandada3 bin]# echo "kgcrs key" > /usr/bin/kgcrskey4

[root@yandada3 bin]# chmod 600 /usr/bin/kgcrskey{1,2,3,4}

          3.第三步,重啟服務(wù)

[root@yandada3 bin]# mongod -f /etc/mongod.conf --shutdown

[root@yandada3 bin]# mongod -f /etc/mongod.conf

同理,重啟mongod[2,3,4]

         4.第四步,查看配置狀況

yandada:PRIMARY> show dbs

   "ok" : 0                 #無權(quán)查看

yandada:PRIMARY> use admin
switched to db admin
yandada:PRIMARY> db.auth("root","123")
1                              #返回值為1,表示授權(quán)成功
yandada:PRIMARY> show dbs
admin  0.000GB
config 0.000GB
local  0.000GB
school 0.000GB

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


本文標題:MongoDB復制集的選舉原理詳解以及復制集管理簡介-創(chuàng)新互聯(lián)
分享地址:http://weahome.cn/article/gospp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部