我試圖將運行在一個EC2實例上的應用程序連接到另一個EC2實例上運行的MongoDB。我很確定問題出在安全設置上,但我不太清楚如何處理這個問題。AWS,NodeJS - 將應用程序連接到另一個EC2實例上的Mongodb
首先,我的應用的實例位於ELB後面的自動調整組中。實例和ELB的入站安全設置允許從任何位置訪問端口80,以及來自其自身安全組的所有流量。
如果該實例的安全組接受來自任何地方的所有入站通信,則運行Mongo的EC2實例能夠建立連接。我嘗試過的任何其他配置會導致應用程序說它無法與遠程地址建立連接。我制定了規則來接受來自我擁有的所有安全組的入站流量,但只有當我允許來自任何地方的所有流量時,它似乎才起作用。
此外,我的數據庫實例設置了一個彈性ip。我是否應該在ELB背後也有這個實例?
所以我的問題是:
1)我怎樣才能安全地使運行蒙戈我的EC2實例連接?
2)在體系結構方面,以這種方式運行我的數據庫是否有意義,還是應該在負載均衡器後面加上這個方法?
這個問題讓我絆倒了很多比我想象的更多,所以任何幫助將不勝感激。
注意
我還設置了bind_ip=0.0.0.0
在/etc/mongo.conf