網(wǎng)絡流量路徑說明
傳統(tǒng)型負載均衡CLB作為流量轉發(fā)服務,將來自客戶端的請求通過CLB集群轉發(fā)至后端服務器,后端服務器再將響應通過內網(wǎng)返回給CLB。
入網(wǎng)流量路徑
對于入網(wǎng)流量,CLB會根據(jù)用戶在控制臺或開發(fā)者門戶上配置的轉發(fā)策略,對來自前端的訪問請求進行轉發(fā)和處理,數(shù)據(jù)流轉如下圖所示。
TCP/UDP協(xié)議和HTTP/HTTPS協(xié)議的流量都需要經(jīng)過四層集群進行轉發(fā)。
四層集群內的每一臺節(jié)點服務器均勻地分配海量訪問請求,并且每一臺節(jié)點服務器之間都有會話同步策略,以保證高可用。
如果相應的CLB實例服務端口使用的是四層協(xié)議(TCP或UDP),那么四層集群內每個節(jié)點都會根據(jù)CLB實例的策略,將其承載的服務請求按策略直接分發(fā)到后端云服務器 ECS(Elastic Compute Service)。
如果相應的CLB實例服務端口使用的是七層HTTP協(xié)議,那么四層集群內每個節(jié)點會先將其承載的服務請求均分到七層集群,七層集群內的每個節(jié)點再根據(jù)CLB策略,將服務請求按策略最終分發(fā)到后端ECS服務器。
如果相應的CLB實例服務端口使用的是七層HTTPS協(xié)議,與上述HTTP處理過程類似,差別是在按策略將服務請求最終分發(fā)到后端ECS服務器前,先調用Key Server進行證書驗證及數(shù)據(jù)包加解密等前置操作。
出網(wǎng)流量路徑
CLB和后端ECS之間是通過內網(wǎng)進行通信的。
如果ECS僅僅處理來自CLB的請求,可以不購買公網(wǎng)帶寬(ECS、公網(wǎng)IP、彈性公網(wǎng)IP(Elastic IP Address,簡稱EIP)、任播彈性公網(wǎng)IP( Anycast Elastic IP Address,簡稱Anycast EIP)、NAT網(wǎng)關等)。
說明早期創(chuàng)建的一些ECS上直接分配了公網(wǎng)IP(在實例中執(zhí)行
ipconfig
命令可以查看公網(wǎng)IP地址),此類ECS如果僅通過CLB對外提供服務,即便在公網(wǎng)接口(網(wǎng)卡)上看到有流量統(tǒng)計,也不會產(chǎn)生ECS的公網(wǎng)費用。如果需要直接通過后端ECS對外提供服務,或后端ECS有訪問外網(wǎng)的需求,那么需要相應的配置或購買ECS、公網(wǎng)IP、EIP、Anycast EIP、NAT網(wǎng)關等服務。
ECS的公網(wǎng)流量訪問路徑如下圖所示。
總體原則:流量從哪里進來,就從哪里出去。
通過CLB進入的流量在CLB上限速或計費,CLB到ECS之間是阿里云內網(wǎng)通信,不收取公網(wǎng)流量費用。
來自EIP或NAT網(wǎng)關的流量,分別在EIP或NAT網(wǎng)關上進行限速或計費。如果在購買ECS時選擇了公網(wǎng)帶寬,限速/計費點在ECS上。
CLB僅提供被動訪問公網(wǎng)的能力,即后端ECS只能在收到通過CLB轉發(fā)來的公網(wǎng)的請求時,才能訪問公網(wǎng)回應該請求,如后端ECS希望主動發(fā)起公網(wǎng)訪問,則需要ECS綁定EIP或搭配NAT網(wǎng)關來實現(xiàn)。
ECS公網(wǎng)帶寬(購買ECS時配置)、EIP、Anycast EIP、NAT網(wǎng)關均可以實現(xiàn)ECS的雙向公網(wǎng)訪問(訪問或被訪問),但沒有流量分發(fā)和負載均衡的能力。