当ECS实例是经典网络而MongoDB实例是专有网络(VPC),或者MongDB实例是经典网络而ECS实例是专有网络,您可根据本文中的办法快速实现不同网络类型的ECS实例连接至MongoDB实例的需求。

前提条件

  • ECS实例和MongoDB实例在同一阿里云账号中,且属于同一地域。
  • 已将ECS实例的IP地址加入MongoDB实例的白名单中,详情请参见设置白名单
    说明 关于获取ECS实例IP地址信息,请参见如何查询ECS实例的IP地址

经典网络的ECS实例连接专有网络的MongoDB实例

ECS实例与MongoDB实例网络类型不同时如何连接_连接实例_用户指南_云数据库 MongoDB 版 阿里云技术文档 第1张

通过下述三种方法均可以实现经典网络的ECS实例连接专有网络的MongoDB实例,您可以根据业务规划自行选择。

  • 将ECS实例迁移至MongoDB实例所属的专有网络中,详情请参见将ECS实例迁移至专有网络
  • 将MongoDB实例的网络类型切换为经典网络,详情请参见从专有网络切换为经典网络
  • 使用ClassicLink实现互通。
    说明 基于ClassicLink互访方案为特殊情况下的临时解决方案,生产环境中为了实现高速连接,建议您将ECS实例和MongoDB实例创建在同一VPC网络内。

    在建立ClassicLink前确保您已经了解建立连接的限制,详情请参见ClassicLink

    开启ClassicLink操作步骤:

    1. 登录专有网络管理控制台
    2. 选择目标专有网络的地域,然后单击目标专有网络的ID。
    3. 专有网络详情页面,单击开启ClassicLink, 然后在弹出的对话框,单击确定
    4. 登录ECS管理控制台
    5. 在左侧导航栏,单击目标实例
    6. 在页面左上角选择实例的所属地域。
    7. 在目标ECS实例(经典网络)的操作列中,单击更多 > 网络和安全组 > 设置专有网络连接状态
    8. 在弹出的对话框中选择MongoDB实例所属的专有网络,单击确定
    9. 在新弹出的连接专有网络对话框中,单击前往实例安全组列表添加classicLink安全组规则ECS实例与MongoDB实例网络类型不同时如何连接_连接实例_用户指南_云数据库 MongoDB 版 阿里云技术文档 第2张
    10. 单击添加ClassicLink安全组规则,根据以下信息配置ClassicLink安全组规则,然后单击确定
      配置 说明
      经典网络安全组 显示经典网络安全组的名称。
      选择专有网络安全组 选择专有网络的安全组。
      授权方式 选择一种授权方式:
      • 经典网络 <=> 专有网络:相互授权访问,推荐使用这种授权方式。
      • 经典网络 => 专有网络:授权经典网络ECS访问专有网络内的云资源。
      • 专有网络 => 经典网络:授权专有网络内的云资源访问经典网络ECS。
      协议类型 选择授权通信的协议和端口。
      端口范围 端口的输入格式为xx/xx,此处放通的端口为MongoDB实例的端口3717,填入3717/3717
      优先级 设置该规则的优先级。数字越小,优先级越高。
      描述 填入安全组描述,长度为2-256个字符,不能以 http:// 或 https:// 开头。

专有网络的ECS实例连接经典网络的MongDB实例

ECS实例与MongoDB实例网络类型不同时如何连接_连接实例_用户指南_云数据库 MongoDB 版 阿里云技术文档 第3张

将MongoDB实例切换到ECS实例所属的专有网络中,详情请参见从经典网络切换为专有网络

说明
  • 单节点实例暂不支持切换网络类型。
  • 切换网络时,实例将会出现一次闪断。请您尽量在业务低峰期执行切换操作,或确保您的应用有自动重连机制,以避免闪断造成的影响。