日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

ALB Ingress功能操作指導

ALB Ingress除了支持在容器服務ACK/ACK Serverless等Kubernetes產品中使用,還支持與企業級分布式應用服務EDAS(Enterprise Distributed Application Service)、Serverless應用引擎SAE(Serverless App Engine)、云上自建Kubernetes集群等相結合使用,以滿足您多樣化的業務需求。本文為您介紹ALB Ingress的基礎功能、高級功能以及與其他產品集成使用的操作指導。

基礎功能

AlbConfig是由ALB Ingress Controller提供的CRD資源,ALB Ingress Controller使用AlbConfig來配置ALB實例和監聽。下表為您介紹如何在容器ACK系列產品中安裝和卸載ALB Ingress Controller、如何創建與修改AlbConfig以及開啟日志服務等操作。

對象

功能

描述

容器服務ACK文檔鏈接

容器服務ACK Serverless文檔鏈接

ALB Ingress Controller

ALB Ingress Controller組件管理

容器服務基于ALB提供了托管的ALB Ingress Controller。

您可以通過在創建集群時安裝ALB Ingress Controller,也可以通過在組件管理頁面安裝ALB Ingress Controller。

管理ALB Ingress Controller組件

管理ALB Ingress Controller組件

實例管理

創建AlbConfig

AlbConfig是在ALB Ingress Controller提供的CRD資源,使用AlbConfig CRD來配置ALB實例和監聽。

一個AlbConfig對應一個ALB實例,如果您需要使用多個ALB實例,可以通過創建多個AlbConfig實現。

創建AlbConfig

創建AlbConfig

關聯Ingress

AlbConfig通過K8s中標準的IngressClass資源與Ingress進行關聯。您需要先創建IngressClass,然后關聯AlbConfig。

創建IngressClass并關聯AlbConfig

使用IngressClass關聯AlbConfig與Ingress

修改AlbConfig

您可以修改AlbConfig的屬性,比如名稱、vSwitch配置等。

配置完成保存后,新配置自動生效。

開啟日志服務訪問日志

當您需要ALB Ingress能夠收集訪問日志Access Log,您需要在AlbConfig中指定logProjectlogStore

說明
  • 當前Log Project需要您手動創建,不支持自動創建。創建Log Project的具體操作,請參見管理Project

  • logStore命名需要以alb_開頭,若指定logStore不存在,系統則會自動創建。

開啟日志服務訪問日志

開啟日志服務訪問日志

復用已有ALB實例

當您需要復用已有ALB實例,您只需要在創建AlbConfig時指定ALB實例ID即可。

復用已有ALB實例

復用已有ALB實例

使用多個ALB實例

當您需要使用多個ALB實例時,您可以在Ingress中通過spec.ingressClassName指定不同的IngressClass即可。

創建并使用多個ALB實例

創建并使用多個ALB實例

刪除ALB實例

一個ALB實例對應一個AlbConfig, 因此可以通過刪除AlbConfig實現刪除ALB實例,但前提是先需要刪除AlbConfig關聯的所有Ingress。

刪除ALB實例

刪除ALB實例

監聽管理

指定HTTPS證書

通過ALBConfig可以指定ALB證書,您可以通過配置ALBConfig的listeners來指定HTTPS的證書ID。

配置HTTPS證書以實現加密通信

配置HTTPS證書以實現加密通信

支持TLS安全策略

當前ALBConfig配置HTTPS監聽時,支持指定TLS安全策略。TLS安全策略包含自定義策略和系統默認策略,更多信息,請參見TLS安全策略

指定TLS安全策略

指定TLS安全策略

高級功能

在容器服務ACK集群中,ALB Ingress對集群服務(Service)中外部可訪問的API對象進行管理,提供七層負載均衡能力。下表為您介紹如何通過ALB Ingress將來自不同域名或URL路徑的請求轉發給不同的后端服務器組、將HTTP訪問重定向至HTTPS、灰度發布等功能。

功能

描述

容器服務ACK文檔鏈接

容器服務ACK Serverless文檔鏈接

基于域名轉發請求

創建一個簡單的Ingress,根據指定的正常域名或空域名轉發請求。

基于域名轉發請求

基于域名轉發請求

基于URL路徑轉發請求

ALB Ingress支持按照URL轉發請求,可以通過pathType字段設置不同的URL匹配策略。pathType支持Exact、ImplementationSpecific和Prefix三種匹配方式。

基于URL路徑轉發請求

基于URL路徑轉發請求

自定義轉發規則

