无法连接到远程Azure终端机器上运行的MongoDB实例

时间:2017-01-07 07:38:06

标签: windows mongodb azure

我无法连接到运行Windows Server 2012 R2的windows azure vm上运行的mongo实例。我已经验证了以下内容

  • 网络安全组的规则允许端口27017入站(* - > 27017)
  • VM在所有配置文件上都打开了TCP端口27017(当前,我的防火墙已完全禁用)
  • Mongo作为Windows服务运行。我已经确认它已启动并正在运行。我能够在运行Mongo
  • 的远程虚拟机上的shell中连接,插入和查找记录
  • 当我运行netstat -a时,我可以看到状态为“LISTENING”的0.0.0.0:27017
  • 如果我尝试ping VM,它会超时(我相信这是预期的)
  • 端口22在防火墙和网络安全组规则中打开
  • 我没有在我的本地计算机上运行任何第三方防病毒软件
  • 我尝试从操作系统和天蓝门户
  • 重启VM
  • 我尝试从网络安全组中删除规则并将其读取

我已经尝试使用最基本的命令mongo <ip-address>在运行Windows 10的本地计算机上通过SSH连接。它会超时消息ssh: connect to host x.x.x.x port 22: Resource temporarily unavailable

我尝试通过Putty / SSH连接。相同的结果

我尝试通过MongoDB Compass进行连接,这会产生类似的错误Could not connect to MongoDB on the provided host and port

任何想法?

这是我正在使用的配置

systemLog:
   logAppend: true
   verbosity: 0
   traceAllExceptions: true
   path: c:\MongoLogs\mongolog.log
   destination: file
net:
   port: 27017
   bindIp: [127.0.0.1, <external-ip>]      
   http:
      enabled: true
      JSONPEnabled: false
      RESTInterfaceEnabled: true
storage:
   dbPath: c:\MongoData\

1 个答案:

答案 0 :(得分:1)

事实证明,VM附加了多个网络安全组配置文件。当我单击“有效安全规则”时,它显示第二个选项卡,其中有另一个配置文件似乎已从子网继承 - 足以说,它没有所需的权限。通过在该配置文件上打开正确的端口,我们接下来的连接就好了。我们要清理它,但总之,存在权限冲突。