本教程指导您使用私网连接(PrivateLink)服务将一个专有网络(VPC)内部署的私网SLB服务共享给其他账号下的VPC访问。

背景信息

VPC是您独有的云上私有网络,不同VPC之间完全隔离。您可以通过PrivateLink,实现VPC与阿里云上的服务建立安全稳定的私有连接,简化网络架构,避免通过公网访问服务带来的潜在安全风险。

通过PrivateLink实现私网访问,您需要创建终端节点服务和终端节点。
  • 终端节点服务

    终端节点服务是可以被其他VPC通过创建终端节点建立私网连接的服务。终端节点服务由服务提供方创建和管理。

  • 终端节点

    终端节点可以与终端节点服务相关联,以建立通过VPC私网访问外部服务的网络连接。终端节点由服务使用方创建和管理。

说明
  • 目前,私网连接正在公测,仅德国(法兰克福)地域支持私网连接服务,且需申请公测。如需使用,请提交公测申请
  • 公测期间,私网连接服务不承诺任何服务等级协议(SLA)相关的保障条款。

配置场景

本教程以下图场景为例。某公司在阿里云有两个云账号,账号1 UID为12345678,账号2 UID为87654321。该公司在账号1和账号2下分别创建了VPC1和VPC2,VPC2中的ECS实例创建了应用服务。因业务发展,VPC2中的服务需要被VPC1通过私网访问,避免公网访问服务带来的潜在安全风险。

您可以在VPC2下创建支持PrivateLink的负载均衡实例,将ECS实例添加为负载均衡实例的后端服务器,然后创建终端节点服务,将负载均衡实例添加为服务资源,并将账号1的UID添加到终端节点服务的服务白名单中。在VPC1下创建终端节点。创建成功后,VPC1即可跨账号私网访问VPC2下的服务。搭建终端节点服务

前提条件

开始前,请确保满足以下条件:
  • 您已经注册了阿里云账号。如还未注册,请先完成账号注册
  • 您已经在VPC2下创建了ECS实例,并部署了应用服务。详细信息,请参见使用向导创建实例
  • 您已经在VPC1创建了安全组。详细信息,请参见创建安全组

配置步骤

配置步骤

步骤一:创建支持PrivateLink功能的负载均衡实例

目前,仅支持PrivateLink功能的负载均衡实例可以作为终端节点服务的服务资源。通过PrivateLink实现在VPC间私网访问服务前,您需要创建支持PrivateLink功能的负载均衡实例。

完成以下操作,创建支持PrivateLink功能的负载均衡实例。

  1. 使用账号2登录负载均衡管理控制台
  2. 在左侧导航栏,单击实例 > 实例管理
  3. 实例管理页面,单击创建负载均衡
  4. 在购买页面,根据以下信息配置负载均衡实例。
    • 付费模式:选择一种付费模式。 本教程选择按量付费
      说明 仅按量付费模式的负载均衡实例支持PrivateLink功能。
    • 地域和可用区:选择负载均衡实例所属的地域和可用区,确保负载均衡实例的地域和后端添加的云服务器ECS的地域相同。 本教程选择德国(法兰克福)欧洲中部1 可用区A
      说明 目前,仅德国(法兰克福)地域的负载均衡实例支持PrivateLink功能。
    • 实例类型:根据业务场景选择配置对外公开或对内私有的负载均衡服务,系统会根据您的选择分配公网或私网服务地址。详细信息,请参见实例概述
      • 公网:公网负载均衡实例仅提供公网IP,可以通过Internet访问负载均衡。
      • 私网:私网负载均衡实例仅提供阿里云私网IP,只能通过阿里云内部网络访问该负载均衡服务,无法从Internet访问。
      本教程选择私网
      说明私网类型的负载均衡实例支持PrivateLink功能。
    • 专有网络:选择VPC2及VPC2下的交换机。
    • 功能特性:选择负载均衡实例的功能特性。

      本教程选择支持PrivateLink

    • 其他参数配置请参见创建支持PrivateLink功能的负载均衡实例
  5. 单击立即购买并完成支付。

步骤二:配置负载均衡实例

创建负载均衡实例后,您需要添加至少一个监听和一组后端服务器才能实现流量转发。