ALB Ingress支持自定義轉發規則。轉發規則包含轉發條件和轉發動作。通過ALB Ingress您可以

  • 自定義轉發條件,指定請求的域名、路徑、請求頭、查詢字符串、請求方法、Cookie、源IP等,可以在alb.ingress.kubernetes.io/conditions.<Service的名稱>注解中配置轉發條件。

  • 自定義轉發動作,配置固定響應、重定向、插入請求頭、流量鏡像、轉發至后端多服務器組和重寫等,可使用alb.ingress.kubernetes.io/actions.<服務名稱>注解配置轉發動作。

  • 通過ACK控制臺自定義轉發條件,指定請求的域名、路徑、HTTP標頭。

  • 通過ACK控制臺自定義轉發動作,配置轉發至、返回固定響應。

重要
  • 單條轉發規則的轉發條件的條目上限為10個,一旦達到規定數量上限,您將無法再添加更多的條件。

  • 轉發條件ResponseHeader和ResponseStatusCode僅在自定義響應方向轉發規則中有效。

自定義ALB Ingress的轉發規則

自定義ALB Ingress的轉發規則

配置健康檢查

ALB Ingress支持通過設置注解來配置健康檢查,配置項包括path/protocol/method/httpcode/timeout/interval/threshold等。

配置健康檢查

配置健康檢查

配置自動發現HTTPS證書功能

ALB Ingress Controller提供證書自動發現功能。您需要首先在數字證書管理服務控制臺創建證書,然后ALB Ingress Controller會根據Ingress中TLS配置的域名自動匹配發現證書。

配置HTTPS證書以實現加密通信

配置HTTPS證書以實現加密通信

配置HTTP重定向至HTTPS

ALB Ingress通過設置注解alb.ingress.kubernetes.io/ssl-redirect: "true",可以將HTTP請求重定向到HTTPS 443端口。

配置HTTP重定向至HTTPS

配置HTTP重定向至HTTPS

支持HTTPS和gRPC協議

當前ALB Ingress后端協議支持HTTPS和gRPC協議,通過ALB Ingress只需要在注解中配置alb.ingress.kubernetes.io/backend-protocol: "grpc"alb.ingress.kubernetes.io/backend-protocol: "https" 即可。使用Ingress轉發gRPC服務需要對應域名擁有SSL證書,使用TLS協議進行通信。

說明

后端協議不支持修改,如果您需要變更協議,請刪除重建Ingress。

支持后端HTTPS和gRPC協議

支持后端HTTPS和gRPC協議

支持Rewrite重寫

當前ALB Ingress支持Rewrite重寫,通過ALB Ingress只需要在注解中配置alb.ingress.kubernetes.io/rewrite-target: /path/${2} 即可。

說明
  • rewrite-target注解中,${number}類型的捕獲組變量需要在路徑為Prefix類型的path上配置。

  • path默認無法配置正則符號,例如*?等,您需要通過配置rewrite-target注解使用正則符號。

  • path必須以 / 開頭。

支持Rewrite重寫

支持Rewrite重寫

配置自定義監聽端口

支持Ingress配置自定義監聽端口。通過該方式,可以將服務同時暴露80端口和443端口。

配置自定義監聽端口

配置自定義監聽端口

配置轉發規則優先級

通過配置Ingress注解可以定義ALB Ingress轉發規則優先級。

說明

同一個監聽內規則優先級必須唯一。alb.ingress.kubernetes.io/order用于標識Ingress之間的優先級順序,取值范圍為1~1000,值越小表示優先級越高。

配置轉發規則優先級

配置轉發規則優先級

通過注解實現灰度發布

ALB Ingress提供復雜路由處理能力,支持基于Header、Cookie以及權重的灰度發布功能。灰度發布功能可以通過設置注解來實現。

為了啟用灰度發布功能,需要設置注解alb.ingress.kubernetes.io/canary: "true",通過不同注解可以實現不同的灰度發布功能。

通過注解實現會話保持

ALB Ingress支持通過alb.ingress.kubernetes.io/sticky-sessionalb.ingress.kubernetes.io/sticky-session-type注解實現會話保持。

通過注解實現會話保持

通過注解實現會話保持

指定服務器組負載均衡算法

ALB Ingress支持通過設置Ingress注解alb.ingress.kubernetes.io/backend-scheduler指定服務器組負載均衡算法。

指定服務器組負載均衡算法

指定服務器組負載均衡算法

跨域配置

ALB Ingress支持通過設置注解項配置跨域。

跨域配置

跨域配置

后端長鏈接

當使用短鏈接的方式訪問后端服務器組時,每一條請求都需要經歷TCP層面的建立連接和斷開連接,使網絡連接成為高性能系統的瓶頸。ALB支持開啟后端長鏈接,能夠極大的減少處理連接層面的資源消耗,從而大幅度提高處理性能。當前在ALB Ingress中可以通過注解alb.ingress.kubernetes.io/backend-keepalive開啟后端長鏈接。

后端長鏈接

后端長鏈接

支持QPS限速

