1.檢查Replica Set的狀態(tài)
我們注重客戶提出的每個(gè)要求,我們充分考慮每一個(gè)細(xì)節(jié),我們積極的做好成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)服務(wù),我們努力開拓更好的視野,通過不懈的努力,創(chuàng)新互聯(lián)贏得了業(yè)內(nèi)的良好聲譽(yù),這一切,也不斷的激勵(lì)著我們更好的服務(wù)客戶。 主要業(yè)務(wù):網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)站設(shè)計(jì),成都小程序開發(fā),網(wǎng)站開發(fā),技術(shù)開發(fā)實(shí)力,DIV+CSS,PHP及ASP,ASP.Net,SQL數(shù)據(jù)庫的技術(shù)開發(fā)工程師。使用db.runCommand({"replSetGetStatus" : 1});或者rs.status();
2.檢查復(fù)制延遲時(shí)間
source: m1.example.net:30001 syncedTo: Tue Oct 02 2012 11:33:40 GMT-0400 (EDT) = 7475 secs ago (2.08hrs)source: m2.example.net:30002 syncedTo: Tue Oct 02 2012 11:33:40 GMT-0400 (EDT) = 7475 secs ago (2.08hrs)
復(fù)制延遲的可能原因有:
網(wǎng)絡(luò)延遲
可以使用ping和traceroute命令探測網(wǎng)絡(luò)狀況
磁盤吞吐量
如果Secondary的磁盤不能像Primary的磁盤那樣快速將數(shù)據(jù)刷新到磁盤上,將不能和Primary保持同步更新??梢允褂胕ostat或者vmstat檢查磁盤使用狀況
并發(fā)量
在某些情況下,如果Primary上長期有操作,那么可能會(huì)阻斷Secondary的復(fù)制操作??梢钥紤]write concern 。再則就是查看是否有慢查詢。
Appropriate Write Concern
Replica Acknowledge Write Concern
Replica Set Write Concern
3.所有成員間的連接測試
Replica Set之間的成員需要能夠相互連通,檢查防火墻設(shè)置。
4.重啟多個(gè)Secondar的Socket Exceptions問題
當(dāng)重啟Replica Set中的多個(gè)成員時(shí),確??梢赃x出一個(gè)Primary。如果在維護(hù)的過程中程序出現(xiàn)socket連接錯(cuò)誤,可以檢查TCP的keepalive設(shè)置。
cat /proc/sys/net/ipv4/tcp_keepalive_time
Linux下默認(rèn)設(shè)置tcp_keepalive_time為7200秒,即兩個(gè)小時(shí)??梢詫⑺械腗ongoDB實(shí)例所在的服務(wù)器的這個(gè)值設(shè)置成300秒。
echo 300 > /proc/sys/net/ipv4/tcp_keepalive_time
這種設(shè)置重啟后將消失,需要重新修改??梢灾苯有薷?etc/sysctl.conf然后執(zhí)行sysctl -p
5.檢查Oplog的大小
oplog越大,能夠接受得延遲就越大。
使用db.printReplicationInfo();查看oplog的大小
db.printReplicationInfo(); configured oplog size: 50278.6203125MB log length start to end: 143109secs (39.75hrs) oplog first event time: Wed Mar 18 2015 00:36:53 GMT+0800 (CST) oplog last event time: Thu Mar 19 2015 16:22:02 GMT+0800 (CST) now: Thu Mar 19 2015 17:32:42 GMT+0800 (CST)如果重新設(shè)置oplog的大小需要將所有的成員都設(shè)置成為大小一樣
6.Oplog Entry Timestamp Error
如果日志中出現(xiàn)如下報(bào)錯(cuò)
replSet error fatal couldn't query the local local.oplog.rs collection. Terminating mongod after 30 seconds.[rsStart] bad replSet oplog entry?
參考資料:
http://docs.mongodb.org/v2.4/tutorial/troubleshoot-replica-sets/
http://john88wang.blog.51cto.com/2165294/1564543
http://docs.mongodb.org/v2.4/faq/diagnostics/#faq-keepalive
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。