2016-08-22 76 views
0

有一個在AWS一個蒙戈DB模板這是本蒙戈DB服務器:http://docs.aws.amazon.com/quickstart/latest/mongodb/welcome.htmlMongoDB的AWS Cloudformation模板:無法連接到從其他實例

使用該模板NAT實例和主節點實例之後被創建。現在我已經有一個正在運行的實例,可以說它是「MyOriginalInstance」,現在我想從MyOriginalInstance連接到mongo數據庫。

問題是,mongodb主節點實例沒有公共IP地址,所以我怎麼連接它呢?

它具有本地IP 10.0.2.80

我檢查了我的VPC安全組入站規則,它說,來自所有允許的,即0.0.0.0/0,和所有必要的端口都在那裏。

當我ssh進入主節點實例時,我能夠連接到mongodb服務器。我只能從我的NAT實例中獲得主節點的ssh,而其他實例我甚至無法連接到它。我做了ssh [email protected],因爲我已經將ssh密鑰添加到已知主機。

然後,我在NAT實例上安裝了mongodb,並從那裏連接到mongo服務器,但我無法訪問。我從NAT實例做了mongo 10.0.2.80,連接失敗。

因此,任何想法如何使用我的NAT實例和MyOriginalInstance連接到mongo數據庫服務器?

我mongod.conf

net: 
    port: 

systemLog: 
    destination: file 
    logAppend: true 
    path: /log/mongod.log 

storage: 
    dbPath: /data 
    journal: 
    enabled: true 

processManagement: 
    fork: true 
    pidFilePath: /var/run/mongod/mongod.pid 
+0

什麼是你的MongoDB服務器的配置了'bind_ip'設置? –

+0

我在mongod.conf中沒有bind_ip,我已經在上面添加了它的內容。 – user1735921

+0

然後它默認綁定到'127.0.0.1',它只允許本地主機連接。您需要在您的配置中添加'bind_ip = 0.0.0.0'。 –

回答

0

從你的描述,似乎你的蒙戈實例是私人子網。所以你必須通過NAT實例使用iptables連接到mongo實例。

請檢查本指南的第4步。請記住,該指南是SSH進入實例,您將不得不修改它以ssh到Mongo實例。

https://cloudpages.wordpress.com/2013/08/05/ssh-to-an-instance-in-private-subnet/

+0

仍然無法連接,我配置默認端口27017從NATInstance到27017在mongoDBInstance使用你發給我的教程,然後我在MyOriginalInstance,'mongo NATInstanceIP:27017'和'mongo NATInstanceIP'的命令行中執行了這個操作,但是仍然無法連接,如果我將端口轉發到22,那麼我可以連接到mongoDBInstance從MyOriginalInstance通過此命令'ssh -p ec2-user @ NATInstanceIP'但我想通過mongo db shell連接...這樣我就可以訪問mongo db – user1735921

相關問題