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

Knative概述

Knative是一款基于Kubernetes的Serverless框架,支持基于請求的自動彈性、在沒有流量時將實例數(shù)量自動縮容至零、版本管理與灰度發(fā)布等能力。在完全兼容社區(qū)Knative和Kubernetes API的基礎(chǔ)上,ACK Knative進(jìn)行了多維度的能力增強(qiáng),例如通過保留實例降低冷啟動時間、基于AHPA實現(xiàn)彈性預(yù)測等。

為什么要在Kubernetes集群中使用Knative

Knative介紹

Knative是一款基于Kubernetes集群的Serverless框架,提供了云原生、跨平臺的Serverless編排標(biāo)準(zhǔn)。Knative通過整合容器構(gòu)建、工作負(fù)載管理以及事件模型來實現(xiàn)這一Serverless標(biāo)準(zhǔn),優(yōu)勢如下。

  • 更聚焦于業(yè)務(wù)邏輯:Knative通過簡單的應(yīng)用配置、自動擴(kuò)縮容等手段讓開發(fā)者聚焦于業(yè)務(wù)邏輯,降低運維負(fù)擔(dān)、減少對底層資源的關(guān)注。

  • 標(biāo)準(zhǔn)化:將業(yè)務(wù)代碼部署到Serverless平臺時,需要考慮源碼的編譯、部署和事件的管理。目前社區(qū)和云廠商提供的Serverless解決方案和FaaS方案標(biāo)準(zhǔn)不一。Knative提供了一個標(biāo)準(zhǔn)、通用的Serverless框架。

    例如,如需在Knative中實現(xiàn)事件驅(qū)動,您可以編寫對應(yīng)的YAML文件(CR)并在集群中部署,無需與云產(chǎn)品做深度綁定,便于跨平臺遷移。

  • 使用門檻低:Knative支持將代碼自動打包為容器鏡像并發(fā)布為服務(wù),也支持將函數(shù)快捷地部署到Kubernetes集群中,以容器的方式運行。

  • 應(yīng)用管理自動化:Knative支持在沒有流量時自動將實例數(shù)量縮容至零,從而節(jié)省資源,還提供版本管理、灰度發(fā)布等功能。

  • 事件驅(qū)動:Knative提供了完整的事件模型,便于接入外部系統(tǒng)的事件,并將事件路由到適當(dāng)?shù)姆?wù)或函數(shù)進(jìn)行處理。

核心組件

Knative包括以下核心組件,分別執(zhí)行不同的功能。

  • Knative Serving:管理Serverless工作負(fù)載,提供了應(yīng)用部署、多版本管理、基于請求的自動彈性、灰度發(fā)布等能力,而且在沒有業(yè)務(wù)流量時可以將應(yīng)用實例縮容至零。

  • Knative Eventing:提供了事件源的接入、事件注冊和訂閱、以及事件過濾等一整套事件管理的能力。事件模型可以有效地解耦生產(chǎn)者和消費者的依賴關(guān)系。

  • Knative Functions: 提供了一個簡單的方式來創(chuàng)建、構(gòu)建和部署Knative服務(wù)。您無需深入了解底層技術(shù)棧(例如Kubernetes、容器、Knative),通過使用Knative Functions,即可將無狀態(tài)、事件驅(qū)動的函數(shù)作為Knative服務(wù)部署到Kubernetes集群中。

功能特性

相較于在Kubernetes集群不使用Knative,使用Knative能幫您以更簡便的方式實現(xiàn)如下功能特性。

基于請求的自動彈性

基于CPU或者M(jìn)emory的彈性有時并不能完全反映業(yè)務(wù)的真實使用情況。對于Web服務(wù)來說,基于并發(fā)數(shù)(QPS)或者每秒處理請求數(shù)(RPS)進(jìn)行彈性伸縮更能直接反映服務(wù)性能。Knative Serving會為每個Pod注入queue-proxy容器,收集容器并發(fā)數(shù)(Concurrency)或請求數(shù)(RPS)指標(biāo)。Autoscaler定時獲取指標(biāo)后,會根據(jù)相應(yīng)的算法自動調(diào)整Deployment的Pod數(shù)量,從而實現(xiàn)基于請求的自動擴(kuò)縮容。

