應用型負載均衡ALB(Application Load Balancer)提供強大的應用層處理能力和豐富的高級路由功能,聚焦HTTP、HTTPS和QUIC應用層協議,是阿里云官方云原生Ingress網關。本文介紹ALB Ingress的最佳實踐,您可以參考以下信息對SAE應用進行配置,獲得最佳的使用效果。
背景信息
隨著云原生應用微服務化、Serverless化,您需要面對復雜路由規則可配置、支持多種應用層協議(HTTP、HTTPS和QUIC等)、服務訪問的安全性以及流量的可觀測性等訴求,但傳統的四層SLB Ingress已無法滿足現有訴求。
Serverless 應用引擎 SAE(Serverless App Engine)實現的ALB Ingress Controller基于應用型負載均衡ALB(Application Load Balancer)之上提供了全托管免運維的Ingress流量管理。依托SAE的網關路由兼容Nginx Ingress語義,SAE具備配置以及管理復雜業務路由的能力,包括證書自動發現、流量入口可觀測、多種應用層協議(QUIC等)兼容和大規模七層流量處理能力,讓您輕松應對云原生應用流量管理。
功能詳解
ALB
應用型負載均衡ALB(Application Load Balancer)是阿里云推出的專門面向HTTP、HTTPS和QUIC等應用層負載場景的負載均衡服務,具備超強彈性及大規模七層流量處理能力。
SAE的網關路由基于阿里云應用型負載均衡ALB(Application Load Balancer),提供更為強大的Ingress流量管理方式,兼容Nginx Ingress語義,具備處理復雜業務路由和證書自動發現的能力,支持HTTP、HTTPS和QUIC協議,可滿足云原生應用場景下對超強彈性和大規模七層流量處理能力的需求。
應用場景
ALB目前支持的場景包括高彈性互聯網場景、視音頻行業低延遲場景、面向云原生應用場景等。
SAE上快速使用ALB
對于托管到SAE的應用,配置SAE路由規則,能夠實現通過負載均衡實例,將請求流量轉發到一個或多個應用中。適用場景如下。
單應用或多應用有相同域名不同路徑流量轉發的需求。
單應用或多應用有不同域名流量轉發的需求(不同域名解析的訪問IP地址是同一個)。
配置準備
創建ALB實例。
SAE網關路由功能基于綁定負載均衡實例來實現,在SAE側配置的一條網關路由,在負載均衡SLB側將會映射為一條名稱以ingress
開頭的監聽配置。負載均衡SLB支持應用型負載均衡ALB,關于ALB實例的更多配置信息,請參見創建應用型負載均衡。
配置規則
新建路由規則時,需要先配置網關入口,綁定您已創建的ALB實例。
然后為綁定的ALB實例配置自定義與默認的轉發策略,輸入域名、路徑、端口等參數,并選擇接收流量的后端應用。
本文的端口值僅為示例,您可以根據實際需求配置具體的端口值。具體操作,請參見為應用配置網關路由(ALB)。
配置驗證
路由規則配置完成后,可以在命名空間的網關路由頁面,查看路由規則,并通過域名:訪問端口/Path
訪問相應的后端服務或者應用。
下圖為一個簡單的路由規則,將來自www.example.com/path的請求通過8080
端口轉發至后端應用spring-boot-provider,將沒有配置自定義轉發策略的請求都轉發到后端應用spring-boot-consumer。