完成以下操作,配置负载均衡实例。

  1. 实例管理页面,找到步骤一创建的负载均衡实例,单击操作列下的监听配置向导
  2. 协议&监听页面,根据以下信息配置监听规则。
    • 选择负载均衡协议:本教程选择TCP协议。
    • 监听端口:用来接收请求并向后端服务器进行请求转发的负载均衡系统的前端协议和端口。

      本教程端口设置为80

    其它配置保持默认选项。

  3. 单击下一步,在后端服务器页面,选择默认服务器组,单击继续添加,添加后端服务器。
    1. 我的服务器页面,勾选已经创建的ECS实例,单击下一步
    2. 配置权重,权重越大转发的请求越多,默认为100,保持默认值即可。
    3. 单击添加
    4. 后端服务器页面,配置后端协议端口,ECS实例上开放的用来接收请求的后端端口,在同一个负载均衡实例内可重复。本教程端口设置为80
  4. 单击下一步,配置健康检查,本教程使用默认值。
  5. 单击下一步,进入配置审核页面,确认无误后单击提交
  6. 单击知道了,返回实例管理页面。

    当后端ECS实例的健康检查状态为正常时,表示后端ECS实例可以正常处理负载均衡转发的请求了。

步骤三:创建终端节点服务

终端节点服务是可以被其他VPC通过创建终端节点建立私网连接的服务。

完成以下操作,使用账号2创建终端节点服务。

  1. 使用账号2登录专有网络管理控制台
  2. 在左侧导航栏,单击终端节点 > 终端节点服务
  3. 在顶部菜单栏处,选择要创建终端节点服务的地域。
    本教程选择德国(法兰克福)
    说明 目前,仅德国(法兰克福)地域支持创建终端节点服务。
  4. 终端节点服务页面,单击创建终端节点服务
  5. 创建终端节点服务页面,根据以下信息配置终端节点服务,然后单击确定创建
    • 选择服务资源:选择要承载流量的可用区,然后选择与终端节点服务关联的负载均衡实例。

      负载均衡实例作为服务资源与终端节点服务关联,关联的负载均衡实例将接受来自您服务的用户的网络访问,终端节点服务的可用区与服务资源所在的主可用区一致。仅支持专有网络类型且支持PrivateLink功能的负载均衡实例作为服务资源。

      本教程选择法兰克福 可用区A,然后选择步骤一创建的支持PrivateLink功能的负载均衡实例。

    • 自动接受终端节点连接:选择是否自动接受终端节点的连接请求。
      • :终端节点服务将自动接受终端节点的连接请求,通过终端节点能够访问服务。
      • :终端节点连接将处于已断开状态,等待服务管理员进行处理:
        • 如果服务管理员接受该终端节点对应的终端节点服务连接,通过终端节点将能够访问服务。
        • 如果服务管理员拒绝该终端节点对应的终端节点服务连接,通过终端节点无法访问服务。

      本教程选择

    • 描述:输入终端节点服务的描述信息。

      描述长度为2~256个字符,但是不能以http://https://开头。

    创建终端节点服务
终端节点服务创建成功后,您可以查看终端节点服务的服务ID和服务名称。服务ID

步骤四:添加服务白名单

您可以为终端节点服务添加服务白名单,服务白名单中的用户可以创建与终端节点服务连接的终端节点。

完成以下操作,将账号1的UID添加到账号2配置的终端节点服务的服务白名单中。

  1. 使用账号2登录专有网络管理控制台
  2. 在左侧导航栏,单击终端节点 > 终端节点服务
  3. 终端节点服务页面,找到步骤三创建的终端节点服务,单击其服务ID链接。
  4. 单击服务白名单页签,然后单击添加白名单
  5. 添加白名单对话框,输入要添加的白名单账号,然后单击确定
    本教程输入账号1的UID,即12345678

步骤五:创建交换机

