Knative是一款基于Kubernetes的開源Serverless框架,支持基于請求的自動彈性、在沒有流量時將實例數量自動縮容至0、版本管理與灰度發布等能力。ACK Knative完全兼容社區Knative,還提供產品化的一鍵部署能力,無需自行購買資源搭建系統。您可以在控制臺白屏化部署Knative并開啟Knative網關。
前提條件
已創建1.28及以上版本的ACK托管集群或ACK專有集群,且集群中Worker節點數量大于等于3個。如需升級集群,請參見手動升級集群。
操作步驟
登錄容器服務管理控制臺,在左側導航欄選擇集群。
在集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇 。
在組件管理頁簽,單擊一鍵部署Knative,選擇需要安裝的Knative網關,然后單擊一鍵部署。
關于幾種Knative網關的選型建議,請參見Knative網關選型建議。
ALB
提供全托管的ALB Ingress能力,基于阿里云應用型負載均衡ALB(Application Load Balancer)之上更為強大的Ingress流量管理方式。具備處理復雜業務路由和證書自動發現的能力,支持HTTP、HTTPS和QUIC協議。使用ALB Ingress 選擇至少兩個虛擬交換機。
說明ALB當前ALB支持的地域與可用區。
MSE
提供MSE Ingress能力,MSE Ingress是在MSE云原生網關之上提供更為強大的Ingress流量管理方式,兼容Nginx Ingress以及50多個Nginx Ingress的注解,覆蓋90%以上的Nginx Ingress業務場景。支持多服務版本同時灰度發布、靈活的服務治理能力以及全方位的安全防護保障,能夠滿足大規模云原生分布式應用的流量治理訴求。
重要MSE網關僅支持Kubernetes版本為1.24及以上的集群。
ASM
阿里云服務網格(Service Mesh,簡稱ASM)提供一個全托管式的服務網格平臺,兼容社區Istio開源服務網格,用于簡化服務的治理,包括服務調用之間的流量路由與拆分管理、服務間通信的認證安全以及網格可觀測性能力,從而極大地減輕開發與運維的工作負擔。
Kourier
由Knative社區提供的網關,提供基本的服務路由訪問能力。Kourier組件部署在用戶側集群,需要您自行維護。
說明在ACK Serverless集群中使用Kouier網關需要開啟PrivateZone(或CoreDNS)。
部署成功后,您可以單擊進入組件管理,查看組件信息;單擊進入服務管理,查看Knative應用信息。
相關操作
部署未安裝的組件:在組件管理頁簽,狀態為未部署的組件的右側,單擊部署,在彈出的對話框中,單擊確定。
卸載組件:在組件管理頁簽,單擊目標組件右側操作列下的卸載,在彈出的對話框,單擊確定。
卸載Knative:在組件管理頁簽,單擊右上角的一鍵卸載,在彈出的對話框,選中我已知曉并確認卸載Knative,單擊確認。
相關文檔
關于如何根據業務類型選擇合適的Knative網關,請參見Knative網關選型建議。
您可以參見快速部署一個Knative服務快速部署一個Knative服務。
關于如何基于流量請求數實現Knative服務的自動擴縮容,請參見基于流量請求數實現服務自動擴縮容。
關于如何部署Knative Eventing組件并實現Knative的事件驅動,請參見Knative事件驅動。