作為服務提供者,您可以建立終端節點服務並向指定使用者共用,簡化網路架構,同時避免將服務暴露於公網。
私網安全訪問:所有服務訪問流量均通過私人網路傳輸,無需將資料暴露於互連網,規避安全風險。
簡化網路架構:PrivateLink 通過在服務使用方的 VPC 內建立彈性網卡來作為服務的本地訪問入口,服務使用方訪問服務如同訪問 VPC 內的其他任何資源,無需配置 VPC 對等串連或雲企業網,即可實現私網安全訪問服務,從而極大簡化網路架構,並從根本上解決了 IP 位址衝突的問題。
工作原理
服務提供者:在計劃提供服務的地區部署負載平衡(NLB、ALB、CLB),並配置終端節點服務提供給使用者使用。
服務使用方:在服務使用方的 VPC 中,指定終端節點服務名稱來建立介面終端節點,即可通過私網訪問對應的服務。其他 VPC和本機資料中心與 VPC 建立網路連接後,即可藉助 VPC 中的介面終端節點訪問終端節點服務。
服務提供者與服務使用方均為阿里雲使用者。目前,PrivateLink 的終端節點和終端節點服務需部署在同一地區。
共用您的服務
服務提供者需要在計劃提供服務的地區,部署Server Load Balancer執行個體並添加部署服務的後端伺服器,配置終端節點服務提供給使用者使用。
支援的服務資源:公網/私網類型的 NLB 執行個體、公網/私網類型的 ALB 執行個體、隨用隨付的私網 CLB 執行個體。
確保已佈建服務資源,且部署需提供的後端服務。
控制台
服務提供者配置終端節點服務
前往私網串連控制台的建立終端節點服務頁面。
所屬地區:選擇提供服務的地區。
服務資源類型:根據配置的服務資源選擇。為確保訪問服務高可用,建議添加多個可用性區域的服務資源。
自動接受終端節點串連:使用者建立介面終端節點訪問服務時,服務提供者是否自動接受其串連請求。建立完成後修改該選項,對已串連的介面終端節點無影響。
是:服務使用方建立介面終端節點串連服務時,會自動連接成功。
否:需要服務提供者來確認是否允許服務使用方串連。
是否支援同可用性區域優先:如果選擇是,當服務使用方開啟同可用性區域優先,並從介面終端節點所在的可用性區域使用終端節點網域名稱訪問服務時,雲解析 DNS 系統將優先返回對應終端節點可用性區域的彈性網卡IP,從而實現就近訪問。
IP版本:支援IPv4和雙棧。當加入終端節點服務的所有服務資源均支援雙棧時,可以選擇雙棧,
CLB 不支援雙棧。
服務付費者:選擇私網串連的付費方,預設為服務使用方。確定後不支援修改。
終端節點服務建立完成後,服務提供者需要佈建服務白名單,跨帳號使用者才可以向終端節點服務發起串連請求。
在目標終端節點服務詳情頁的服務白名單頁簽,單擊添加白名單,確定可訪問服務的使用者範圍。
配置
*:所有使用者都可以向終端節點服務發起串連請求。配置帳號UID:僅對應使用者可以向終端節點服務發起串連請求。
服務使用方訪問終端節點服務
前往終端節點 - 建立終端節點頁面。
配置介面終端節點:
所屬地區:選擇建立介面終端節點的地區,該地區必須與終端節點服務所在的地區一致。目前 PrivateLink 僅支援同地區串連。
終端節點服務:選擇其他終端節點服務,使用終端節點服務名稱驗證,校正成功即可訪問。
專用網路、可用性區域與交換器:
可用性區域需在終端節點服務提供服務的可用性區域(與服務資源所屬可用性區域一致)中選擇。為確保訪問服務高可用,建議至少選擇2個可用性區域下的交換器。
可以為終端節點可用性區域的彈性網卡指定交換器內的 IP 位址。如不指定,將由系統預設分配。
不允許為彈性網卡指定交換器的系統保留地址。
安全性群組:與介面終端節點關聯,管控全部終端節點可用性區域的彈性網卡的入方向流量。
IP版本:當終端節點服務支援雙棧時,可以選擇雙棧,用戶端可使用IPv4和IPv6地址訪問服務。否則,僅支援選擇IPv4。
是否支援同可用性區域優先:當終端節點服務支援同可用性區域優先時,服務使用方可選擇開啟/關閉同可用性區域優先。
開啟時,服務使用方從介面終端節點所在的可用性區域使用終端節點網域名稱訪問服務,雲解析 DNS 系統將優先返回對應終端節點可用性區域的彈性網卡IP,從而實現就近訪問。
如果從非介面終端節點所在的可用性區域訪問,或者關閉同可用性區域優先時,雲解析 DNS 系統將返回所有終端節點可用性區域可用的彈性網卡 IP。
建立完成後,可使用同 VPC 的 ECS 執行以下命令測試是否連通。
ping <終端節點可用性區域的彈性網卡的IP> # 可在執行個體詳情頁的可用性區域與網卡頁簽下,查看彈性網卡的私網IP # 如為 HTTP/HTTPS 服務,建議直接存取服務連接埠 curl -sI https://<終端節點網域名稱> # 可在執行個體列表頁查看終端節點網域名稱
API
服務提供者調用CreateVpcEndpointService建立終端節點服務。
服務使用方調用CreateVpcEndpoint建立終端節點。
佈建服務的存取範圍
結合服務白名單與自動接受終端節點串連的設定,服務提供者可以精確地控制哪些服務使用方能夠訪問終端節點服務。例如:
受信任的少數使用者:將使用者的帳號 UID 加入白名單,並開啟自動接受終端節點串連。
更廣泛的使用者:配置
*加入白名單,並設定自動接受終端節點串連為否,服務提供者需逐一審批使用者發起的終端節點串連請求。
佈建服務白名單
終端節點服務建立完成後,系統自動將服務提供者的阿里雲帳號添加到服務白名單中。服務提供者手動設定服務白名單後,跨帳號使用者才可以向終端節點服務發起串連請求。
建議服務處於灰階發布階段時,服務提供者逐個添加目標使用者的阿里雲帳號 UID,逐步開放服務存取權限。灰階完成後,可以根據業務需要,考慮添加
*配置將服務開放給所有使用者。若該服務長期僅面向特定使用者開放,可以選擇僅配置指定帳號UID。
控制台
在目標終端節點服務詳情頁的服務白名單頁簽,單擊添加白名單,確定可訪問服務的使用者範圍。
配置
*:所有使用者都可以向終端節點服務發起串連請求。配置帳號UID:僅對應使用者可以向終端節點服務發起串連請求。
API
調用AddUserToVpcEndpointService添加服務白名單。
調用RemoveUserFromVpcEndpointService移除服務白名單。
是否自動接受終端節點串連
僅服務提供者接受終端節點串連後,服務使用方才可以使用對應的介面終端節點通過私網訪問終端節點服務。
控制台
建立終端節點服務時,需設定自動接受終端節點串連:
是:自動連接成功。
否:服務提供者需要在目標終端節點服務的終端節點串連頁簽下,在目標介面終端節點的操作列選擇允許/拒絕服務使用方串連。
建立完成後,可在目標終端節點服務的基本資料頁簽,開啟/關閉自動接受終端節點串連。建立完成後修改該選項,對已串連的介面終端節點無影響。
API
調用CreateVpcEndpointService和UpdateVpcEndpointServiceAttribute時,設定
AutoAcceptEnabled,確定是否自動接受終端節點串連。設定
AutoAcceptEnabled為false時,需要調用EnableVpcEndpointConnection或DisableVpcEndpointConnection允許/拒絕終端節點的串連請求。
保障服務訪問高可用
服務提供者為終端節點服務配置多可用性區域的服務資源。
服務資源為NLB、ALB時,添加多可用性區域的NLB、ALB執行個體。
服務資源為CLB時,添加多個主可用性區域不同的CLB執行個體。
服務使用方建立介面終端節點時,至少選擇2個可用性區域下的交換器。
服務使用方使用終端節點網域名稱訪問服務,阿里雲提供全託管可用性探測,確保可用性區域出現故障時能快速切換到其他可用性區域:
即時探測不同終端節點可用性區域的彈性網卡IP的可用性,如有異常則會刪除對應解析記錄,避免可用性區域故障導致服務中斷或資料丟失。
故障恢複後,將自動添加對應的解析記錄。
控制台
服務提供者為終端節點服務配置多可用性區域的服務資源
建立終端節點服務時,選擇多個可用性區域下的服務資源。
建立完成後,單擊目標介面終端節點服務ID,在基本資料頁簽單擊添加服務資源,選擇資源執行個體進行添加。
服務使用方為介面終端節點配置多可用性區域
建立介面終端節點時,至少選擇2個可用性區域下的交換器。
建立完成後,單擊目標介面終端節點ID,在可用性區域與網卡頁簽單擊添加可用性區域。
為確保服務高可用,服務使用方需使用終端節點網域名稱訪問服務。終端節點網域名稱可以在介面終端節點列表頁查看。
API
終端節點服務配置
調用AttachResourceToVpcEndpointService為終端節點服務添加服務資源。
調用DetachResourceFromVpcEndpointService移除終端節點服務中的服務資源。
終端節點配置
調用AddZoneToVpcEndpoint為終端節點添加可用性區域。
調用RemoveZoneFromVpcEndpoint刪除終端節點的可用性區域。
分配服務資源
為避免服務資源負載過高影響業務正常運行,終端節點服務的每個可用性區域可以添加多個服務資源,確保不同的終端節點串連使用不同的服務資源,實現流量分載。同時,當服務資源發生故障時,終端節點串連自動切換到同可用性區域下其他可用的服務資源。
僅當服務資源為 CLB 時,無需斷開終端節點串連,可直接替換可用性區域的服務資源。
替換可用性區域服務資源和手動分配服務資源的功能預設不開放,需前往配額中心控制台,申請privatelink_whitelist/svc_res_mgt_uat配額。
服務資源的分配方式:可設定為自動分配或手動分配。需要確保每個可用性區域至少保留一個可自動分配的服務資源。
為終端節點可用性區域串連分配服務資源:
當服務提供者自動接受終端節點串連時:
PrivateLink 將結合服務資源的頻寬、串連至該服務資源的終端節點串連的數量,在終端節點可用性區域自動分配同可用性區域的服務資源(該服務資源的分配方式為自動分配)。
如果自動分配的資源無法滿足串連需求,您需要先斷開終端節點可用性區域串連,再手動分配服務資源。調整完成後,再允許串連。
當服務提供者手動接受終端節點串連時:
您可以先手動分配服務資源,再允許串連。如未手動分配,也支援您在允許終端節點串連時,勾選允許串連並自動分配服務資源。
如果自動分配的資源無法滿足串連需求,您需要先斷開終端節點可用性區域串連,再手動分配服務資源。調整完成後,再允許串連。
添加/移除服務資源
控制台
添加服務資源
前往終端節點服務列表頁,單擊目標終端節點服務的ID進入詳情頁。
在基本資料頁簽下的服務資源地區,單擊添加服務資源。選擇可用性區域與具體的服務資源。
移除服務資源
在目標終端節點服務基本資料頁簽下的服務資源地區,單擊目標服務資源操作列的刪除,會從終端節點服務中移除對應資源,但不會刪除對應的資源執行個體。
當服務資源被終端節點可用性區域關聯時,不支援直接刪除,需先斷開終端節點串連。
API
調用AttachResourceToVpcEndpointService為終端節點服務添加服務資源。
調用DetachResourceFromVpcEndpointService移除終端節點服務中的服務資源。
設定特定服務資源的分配方式
控制台
在目標終端節點服務詳情頁的基本資料頁簽下服務資源地區,可調整目標服務資源自動分配列的開關,確定服務資源是否可自動分配給終端節點串連使用。
需確保每個可用性區域至少包含一個可以自動分配的服務資源。
修改目標服務資源是否支援自動分配,不影響已有的終端節點串連。
API
調用UpdateVpcEndpointServiceResourceAttribute,調整AutoAllocatedEnabled來設定服務資源的分配方式。
為終端節點可用性區域串連分配服務資源
控制台
在目標終端節點服務詳情頁的終端節點串連頁簽,通過以下任一方式斷開終端節點串連:
斷開所有可用性區域的串連:單擊目標終端節點操作列的拒絕。將導致業務不可用,請謹慎操作。
斷開目標可用性區域的串連:單擊目標終端節點前的
表徵圖,單擊目標可用性區域操作列的斷開服務資源。可能導致業務流量終端,需謹慎評估。
調整服務資源分派方式:
自動分配資源:單擊目標終端節點前的
表徵圖,選擇目標可用性區域操作列的分配服務資源,選擇自動分配,再串連服務資源。當終端節點可用性區域已有指定的服務資源時,選擇自動分配會清除已經指定的服務資源。
手動分配資源:單擊目標終端節點前的
表徵圖,選擇目標可用性區域操作列的分配服務資源,單擊手動分配並選擇已建立的服務資源,再串連服務資源。
API
調用DisableVpcEndpointZoneConnection斷開終端節點可用性區域串連。
調用UpdateVpcEndpointZoneConnectionResourceAttribute為終端節點可用性區域分配服務資源:
配置
ResourceAllocateMode為Auto時,自動分配服務資源。配置
ResourceAllocateMode為Manual時,需指定ResourceId,手動分配服務資源。
調用EnableVpcEndpointZoneConnection允許終端節點可用性區域串連。
替換可用性區域的服務資源
僅當服務資源為 CLB 時,支援在終端節點串連未斷開時,直接替換可用性區域服務資源。
控制台
在目標終端節點服務詳情頁的基本資料頁簽下服務資源地區,禁止目標服務資源自動分配。
選擇以下兩種方式替換目標終端節點已連線的服務資源:
在目標終端節點服務詳情頁的基本資料頁簽下服務資源地區,單擊目標服務資源的操作列的替換資源,選擇替換後的服務資源與需替換服務資源的目標終端節點串連。
在目標終端節點服務詳情頁的終端節點串連頁簽,單擊目標終端節點前的
表徵圖,選擇目標可用性區域操作列的替換服務資源。
替換服務資源的方式選擇:建議選擇平滑遷移。強制遷移可能造成業務流量中斷,需謹慎評估。
平滑遷移:
系統先建立一個終端節點可用性區域的彈性網卡,將新彈性網卡與新的服務資源建立串連,並將新終端節點可用性區域彈性網卡的 IP 加入 DNS 解析。
系統自動將舊的終端節點可用性區域的彈性網卡的 IP 位址從 DNS 解析中刪除。
使用者需要自行判斷存量業務全部刪除後,在目標可用性區域的操作列單擊斷開舊服務資源,斷開後舊的彈性網卡將徹底刪除。
強制遷移:待遷移完成後,原有的服務資源將直接從終端節點服務中刪除。強制遷移會中斷所有依賴服務資源的Business Connectivity,可能造成業務流量中斷,請謹慎評估。
API
調用UpdateVpcEndpointZoneConnectionResourceAttribute替換終端節點可用性區域串連服務資源。
調整終端節點串連的頻寬
通過為終端節點串連設定頻寬限速,您可以對流量進行精確控制,從而防止後端服務資源過載。每個終端節點可用性區域的彈性網卡均會自動繼承終端節點串連的限速值。
預設串連限速:針對所有串連到終端節點服務的介面終端節點,當終端節點串連處於可用狀態時,終端節點服務提供預設限速能力。
當服務資源為 CLB 時:
預設終端節點串連的頻寬為 3072 Mbps,取值範圍為 100~10240 Mbps。
支援調整。調整不影響已建立終端節點串連的流量,僅對後續所有建立終端節點串連生效。
當服務資源為 NLB 和 ALB 時,不支援預設串連限速。
為特定的終端節點串連設定限速:可通過配置合適的頻寬限速,防止服務資源過載。設定後,預設串連限速將不再對相應的終端節點串連生效。
開啟限速:
當終端節點服務自動接受終端節點串連時,串連後可以開啟限速。
當終端節點服務需要手動接受終端節點串連時,在允許接受終端節點串連時開啟限速。
不同服務資源支援的限速範圍:
NLB 和 ALB:最小限速 100 Mbps,最大限速 25Gbps。
CLB:最小限速 100 Mbps,最大限速 10240 Mbps。
控制台
調整預設限速:在目標終端節點服務詳情頁的基本資料頁簽,單擊預設串連限速右側的調整。
單獨調整目標終端節點串連的頻寬:在目標終端節點服務詳情頁的終端節點串連頁簽,在目標終端節點的操作列,可開啟/調整/關閉限速。
API
調用UpdateVpcEndpointServiceAttribute配置
Bandwidth,修改終端節點服務的頻寬。調用UpdateVpcEndpointConnectionAttribute配置
Bandwidth,調整終端節點串連的頻寬。
停止提供終端節點服務
當決定不再提供服務時,服務提供者可刪除終端節點服務。刪除會永久中斷所有與此服務關聯的終端節點串連,且不可恢複,請謹慎操作。
控制台
刪除前,需先拒絕並斷開所有已串連的介面終端節點,並移除服務中的所有服務資源。
單擊目標終端節點服務操作列的刪除。
API
調用DisableVpcEndpointZoneConnection斷開終端節點可用性區域串連。
調用DetachResourceFromVpcEndpointService移除終端節點服務中的服務資源。
調用DeleteVpcEndpointService刪除終端節點服務。
常見問題
為什麼服務使用方無法查詢到已建立的終端節點服務?
請檢查是否已將使用方的阿里雲帳號ID正確添加到了服務白名單中,只有白名單內的使用者才能查詢和串連到對應服務。
為什麼串連狀態一直是已斷開?
請檢查終端節點服務是否關閉了自動接受終端節點串連。如果關閉,需在終端節點串連頁簽,手動允許該串連請求。