日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Serverless Kubernetes 落地实践

發布時間:2025/3/20 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Serverless Kubernetes 落地实践 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?作者:元毅

導讀

Kubernetes 作為當今云原生業界標準,具備良好的生態以及跨云廠商能力。Kubernetes 很好的抽象了 IaaS 資源交付標準,使得云資源交付變的越來越簡單,與此同時用戶期望更多的聚焦于業務自身,做到面向應用交付,Serverless 理念也因此而生。那么如何通過原生 Kubernetes 提供 Serverless 能力?如何借力豐富的云原生社區生態?這里給大家介紹一下我們在 Serverless Kubernetes 上的落地實踐。本文將從以下 3 個方面展開介紹:

  • 為什么要做Serverless Kubernetes
  • 如何實現Serverless Kubernetes
  • Serverless Kubernetes 落地實踐

為什么要做 Serverless Kubernetes

Kubernetes

眾所周知,Kubernetes 是一款開源容器化編排系統,用戶使用 Kubernetes 可以做到降低運維成本、提高運維效率,并且提供標準化 API,某種意義就是避免被云廠商綁定,進而形成了以 Kubernetes 為核心的云原生生態。可以說 Kubernetes 已然成為了云原生業界事實標準。

Serverless 與 Kubernetes

那么我們回到 Serverless 上面來,Serverless 的核心理念在于讓開發者更聚焦業務邏輯,減少對基礎設施的關注。那么我們如何在云原生業界標準之上做 Serverless,Kubernetes 是否也能做到更專注于應用業務邏輯。

Kubernetes 做 Serverless 有哪些優勢

我們來看一下 Kubernetes 做 Serverless 有什么優勢。先看一下 Kubernetes 特性包括哪些:

  • 容器化
  • 統一 IaaS 資源交付
  • CI/CD 持續集成部署
  • 跨云廠商
  • 豐富的生態
  • 面向應用管理

而對應于 Serverless 來說

  • 事件驅動:Kubernetes 支持 job 類型、并圍繞 Kubernetes 提供豐富的事件源
  • 按需使用:Kubernetes 本身支持 hpa 彈性能力
  • 免運維、高可用:Kubernetes 可以通過容器化、統一資源交付很好的支持。

結合這些來看 Kubernetes 實現 serverless,天然具備優勢。

如何實現 Serverless Kubernetes

在 Kubernetes 上實現 Serverless 主要做到一下兩點:

第一:向下如何讓用戶減少對基礎設施的關注;

第二:線上如何更聚焦業務應用。

這里我們通過 Serverless Framework ,聚焦業務應用,進一步抽象 Kubernetes 資源,提供按需使用自動彈性的能力。通過 IaaS 資源免運維,減少對基礎設施的關注,做到節點免運維。

那么 IaaS 資源免運維,我們是如何做的呢?

減少對基礎設置的關注:IaaS 免運維

原生的 Kubernetes 節點資源需要用戶自行維護,為了降低用戶維護節點成本,我們提供了托管節點池,幫助用戶維護節點的生命周期,但用戶還是需要對托管節點池策略進行維護,更近一步在 Serverless Kubernetes 中通過虛擬節點結合彈性容器實例 ECI,讓用戶徹底擺脫對 IaaS 的運維。

Serverless Kubernetes IaaS 資源免運維包括:

  • 基于容器,安全隔離、高移植
  • 無服務器管理:無需容量規劃,對服務器免運維
  • 彈性擴容:秒級擴容,無限容器
  • 按需付費,更高資源利用率

向下我們通過虛擬節點結合 ECI 實現了 IaaS 資源免運維,那么向上如何聚焦業務邏輯呢?其實就是以應用為核心。

聚焦業務邏輯:以應用為核心

圍繞應用來看,無非我們要解這些問題:

  • 應用部署
  • 灰度發布
  • 流量管理
  • 自動彈性
  • 可觀測性以及應用的多版本管理

那么有開箱即用的方案去解嗎?答案是 Knative。

Knative 是什么

Knative 是基于 Kubernetes 之上提供的一款開源 Serverless 應用框架,幫助用戶部署和管理現代化的 Serverless 工作負載,打造企業級 Serverless 平臺。