您需要在VPC1下创建交换机,交换机的可用区必须与步骤一创建的负载均衡实例的主可用区一致。创建成功后,系统才能在该交换机下创建终端节点网卡。终端节点网卡是VPC1通过终端节点访问VPC2服务的入口。

  1. 在左侧导航栏,单击交换机
  2. 在顶部菜单栏处,选择要创建交换机的地域。
    本教程选择德国(法兰克福)
  3. 交换机页面,单击创建交换机
  4. 创建交换机对话框,根据以下信息配置交换机,然后单击确定
    • 资源组:选择交换机的资源组。本教程选择全部
    • 专有网络:选择交换机所属的专有网络。本教程选择VPC1。
    • 名称:输入交换机的名称。

      名称长度为2~128个字符,以大小写字母或中文开头,可包含数字、下划线(_)和连字符(-)。

    • 可用区:选择交换机所属的可用区。本教程选择法兰克福 可用区A
    • IPv4网段:指定交换机的IPv4网段。
    • 描述:输入交换机的描述信息。

      描述长度为2~256个中英文字符,不能以http://https://开头。

步骤六:创建终端节点

终端节点可以与终端节点服务相关联,以建立通过VPC私网访问外部服务的网络连接。

完成以下操作,使用账号1创建终端节点。

  1. 使用账号1登录专有网络管理控制台
  2. 在左侧导航栏,单击终端节点 > 终端节点
  3. 在顶部菜单栏处,选择要创建终端节点的地域。
    本教程选择德国(法兰克福)
    说明 目前,仅德国(法兰克福)地域支持创建终端节点。
  4. 终端节点页面,单击创建终端节点
  5. 创建终端节点页面,根据以下信息配置终端节点,然后单击确定创建
    • 节点名称:输入终端节点的名称。

      名称长度在2~128个字符之间,以英文字母或中文开头,可包含数字、连字符(-)和下划线(_)。

    • 终端节点服务:您可以通过以下两种方式设置终端节点服务:
      • 单击通过ID/名称添加,然后输入服务ID或服务名称。
      • 单击选择阿里云服务,然后选择本账号下的服务。

      本教程先单击选择阿里云服务,然后选择步骤三中创建的终端节点服务。详细信息,请参见步骤三:创建终端节点服务

    • 专有网络:选择需要创建终端节点的VPC。本教程选择VPC1。
    • 安全组:选择要与终端节点网卡关联的安全组,安全组可以管控VPC到终端节点网卡的数据通信。
      说明 确保安全组内的规则开放了客户端对终端节点网卡的访问。
    • 可用区与交换机:选择终端节点服务对应的可用区,然后选择该可用区内的交换机,系统会自动在该交换机下创建一个终端节点网卡。

      本教程选择法兰克福 可用区A,然后选择步骤五创建的交换机。详细信息,请参见步骤五:创建交换机

    • 描述:输入终端节点的描述信息。

      描述长度为2~256个字符,但是不能以http://https://开头。

创建终端节点后,您可以查看访问服务的域名或IP。您可以查看到以下三种访问服务的方式:
  • 终端节点域名
  • 弹性网卡IP
  • 可用区域名
服务访问域名或IP

步骤七:接受终端节点连接请求

终端节点发送连接请求后,终端节点服务需要接受终端节点的连接请求。接受后,VPC1才能通过终端节点访问服务。
说明 如果您在步骤三创建终端节点服务时设置自动接受连接请求,请忽略此步骤。

完成以下操作,在账号2的终端节点服务上接受账号1的终端节点连接请求。

  1. 使用账号2登录专有网络管理控制台
  2. 在左侧导航栏,单击终端节点 > 终端节点服务
  3. 在顶部菜单栏处,选择终端节点服务的地域。
    本教程选择德国(法兰克福)
  4. 终端节点服务页面,找到步骤三创建的终端节点服务,单击其服务ID链接。
  5. 单击终端节点连接页签,找到步骤六创建的终端节点,单击操作列下的允许
  6. 允许连接对话框,单击确定
接受连接请求后,终端节点连接的状态由已断开变更为已连接连接状态

步骤八:通过终端节点访问服务

完成以下操作,测试账号1 VPC是否可以通过终端节点访问账号2的服务。

  1. 打开账号1 ECS实例的浏览器。
  2. 在浏览器中输入访问服务的域名或IP,测试是否可以访问账号2的服务。
    本教程输入步骤六创建终端节点后生成的访问域名或IP。详细信息,请参见步骤六:创建终端节点
    经测试,账号1 ECS实例可以通过终端节点私网访问账号2的服务。