如果在ACK集群中實現(xiàn)相應(yīng)的操作,您需要分別創(chuàng)建Deployment、Service,配置Ingress網(wǎng)關(guān),然后配置HPA參數(shù)。而使用Knative服務(wù)時,您只需要部署Knative并配置Knative服務(wù)的YAML文件。

在沒有流量時將實例數(shù)量自動縮容至零

Knative支持在應(yīng)用無流量請求時將Pod數(shù)量自動縮容至0,并在有請求時自動擴(kuò)容Pod。Knative中定義了兩種請求訪問模式:Proxy(代理模式)和Serve(請求直達(dá)模式)。模式的切換由Autoscaler組件負(fù)責(zé)。當(dāng)請求為0時,Autoscaler會將請求模式切換為Proxy模式。當(dāng)有請求訪問時,Autoscaler會收到通知進(jìn)行擴(kuò)容,擴(kuò)容的Pod狀態(tài)變?yōu)镽eady后對請求進(jìn)行轉(zhuǎn)發(fā),此時Autoscaler會將訪問模式切換為Serve模式。

版本管理與灰度發(fā)布

創(chuàng)建Knative服務(wù)時底層會自動創(chuàng)建一個Configuration資源和一個Route資源。

  • Configuration:當(dāng)前期望狀態(tài)的配置。每次更新Service就會更新Configuration,Configuration的更新會創(chuàng)建一個唯一的Revision。Revision相當(dāng)于Configuration的版本管理機(jī)制。

  • Route:負(fù)責(zé)將請求路由到Revision,并可以向不同的Revision轉(zhuǎn)發(fā)不同比例的流量。

基于以上特性,您可以使用Revision進(jìn)行版本的管理,例如版本的回退。您還可以進(jìn)行流量的灰度發(fā)布,例如創(chuàng)建了V1版本的Revision后,當(dāng)版本需要變更時可以更新服務(wù)的Configuration,創(chuàng)建V2版本的Revision,通過Route對V1、V2設(shè)置不同的流量比例(例如V1為70%,V2是30%),那么流量會按照預(yù)設(shè)的比例進(jìn)行分發(fā)。

image

事件驅(qū)動

Knative通過Eventing提供了完整的事件模型,便于接入外部系統(tǒng)(例如GitHub、消息隊列等)的事件,并將事件路由到適當(dāng)?shù)腒native服務(wù)或函數(shù)進(jìn)行處理。

為什么要使用ACK Knative

在完全兼容社區(qū)Knative并提供標(biāo)準(zhǔn)Kubernetes API接口的基礎(chǔ)上,ACK Knative進(jìn)一步增強(qiáng)產(chǎn)品化能力并提供了更豐富的產(chǎn)品方案。

