在Azure上运行的Windows数据中心服务器2012 R2上远程连接到MongoDB

时间:2016-04-27 16:26:26

标签: mongodb azure windows-server-2012-r2

我尝试了所有能找到的东西:

1)在Azure配置中设置新的网络安全组(NSG)

2)配置Windows防火墙以允许27017上的端口流量。

3)编辑了MongoDB的cfg文件,以便与本地ip绑定到外部子网10.0.0.4。

net:
    bindIp: 127.0.0.1,10.0.0.4
    port: 28017
systemLog:
    destination: file
    path: c:\mongodb\logs\mongod.log
storage:
    dbPath: c:\mongodb\data\db

我已经禁用了Windows防火墙 - 没有成功。

我已经改变了azure配置中的网络安全组,以允许所有端口上的所有流量 - 没有成功。

image

我已将MongoDB更改为使用非默认端口,并相应地更新了防火墙和NSG,如上面的cfg所示 - 没有成功。

在上述所有情况下,我甚至无法从多台远程机器(win 7和win 10)查询端口。

portqry.exe -n xxx.southcentralus.cloudapp.azure.com -e 28017 -p BOTH exits with return code 0x00000002

在旧的虚拟机配置上很容易做到(配置端点)。现在有了这些资源组,我显然错过了一些东西。

1 个答案:

答案 0 :(得分:0)

您的NSG设置看起来不错。唯一可疑的是bindIp。请尝试将其设置为:

net:
    bindIp: 0.0.0.0
    port: 28017

我重新创建了你的配置,这是唯一的区别。事实上,如果我尝试绑定到我的内部IP地址,mongod无法启动。尝试绑定到0.0.0.0 - 这应该允许您通过localhost和外部世界连接。

注意:如果您确实希望bindIp中有多个地址,则需要将列表括在

[ ... ]

支架。