category
Azure私有链接服务是对由Azure私有链接提供支持的您自己的服务的引用。您在Azure标准负载均衡器后面运行的服务可以启用专用链接访问,这样您的服务的消费者就可以从他们自己的VNet私人访问它。您的客户可以在其虚拟网络中创建一个专用端点,并将其映射到此服务。本文解释了与服务提供商端相关的概念。
Azure专用链接服务的图表。
流
专用链接服务工作流程图。
图:Azure专用链接服务工作流。
创建您的专用链接服务
- 将您的应用程序配置为在虚拟网络中的标准负载平衡器后面运行。如果您已经将应用程序配置在标准负载平衡器之后,则可以跳过此步骤。
- 参照上面的负载均衡器创建一个专用链接服务。在负载平衡器选择过程中,选择要接收流量的前端IP配置。为专用链接服务的NAT IP地址选择一个子网。建议在子网中至少有八个可用的NAT IP地址。所有消费者流量似乎都来自服务提供商的专用IP地址池。为专用链接服务选择适当的属性/设置。
笔记
Azure专用链接服务仅在标准负载平衡器上受支持。
共享您的服务
创建私有链接服务后,Azure将根据您为服务提供的名称生成一个全局唯一的名为alias的名字对象。您可以离线与客户共享服务的别名或资源URI。使用者可以使用别名或资源URI启动专用链接连接。
管理您的连接请求
消费者发起连接后,服务提供商可以接受或拒绝连接请求。所有连接请求都将列在专用链接服务的privateendpointconnections属性下。
删除您的服务
如果专用链接服务不再使用,您可以将其删除。但是,在删除该服务之前,请确保没有与之关联的专用终结点连接。您可以拒绝所有连接并删除该服务。
属性
专用链接服务指定以下属性:
Property | Explanation |
---|---|
Provisioning State (provisioningState) | A read-only property that lists the current provisioning state for Private Link service. Applicable provisioning states are: Deleting, Failed,Succeeded,*Updating. When the provisioning state is Succeeded, you've successfully provisioned your Private Link service. |
Alias (alias) | Alias is a globally unique read-only string for your service. It helps you mask the customer data for your service and at the same time creates an easy-to-share name for your service. When you create a Private Link service, Azure generates the alias for your service that you can share with your customers. Your customers can use this alias to request a connection to your service. |
Visibility (visibility) | Visibility is the property that controls the exposure settings for your Private Link service. Service providers can choose to limit the exposure to their service to subscriptions with Azure role-based access control permissions. A restricted set of subscriptions can also be used to limit exposure. |
Auto Approval (autoApproval) | Auto-approval controls the automated access to the Private Link service. The subscriptions specified in the auto-approval list are approved automatically when a connection is requested from private endpoints in those subscriptions. |
Load balancer frontend IP configuration (loadBalancerFrontendIpConfigurations) | Private Link service is tied to the frontend IP address of a Standard Load Balancer. All traffic destined for the service will reach the frontend of the SLB. You can configure SLB rules to direct this traffic to appropriate backend pools where your applications are running. Load balancer frontend IP configurations are different than NAT IP configurations. |
NAT IP configuration (ipConfigurations) | This property refers to the NAT (Network Address Translation) IP configuration for the Private Link service. The NAT IP can be chosen from any subnet in a service provider's virtual network. Private Link service performs destination side NAT-ing on the Private Link traffic. This NAT ensures that there's no IP conflict between source (consumer side) and destination (service provider) address space. On the destination or service provider side, the NAT IP address displays as source IP for all packets received by your service. Destination IP is displayed for all packets sent by your service. |
Private endpoint connections (privateEndpointConnections) | This property lists the private endpoints connecting to Private Link service. Multiple private endpoints can connect to the same Private Link service and the service provider can control the state for individual private endpoints. |
TCP Proxy V2 (EnableProxyProtocol) | This property lets the service provider use tcp proxy v2 to retrieve connection information about the service consumer. Service Provider is responsible for setting up receiver configs to be able to parse the proxy protocol v2 header. |
细节
私有链接服务可以从任何公共区域的批准的私有端点访问。可以从同一虚拟网络和区域对等虚拟网络到达专用端点。可以使用专用VPN或ExpressRoute连接从全局对等虚拟网络和本地访问专用端点。
创建专用链路服务后,将为资源的生命周期创建网络接口。客户无法管理此界面。
专用链路服务必须部署在与虚拟网络和标准负载平衡器相同的区域中。
可以从属于不同虚拟网络、订阅和/或Active Directory租户的多个专用端点访问单个专用链路服务。连接是通过连接工作流建立的。
可以使用不同的前端IP配置在同一标准负载均衡器上创建多个专用链路服务。每个标准负载平衡器和每个订阅可以创建的专用链接服务的数量是有限制的。有关详细信息,请参阅“Azure限制”。
专用链接服务可以有多个NAT IP配置链接到它。选择一个以上的NAT IP配置可以帮助服务提供商进行扩展。如今,服务提供商可以为每个专用链路服务分配多达八个NAT IP地址。使用每个NAT IP地址,您可以为TCP连接分配更多端口,从而扩展。将多个NAT IP地址添加到专用链接服务后,无法删除这些NAT IP地址。此限制是为了确保在删除NAT IP地址时活动连接不受影响。
别名
Alias是您的服务的全局唯一名称。它可以帮助您为服务屏蔽客户数据,同时为您的服务创建一个易于共享的名称。当您创建专用链接服务时,Azure会为您的服务生成一个别名,您可以与客户共享该别名。您的客户可以使用此别名请求连接到您的服务。
别名由三部分组成:Prefix.GUID.Suffix
- 前缀是服务名称。您可以选择自己的前缀。创建“Alias”后,您无法更改它,因此请适当选择前缀。
- GUID将由平台提供。此GUID使名称全局唯一。
- 后缀由Azure附加:region.Azure.privatelinkservice
完整别名:Prefix. {GUID}.region.azure.privatelinkservice
控制服务暴露
“专用链接”服务在“可见性”设置中为您提供了三个选项,以控制服务的公开。您的可见性设置决定消费者是否可以连接到您的服务。以下是可见性设置选项,从限制性最强到限制性最低:
- 仅基于角色的访问控制:如果您的服务用于您拥有的不同虚拟网络的私人使用,请在与同一Active Directory租户关联的订阅内使用基于角色的权限控制。通过基于角色的访问控制允许跨租户可见性。
- 受订阅限制:如果您的服务将在不同租户之间使用,您可以将暴露限制在您信任的有限订阅集内。授权可以预先批准。
- 使用您的别名的任何人:如果您想公开您的服务,并允许使用您的专用链接服务别名的所有人请求连接,请选择此选项。
控制服务访问
通过您的专用链接服务的可见性设置控制曝光的消费者可以在其虚拟网络中创建专用端点,并请求连接到您的专用链路服务。将在专用链接服务对象上以挂起状态创建专用端点连接。服务提供商负责对连接请求采取行动。您可以批准连接、拒绝连接或删除连接。只有经过批准的连接才能将流量发送到专用链路服务。
通过使用专用链接服务上的自动批准属性,可以自动执行批准连接的操作。自动批准是服务提供商预先批准一组订阅以自动访问其服务的功能。客户需要脱机共享订阅,以便服务提供商将其添加到自动审批列表中。自动审批是可见性数组的一个子集。
可见性控制曝光设置,而自动审批控制服务的审批设置。如果客户从自动批准列表中的订阅请求连接,则该连接将自动获得批准,并建立连接。服务提供商不需要手动批准请求。如果客户请求来自可见性阵列中而非自动批准阵列中的订阅的连接,则该请求将到达服务提供商。服务提供商必须手动批准连接。
使用TCP Proxy v2获取连接信息
在专用链路服务中,来自专用端点的数据包的源IP地址是服务提供商侧使用从提供商的虚拟网络分配的NAT IP进行的网络地址转换(NAT)。应用程序接收分配的NAT地址,而不是服务消费者的实际源IP地址。如果您的应用程序需要来自使用者端的实际源IP地址,则可以在服务上启用代理协议,并从代理协议标头中检索信息。除了源IP地址,代理协议头还携带私有端点的LinkID。源IP地址和LinkID的组合可以帮助服务提供商唯一地识别其消费者。
有关代理协议的更多信息,请访问此处。
此信息使用自定义类型长度值(TLV)矢量进行编码,如下所示:
自定义TLV详细信息:
Field | Length (Octets) | Description |
---|---|---|
Type | 1 | PP2_TYPE_AZURE (0xEE) |
Length | 2 | Length of value |
Value | 1 | PP2_SUBTYPE_AZURE_PRIVATEENDPOINT_LINKID (0x01) |
4 | UINT32 (4 bytes) representing the LINKID of the private endpoint. Encoded in little endian format |
笔记
当在专用链路服务上启用代理协议时,服务提供商负责确保标准负载均衡器后面的服务被配置为根据规范解析代理协
议头。如果在专用链接服务上启用了代理协议设置,但服务提供商的服务未配置为解析标头,则请求将失败。如果服
务提供商的服务需要代理协议标头,而专用链接服务上未启用该设置,则请求将失败。启用代理协议设置后,从主机
到后端虚拟机的HTTP/TCP运行状况探测中也将包括代理协议标头。标头中不包含客户端信息。
作为PROXYv2(TLV)协议一部分的匹配LINKID可以作为属性linkIdentifier在PrivateEndpointConnection中找到。
有关更多信息,请参阅专用链接服务API。
局限性
以下是使用专用链接服务时的已知限制:
- 仅在标准负载平衡器上受支持。基本负载平衡器不支持。
- 仅在由NIC配置后端池的标准负载平衡器上受支持。在后端池由IP地址配置的标准负载平衡器上不支持。
- 仅支持IPv4流量
- 仅支持TCP和UDP流量
- 专用链接服务的空闲超时约为5分钟(300秒)。为了避免达到此限制,通过专用链接服务连接的应用程序必须使用低于此时间的TCP Keepalives。
- 对于类型设置为后端池的入站NAT规则,必须配置负载平衡规则才能与Azure专用链接服务一起操作。
接下来的步骤
- 登录 发表评论
- 7 次浏览
最新内容
- 2 days 20 hours ago
- 2 days 22 hours ago
- 2 days 22 hours ago
- 5 days 14 hours ago
- 5 days 21 hours ago
- 5 days 22 hours ago
- 5 days 22 hours ago
- 5 days 22 hours ago
- 1 week 3 days ago
- 1 week 3 days ago