Knative 具備如下優勢:

  • 在幾秒鐘內建立可擴展、安全、無狀態的服務。
  • 具有更高級別 Kubernetes 應用抽象的 API。
  • 可插拔組件,讓您可以使用自己的日志記錄和監控、網絡和服務網格。
  • 在 Kubernetes 運行的任何地方都可以運行 Knative,無需擔心供應商鎖定。
  • 開發者無縫體驗,支持 GitOps、DockerOps、ManualOps 等。
  • 支持常用工具和框架,例如 Django、Ruby on Rails、Spring 等。

Knative 主要包括 2 大核心模塊:Serving 和 Eventing

Serving 提供了 Service 應用模型,支持基于流量的灰度發布、版本管理、縮容到 0 以及自動彈性。

Eventing 提供事件驅動能力。支持豐富的事件源,以及用于事件流轉、過濾的 Broker/Trigger 模型。

為什么是 Knative

那么我們為什么選擇 Knative 呢?

根據 CNCF 2020 中國云原生調查報告,Knative 已經成為 Kubernetes 上最廣泛安裝的無服務器。

另外 Knative 社區近期也發起了一項統計:當前哪些云廠商或企業在提供或者使用 Knative。我們可以看到,幾乎所有的大廠都支持或者集成 Knative, 如阿里云、谷歌云、IBM、Red Hat 等,并且大部分都提供了生產級別能力(Production),這些跡象表明越來越多的用戶擁抱 Knative。

此外近期 Knative 已申請成為 CNCF 孵化項目,這無疑讓 Knative 開發者為之興奮。

Knative 落地挑戰、應對與效果

從開源到產品化落地,必然會面對一些挑戰。Knative 產品化落地主要面對如下挑戰:

  • 管控組件多,運維復雜
  • 0 到 1 冷啟動問題
  • 流量請求 1 對 1 分發

那么我們如何來應對呢?

我們提供組件托管,幫助用戶節省資源及運維成本;當請求為 0 時,縮容到低規格保留實例,實現請求 0 到 1 免冷啟動,做到成本可控;提供自研事件網關,做到流量的精準控制。

Serverless Kubernetes 落地實踐

落地方案

結合上述介紹,向上通過 Serverless Framewok Knative 更聚焦業務應用,向下通過虛擬節點減少對基礎設施的關注。這就是我們Serverless Kubernetes 落地方案:圍繞 Kubernetes api, 下線集成云產品的能力,包括消息事件、彈性容器實例以及日志監控等。向上通過 Knative 圍繞應用為核心,提供事件驅動、自動彈性等能力。

典型應用場景

最后看一下我們有哪些落地場景,典型的應用場景及行業領域如圖:

落地實踐:異構資源,按需使用

  • 客戶痛點

用戶希望通過 Serverless 技術按需使用資源,節省資源使用成本,簡化運維部署 。另外有 GPU 的業務訴求。希望使用容器化的 Serverless ,支持使用 GPU 資源,同時簡化應用運維部署(盡可能少的操作 Kubernetes deployment/svc/ingress/hpa等資源),IaaS 資源免運維。

  • 解決方案

使用 Knative + ASK 作為 Serverless 架構。數據采集之后,通過服務網關訪問數據處理服務,數據處理服務根據請求量按需自動擴縮容。

落地實踐:事件驅動,精準分發

某客戶直播系統支持用戶在線互動。消息數據的處理主要有以下技術挑戰:

  • 業務彈性波動,消息并發高。
  • 互動實時響應,低延遲。

客戶選擇阿里云的 Knative 服務進行數據的彈性處理。應用實例數隨著業務波峰波谷實時擴容和縮容,真正做到了按需使用,實時彈性的云計算能力。整個過程完全自動化,極大的減少了業務開發人員在基礎設施上的心智負擔。

小結

我們回顧一下本文介紹的主要內容:首先介紹了為什么在 Kubernetes 提供 Serverless:

  • Kubernetes 已成為云原生業界標準
  • 面向標準 Kubernetes API 進行 Serverless 編程

然后我們如何實現 Serverless ?Kubernetes:

  • IaaS 節點免運維
  • Serverless Framework (Knative)

最后介紹了 2 個落地實踐場景:

  • 異構資源,按需使用
  • 事件驅動,精準分發

一句話:Serverless Kubernetes 基于 Kubernetes 之上,提供按需使用、節點免運維的 Serverless 能力,讓開發者真正實現通過 Kubernetes 標準化 API 進行 Serverless 應用編程,值得關注。

點擊??此處??,即可查看 1204 Serverless Developer Meetup 詳情!

總結

以上是生活随笔為你收集整理的Serverless Kubernetes 落地实践的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。