2017-06-13 200 views
0

我在MongoDB中配置了三節點副本集;複製同步。無法使用公共IP地址連接到MongoDB副本集

我能夠連接到每個服務器單獨,並使用每臺服務器的私有IP地址,我可以連接到設置這樣的副本:

mongo --host rs0/10.X.X.X:27017,10.X.X.X:27017,10.X.X.X:27017 -u root -p abc123 --authenticationDatabase admin

但是當我嘗試使用連接到副本集該服務器的公網IP地址,就像這樣:

mongo --host rs0/52.X.X.X:27017,52.X.X.X:27017,52.X.X.X:27017 -u root -p abc123 --authenticationDatabase admin

我得到一個錯誤:‘沒有找到一套RS0檢測到的主’。

+1

這真的應該問的[DBA,stackexchange.com(https://dba.stackexchange.com)的是針對與數據庫管理和配置有關的問題和答案。 StackOverflow適用於:「編程」的問題,其中不是。請將您的帖子移至相應的網站,而不是在這裏發帖。 –

回答

0

當您連接到副本集時,應該使用相同的地址(IP地址或主機名)作爲節點在副本集配置中彼此使用的地址。對於副本集的部署,您需要:

Ensure that network traffic can pass between all members of the set and all clients in the network securely and efficiently.

在實踐中,這是最好使用公網IP地址來配置你的副本集;使用私有IP地址更安全,這有助於確保您的數據庫只能接收來自授權位置的連接。

0

這可能是原因之一。

就必須加入所有3個服務器公網IP到IP綁定值的所有3個服務器/etc/mongod.conf

如果您正在使用AWS,你需要讓所有這些IP的另一個入站訪問服務器。

0

謝謝你們的回覆, 它需要rs.config與公網IP配置副本