ALB本身支持轉發規則的QPS限速功能,QPS限速值取值范圍為1~100000。當前在ALB Ingress只需要設置alb.ingress.kubernetes.io/traffic-limit-qps注解即可。

支持QPS限速

支持QPS限速

后端慢啟動

ALB Ingress支持通過alb.ingress.kubernetes.io/slow-start-enabled注解開啟后端慢啟動,通過alb.ingress.kubernetes.io/slow-start-duration注解設置慢啟動完成流量逐步增加所花費的時間,取值范圍為30-900秒(s)。

說明

時間越長,流量增加的速度越慢。

后端慢啟動

后端慢啟動

連接優雅中斷

ALB Ingress支持通過alb.ingress.kubernetes.io/connection-drain-enabled注解開啟連接優雅中斷,通過alb.ingress.kubernetes.io/connection-drain-timeout注解設置優雅中斷超時時間,取值范圍為0-900秒(s)。

連接優雅中斷

連接優雅中斷

  • 支持K8s與ECS混合掛載

  • 支持通過云企業網轉發路由器等產品的組合配置來掛載跨地域和線下IDC資源

  • ALB Ingress支持使用alb.ingress.kubernetes.io/actions.<服務名稱>注解配置后端轉發服務器組。后端轉發服務器組支持通過服務名稱或服務器組ID掛載,實現K8s集群內Pod和K8s集群外ECS實例混合掛載。

  • 通過ALB和云企業網CEN(Cloud Enterprise Network)、轉發路由器等產品的組合配置,可以使ALB將請求轉發至其他地域VPC內的服務器或者本地IDC服務器。

通過ALB Ingress實現混合掛載、跨地域掛載和本地IDC掛載

通過ALB Ingress實現混合掛載、跨地域掛載和本地IDC掛載

ALB Ingress生態集成

云產品集成

云產品

功能

描述

文檔鏈接

WAF

為ALB Ingress開啟WAF防護

Web應用防火墻WAF(Web Application Firewall)可以為網站或App提供一站式安全防護,防止數據泄密和惡意CC攻擊,阻止木馬上傳和網頁篡改,提供虛擬補丁。當ALB Ingress開啟WAF防護后,ALB實例監聽的端口流量將受到Web應用安全防護。

為ALB Ingress開啟WAF防護

EDAS

創建應用路由(ALB Ingress)

EDAS支持ALB Ingress應用路由,ALB Ingress基于阿里云應用型負載均衡 ALB(Application Load Balancer)提供更有效的Ingress流量管理方式,同時兼容Nginx Ingress,具備處理復雜業務路由和證書自動發現的能力。

創建應用路由(ALB Ingress)

SAE

基于Ingress網關實現全鏈路灰度

您可以通過ALB Ingress網關,在不需要修改您的任何業務代碼的情況下,為您的SAE應用實現全鏈路流量控制。

ASM

支持以Ingress方式與應用型負載均衡ALB集成。

阿里云服務網格(Alibaba Cloud Service Mesh,簡稱ASM)支持以Ingress方式與應用型負載均衡 ALB(Application Load Balancer)集成,滿足ALB用戶使用ASM的訴求。

ASM集成應用型負載均衡實例ALB

HPA

支持以Ingress方式與應用型負載均衡ALB集成。

容器水平伸縮(Horizontal Pod Autoscaler,簡稱 HPA)是 Kubernetes 中實現 Pod 水平自動伸縮的功能。HPA支持以Ingress方式與應用型負載均衡 ALB(Application Load Balancer)集成,實現基于QPS數據的應用彈性伸縮。

使用HPA基于QPS數據實現應用的彈性伸縮

Knative

支持在安裝了Knative組件的ACK或ACK Serverless集群中,通過ALB來訪問服務。

Knative是一款基于Kubernetes的Serverless框架。支持通過Knative的方式配置ALB服務發現,實現Header和Cookie灰度發布功能。

使用ALB網關

ACK One

支持以Ingress的方式創建應用型負載均衡ALB多集群網關

分布式云容器平臺ACK One(Distributed Cloud Container Platform for Kubernetes)是阿里云面向混合云、多集群、分布式計算、容災等場景推出的企業級云原生平臺。ACK One ALB多集群網關是ALB Ingress的多集群模式,可以快速實現同城多活、異地多活容災、流量多集群負載均衡、基于Header路由流量到指定集群等功能。

開源產品集成

開源產品

功能

描述

文檔鏈接

云上自建K8s

支持在云上自建的Kubernetes集群中,通過Ingress方式使用ALB產品。

利用購置的ECS計算資源搭建的Kubernetes集群,可以通過Ingress的方式編排ALB路由,實現集群內服務的自動發現和負載均衡。

自建Kubernetes集群使用ALB Ingress最佳實踐