image
  • 產(chǎn)品化的能力:提供了產(chǎn)品化一鍵部署能力,您無需購買資源搭建系統(tǒng)。同時提供產(chǎn)品控制臺,支持白屏化操作,降低Kubernetes集群和Knative的使用門檻。

  • 簡化運維:

    • 核心組件托管:在ACK集群中,Knative的核心組件Knative Serving和Knative Eventing均由ACK創(chuàng)建和托管,無需您承擔(dān)資源費用,且提供高可用保障。

    • 網(wǎng)關(guān)托管:ACK Knative提供ALB、MSE、ASM和Kourier四種網(wǎng)關(guān)。除社區(qū)兼容的Kourier外,其余三種云產(chǎn)品網(wǎng)關(guān)的Controller均由ACK創(chuàng)建,提供全托管、免運維的網(wǎng)關(guān)服務(wù)。

  • 生態(tài)集成:無縫集成了阿里云的計算(ECI、ECS)、可觀測(日志服務(wù)SLS、Prometheus、CI/CD(云效、應(yīng)用集成(EventBridge)等產(chǎn)品。您無需自行采購服務(wù)器,也無需自建服務(wù),便能在Knative服務(wù)中實現(xiàn)日志與監(jiān)控告警、持續(xù)交付、事件驅(qū)動等能力。

  • 更豐富的功能特性:在社區(qū)Knative的基礎(chǔ)上,ACK Knative結(jié)合實際業(yè)務(wù)場景提供了開箱即用的、更為豐富的產(chǎn)品方案。例如以下方案。

    • 保留實例:在應(yīng)用沒有流量時,社區(qū)Knative默認(rèn)將應(yīng)用實例數(shù)縮容至零以降低成本,從而導(dǎo)致應(yīng)用重新啟動時會經(jīng)歷較長的冷啟動時間。如果您的應(yīng)用對冷啟動延時較為敏感,推薦使用此功能,保留一個低規(guī)格的突發(fā)性能實例,平衡好使用成本和啟動時長。

    • Knative自動伸縮: 除提供開箱即用的HPA、KPA(Knative Pod Autoscaler)外,您還可以為Knative服務(wù)配置AHPA(Advanced Horizontal Pod Autoscaler)彈性能力。如果您的應(yīng)用所需資源具備周期性變化,推薦您使用AHPA進(jìn)行彈性預(yù)測,提前預(yù)熱所需的資源,緩解使用Knative時遇到的冷啟動問題。

關(guān)于ACK Knative和社區(qū)Knative對比的更多信息,請參見阿里云Knative和開源Knative對比。

使用場景

ACK Knative的典型使用場景如下。

業(yè)務(wù)場景

說明

Web服務(wù)的托管

  • 簡化部署:ACK Knative封裝了許多Kubernetes的底層細(xì)節(jié),通過Knative服務(wù)大大簡化了工作負(fù)載的部署和管理。

  • 簡化多版本管理:Revision機(jī)制能夠確保每個修訂版本都有唯一標(biāo)識,便于管理不同的版本,例如版本的回滾。

  • 簡化流量灰度發(fā)布:ACK Knative提供流量管理功能。通過為不同Revision版本的服務(wù)分配不同的流量比例,可以快速實現(xiàn)灰度發(fā)布、A/B測試等。

Serverless應(yīng)用

  • 聚焦業(yè)務(wù)邏輯:開發(fā)者無需關(guān)心IaaS資源,只需關(guān)注業(yè)務(wù)邏輯的開發(fā),應(yīng)用配置也大大簡化,降低底層基礎(chǔ)設(shè)施的運維成本。

  • 資源按需使用、自動彈性:ACK Knative可以根據(jù)流量請求和并發(fā)情況自動擴(kuò)縮資源,當(dāng)沒有業(yè)務(wù)流量時還可以將實例數(shù)量縮減至零,節(jié)省資源和成本。

AI場景

  • 聚焦業(yè)務(wù)邏輯:GPU等異構(gòu)計算場景下,開發(fā)者無需關(guān)心底層基礎(chǔ)設(shè)施的維護(hù),只需關(guān)注AI任務(wù)的構(gòu)建和部署。

  • 資源按需使用、自動彈性:ACK Knative可以根據(jù)實際負(fù)載情況自動擴(kuò)縮資源,針對負(fù)載具有波動性的推理服務(wù)能夠有效降低資源使用成本。

  • 可移植性:ACK Knative可以運行在任何兼容Kubernetes的環(huán)境中,Knative服務(wù)可以在云上、本地數(shù)據(jù)中心甚至是邊緣設(shè)備上移植部署。

事件驅(qū)動場景

Knative Eventing提供了完整的事件模型,簡化了接入外部系統(tǒng)的事件的流程。例如,IoT設(shè)備可以將傳感器數(shù)據(jù)發(fā)送到Knative服務(wù)中,ACK Knative可以配置對應(yīng)的事件源用于接收數(shù)據(jù),并觸發(fā)相應(yīng)的處理邏輯,例如數(shù)據(jù)存儲、實時分析、監(jiān)控告警等。

ACK Knative的使用流程

ACK Knative的使用流程如下圖所示。

image

流程

說明

前提條件

創(chuàng)建ACK托管集群。具體操作,請參見創(chuàng)建ACK托管集群。集群版本需為1.22及以上。如需升級集群,請參見手動升級集群。

在控制臺一鍵部署ACK Knative,安裝Knative Serving組件。具體操作,請參見部署Knative。

完成網(wǎng)關(guān)選型并部署網(wǎng)關(guān)。ACK Knative支持ALB、MSE、ASM、Kourier四種網(wǎng)關(guān)。詳細(xì)信息,請參見Knative網(wǎng)關(guān)選型建議

  • ALB:在阿里云應(yīng)用型負(fù)載均衡ALB(Application Load Balancer)之上提供更為強(qiáng)大的Ingress流量管理方式,提供全托管免運維的方式,并且提供自動彈性能力。

  • MSE(Microservices Engine):兼容K8s Ingress標(biāo)準(zhǔn)的下一代網(wǎng)關(guān)產(chǎn)品,將傳統(tǒng)的流量網(wǎng)關(guān)和微服務(wù)網(wǎng)關(guān)功能合并。

  • ASM(Alibaba Cloud Service Mesh):統(tǒng)一管理微服務(wù)應(yīng)用流量、兼容Istio的托管式平臺。通過流量控制、網(wǎng)格觀測以及服務(wù)間通信安全等功能,簡化您的服務(wù)治理,并為運行在異構(gòu)計算基礎(chǔ)設(shè)施上的服務(wù)提供統(tǒng)一的管理能力。

  • Kourier:基于Envoy架構(gòu)實現(xiàn)的一款Knative社區(qū)開源的輕量級網(wǎng)關(guān)。

服務(wù)部署與管理

指定使用的資源類型:

  • 默認(rèn)使用ECS資源運行Knative服務(wù)。

  • 使用ECI提供的Pod資源應(yīng)對突發(fā)流量,請參見使用ECI資源。

  • 在AI推理服務(wù)等場景下使用GPU資源,請參見使用GPU資源

  • 集群中同時存在ECS和ECI資源時,可基于ResourcePolicy來聲明資源的擴(kuò)容和縮容順序,請參見在Knative中同時使用ECS和ECI資源

  • 與搶占式實例結(jié)合使用,降低云計算資源,請參見使用搶占式實例。

  • 配置保留實例,保留一個低規(guī)格的突發(fā)性能實例,平衡好使用成本和啟動時長,請參見配置保留實例

自動伸縮:

版本管理與灰度發(fā)布:

Knative服務(wù)的訪問:

  • Knative服務(wù)的默認(rèn)域名格式為{route}.{namespace}.{default-example.com},其中{default-example.com}是默認(rèn)的域名后綴,您可以自定義域名后綴,請參見使用自定義域名。

  • 使用自定義域名時,推薦為自定義域名配置一個HTTPS證書,提高數(shù)據(jù)傳輸?shù)陌踩裕垍⒁?a href="http://bestwisewords.com/zh/ack/ack-managed-and-ack-dedicated/user-guide/configure-access-over-https" id="534eb5e671arw" title="" class="xref">配置HTTPS證書訪問。

  • 配置探針(存活探針(Liveness Probe)和就緒探針(Readiness Probe)),監(jiān)測和管理服務(wù)的健康狀況和可用性,請參見在Knative中配置端口探測。

進(jìn)階功能

事件驅(qū)動:在滿足云原生開發(fā)的常見需求的基礎(chǔ)上,Knative Eventing提供了完整、系統(tǒng)的Serverless事件驅(qū)動模式,包括外部事件源的接入、事件流轉(zhuǎn)和訂閱、以及對事件的過濾等功能。ACK Knative直接豐富的事件源,包括GitHub、EventBridge等。請參見事件驅(qū)動概述。

Knative Functions:簡化在Kubernetes集群中創(chuàng)建、部署和調(diào)用函數(shù)的流程,請參見部署Knative Functions。

AI推理服務(wù):

KServe提供了一個基于Kubernetes集群的機(jī)器學(xué)習(xí)模型服務(wù)框架,提供簡單的Kubernetes CRD,可將單個或多個經(jīng)過訓(xùn)練的模型(例如TFServing、TorchServe、Triton等推理服務(wù)器)部署到模型服務(wù)運行時。您可以部署KServe組件基于KServe快速部署一個推理服務(wù)

同時,ACK提供了在Knative中部署AI模型推理服務(wù)的最佳實踐,例如如何在Knative中部署一個vLLM推理服務(wù)、如何加速模型部署、如何配置GPU共享調(diào)度等,請參見基于Knative部署vLLM推理應(yīng)用、在Knative中部署AI模型推理服務(wù)的最佳實踐。

服務(wù)網(wǎng)格:如果您需要在Knative服務(wù)中集成服務(wù)網(wǎng)格,以實現(xiàn)復(fù)雜的流量管理并增強(qiáng)服務(wù)安全性,推薦您使用服務(wù)網(wǎng)格ASM,請參見什么是服務(wù)網(wǎng)格ASM?。

可觀測性與成本管理

日志采集:您可以在Knative服務(wù)中使用SLS,無需開發(fā)便能快捷完成日志數(shù)據(jù)采集、消費、投遞以及查詢分析等功能,請參見在Knative上實現(xiàn)日志采集。

監(jiān)控大盤:您可以把Knative接入阿里云Prometheus監(jiān)控,便于查看Knative的響應(yīng)延遲、請求并發(fā)數(shù)等數(shù)據(jù),請參見查看Knative服務(wù)監(jiān)控大盤。

監(jiān)控告警:您可以使用SLS創(chuàng)建日志告警監(jiān)控規(guī)則,請參見為Knative服務(wù)開啟監(jiān)控告警。

成本洞察:作為企業(yè)IT成本管理人員,您可以為Knative服務(wù)啟用成本洞察功能,了解Knative服務(wù)的資源使用量及成本分布,請參見啟用Knative服務(wù)成本洞察。

相關(guān)計費

在ACK集群中使用ACK Knative時,ACK Knative本身不收取管理費用,但在使用過程中產(chǎn)生的集群管理費用、所創(chuàng)建的云服務(wù)器、負(fù)載均衡實例、NAT網(wǎng)關(guān)等,按照相應(yīng)資源的價格計費。更多信息,請參見ACK集群的計費概述云產(chǎn)品資源計費。

常見問題

如您在使用ACK Knative時遇到問題,可以先參見Knative FAQ完成自排查。

客戶案例

  • 數(shù)禾科技以大數(shù)據(jù)和技術(shù)為驅(qū)動,為金融機(jī)構(gòu)提供高效的智能零售金融解決方案。為了解決支撐模型計算的底層應(yīng)用資源無法靈活且快速地根據(jù)請求量調(diào)整算力等問題,數(shù)禾科技采用ACK + Knative的方式來部署模型服務(wù),實現(xiàn)了根據(jù)請求的擴(kuò)縮容能力、允許Pod縮容到0以及多版本管理的能力。更多信息,請參見數(shù)禾科技 AI 模型服務(wù)基于阿里云容器服務(wù)實現(xiàn) Serverless 容器化。

  • 靈伴科技(Rokid)是一家專注于人機(jī)交互技術(shù)的產(chǎn)品平臺公司,基于ACK Knative方案部署了其在線服務(wù)系統(tǒng),實現(xiàn)了多版本管理以加快應(yīng)用迭代、基于請求的自動擴(kuò)縮容以精準(zhǔn)調(diào)配GPU資源等能力,實現(xiàn)了運維、成本和性能之間的平衡。更多信息,請參見靈伴科技(Rokid)借助 Knative 實現(xiàn) AI 應(yīng)用云原生 Serverless 化

  • XTransfer是一站式外貿(mào)企業(yè)跨境金融和風(fēng)控服務(wù)公司,基于ACK Knative方案搭建了DevOps平臺,實現(xiàn)了算法模型的Serverless部署。在DevOps平臺上,算法工程師可以創(chuàng)建待上線模型版本、定義推理腳本、指定模型服務(wù)所需資源(最小副本數(shù)、所需的GPU資源、所需的內(nèi)存資源等),并最終完成模型的發(fā)布。更多信息,請參見云原生 Knative 組件助力 XTransfer 加速應(yīng)用云原生 Serverless 化

  • 深圳硅基仿生科技股份有限公司是一家創(chuàng)新醫(yī)療器械研發(fā)與產(chǎn)業(yè)化公司,采用ACK Knative方案加速了深度學(xué)習(xí)模型的性能提升,同時降低了服務(wù)部署成本。更多信息,請參見硅基仿生業(yè)務(wù)全面 Serverless 容器化的增效降本之旅。

聯(lián)系我們

如果您在使用Knative的過程中有任何疑問或建議,歡迎您搜索釘群號23302777加入釘群。

相關(guān)文檔

  • 請及時升級Knative Serving組件,以便享受最新的功能特性和缺陷修復(fù)。建議您在業(yè)務(wù)低峰期進(jìn)行升級。更多信息,請參見Knative版本發(fā)布說明、升級Knative Serving組件

  • Knative官方文檔提供了一個在線書店應(yīng)用程序教程,帶您體驗使用Knative構(gòu)建、部署和監(jiān)控應(yīng)用程序的各個步驟,請參見Knative Bookstore Tutorial