部署MongoDB復(fù)制集(主從復(fù)制、讀寫分離、高可用)-創(chuàng)新互聯(lián)

MongoDB 復(fù)制集

復(fù)制集(Replica Sets)是額外的數(shù)據(jù)副本,是跨多個服務(wù)器同步數(shù)據(jù)的過程,復(fù)制集提供了冗余備份并提高了數(shù)據(jù)的可用性,通過復(fù)制集可以對硬件故障和中斷的服務(wù)進行恢復(fù)。

10年積累的做網(wǎng)站、成都網(wǎng)站制作經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有華寧免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

MongoDB 復(fù)制集工作原理

  1. mongodb的復(fù)制集至少需要兩個節(jié)點。其中一個是主節(jié)點(Primary),負(fù)責(zé)處理客戶端請求,其余的都是從節(jié)點(Secondary),負(fù)責(zé)復(fù)制主節(jié)點上的數(shù)據(jù)。
  2. mongodb各個節(jié)點常見的搭配方式為:一主一從、一主多從。主節(jié)點記錄其上的所有操作到 oplog 中,從節(jié)點定期輪詢主節(jié)點獲取這些操作,然后對自己的數(shù)據(jù)副本執(zhí)行這些操作,從而保證從節(jié)點的數(shù)據(jù)與主節(jié)點一致。
  3. 客戶端在主節(jié)點寫入數(shù)據(jù),在從節(jié)點讀取數(shù)據(jù),主節(jié)點與從節(jié)點進行數(shù)據(jù)交互保障數(shù)據(jù)的一致性。如果其中一個節(jié)點出現(xiàn)故障,其他節(jié)點馬上會將業(yè)務(wù)接過來而無需停機操作。

MongoDB 復(fù)制集的特點及優(yōu)勢

  • 復(fù)制集的特點:

    • N個節(jié)點的群集
    • 任何節(jié)點都可作為主節(jié)點
    • 所有寫入操作都在主節(jié)點上
    • 自動故障轉(zhuǎn)移
    • 自動恢復(fù)
  • 復(fù)制集的優(yōu)勢:
    • 讓數(shù)據(jù)更安全
    • 高數(shù)據(jù)可用性(24x7)
    • 災(zāi)難恢復(fù)
    • 無停機維護(如備份、索引重建、故障轉(zhuǎn)移)
    • 讀縮放(額外的副本讀?。?/li>
    • 副本集對應(yīng)用程序是透明的

MongoDB 復(fù)制集部署

我們可以在一臺服務(wù)器上創(chuàng)建多實例,來做復(fù)制集
MongoDB安裝及創(chuàng)建多實例詳解在博文CentOS 7安裝MongoDB(最新版4.0)

配置復(fù)制集

  1. 創(chuàng)建4個 MongoDB 實例
    # 創(chuàng)建實例的數(shù)據(jù)目錄
    mkdir -p /data/mongodb/mongodb{1,2,3,4}
     
    # 創(chuàng)建實例的日志目錄
    mkdir -p /data/logs
     
    # 創(chuàng)建實例的日志文件
    touch /data/logs/mongodb{1,2,3,4}.log
     
     # 賦予日志文件權(quán)限
     chmod 777 /data/logs/mongodb*.log
     
     #創(chuàng)建實例的配置文件存放位置
     mkdir -p /data/conf

  2. 創(chuàng)建配置文件,開啟復(fù)制集功能
    這里博主偷了個小懶,將配置文件存放在之前創(chuàng)建的 /data/conf/ 目錄下,后面創(chuàng)建的啟動腳本為實驗機的相對路徑
    # vim /data/conf/mongodb1.conf  //簡易配置為下,
        dbpath=/data/mongodb/mongodb1
        logpath=/data/logs/mongodb1.log
        port=27017
        replSet=testrc   #配置參數(shù)值為testrc
        logappend=true
        fork=true
        maxConns=5000  
        storageEngine=mmapv1

    需要注意其他三個實例的配置文件中的數(shù)據(jù)文件存放位置及日志文件和端口要改

  3. 編寫腳本方便對4條實例進行控制(這里用的是相對路徑,請根據(jù)實際修改)
    [root@CentOS7 conf]# cd /usr/local/mongodb/bin
    [root@CentOS7 bin]# vim mongodb
     
    #!/bin/bash
    INSTANCE=$1
    ACTION=$2
    case "$ACTION" in
    'start')
    /usr/local/mongodb/bin/mongod -f /data/conf/"$INSTANCE".conf;;
    'stop')
    /usr/local/mongodb/bin/mongod -f /data/conf/"$INSTANCE".conf --shutdown;;
    'restart')
    /usr/local/mongodb/bin/mongod -f /data/conf/"$INSTANCE".conf --shutdown
    /usr/local/mongodb/bin/mongod -f /data/conf/"$INSTANCE".conf;;
    esac
     
    [root@CentOS7 bin]# chmod +x mongodb
    [root@CentOS7 bin]# ./mongodb mongodb1 restart
    [root@CentOS7 bin]# ./mongodb mongodb2 restart
    [root@CentOS7 bin]# ./mongodb mongodb3 restart
    [root@CentOS7 bin]# ./mongodb mongodb4 restart
    [root@CentOS7 bin]# netstat -ntap | grep mongod

    部署MongoDB復(fù)制集(主從復(fù)制、讀寫分離、高可用)

  4. 配置三個節(jié)點的復(fù)制集

    4.1 查看復(fù)制集的狀態(tài)信息
    mongo    #(默認(rèn)端口:27017)
    > rs.status()

    部署MongoDB復(fù)制集(主從復(fù)制、讀寫分離、高可用)

    4.2 定義cfg初始化參數(shù)(這里添加三臺,剩下的那臺實驗添加節(jié)點功能)

    > cfg={"_id":"testrc","members":[{"_id":0,"host":"192.168.125.119:27017"},{"_id":1,"host":"192.168.125.119:27018"},{"_id":2,"host":"192.168.125.119:27019"}]}

    部署MongoDB復(fù)制集(主從復(fù)制、讀寫分離、高可用)

    4.3 啟動復(fù)制集功能,初始化配置時保證從節(jié)點沒有數(shù)據(jù),保持主從節(jié)點數(shù)據(jù)同步

    > rs.initiate(cfg)

  5. 添加節(jié)點
    testrc:PRIMARY>  rs.add("192.168.125.119:27020")

  6. 刪除節(jié)點
    testrc:PRIMARY>  rs.remove("192.168.125.119:27020")

另外有需要云服務(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)用場景需求。

網(wǎng)頁題目:部署MongoDB復(fù)制集(主從復(fù)制、讀寫分離、高可用)-創(chuàng)新互聯(lián)
新聞來源:http://bm7419.com/article6/dgdcig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計、網(wǎng)站內(nèi)鏈、網(wǎng)站設(shè)計公司品牌網(wǎng)站建設(shè)、企業(yè)建站企業(yè)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名