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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

Knative初识

發布時間:2023/12/20 编程问答 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Knative初识 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

什么是serverless

serverless的全稱是serverless computing無服務運算,又被稱為函數即服務(faas),是云計算的一種模型,以paas為基礎,無服務器運算提供一個微型的架構,終端客戶不需要部署、配置或管理服務器服務,代碼運行所需要的服務器服務皆由云端平臺來提供,國內外比較出名的產品有Tencent Serverless、AWS Lambda、Microsoft Azure Functions 等

什么是 Knative

knative?是谷歌開源的 serverless 架構方案,旨在提供一套簡單易用的 serverless 方案,把 serverless 標準化。目前參與的公司主要是 Google、Pivotal、IBM、Red Hat,2018年7月24日才剛剛對外發布,當前還處于快速發展的階段,主要是為了解決容器為核心的serverless應用的構建、部署和運行的問題

Knative優勢

開發者只需要編寫代碼或者函數,以及配置文件然后運行build和deploy就能把應用自動部署到集群

其他事情都是Knative平臺自動處理,這些事情包括

  • 自動完成代碼到容器的構建
  • 把應用(或者函數)和特定的事件進行綁定:當事件發生時,自動觸發應用(或者函數)
  • 網絡的路由和流量控制
  • 應用的自動伸縮

和標準化的 FaaS 不同,knative 期望能夠運行所有的 workload : traditional application、function、container。

knative 核心概念和原理

為了實現 serverless 應用的管理,knative 把整個系統分成了三個部分

  • Build:構建系統,把用戶定義的函數和應用 build 成容器鏡像
  • Serving:服務系統,用來配置應用的路由、升級策略、自動擴縮容等功能
  • Eventing:事件系統,用來自動完成事件的綁定和觸發

?Build 構建系統

build 的功能是把用戶的代碼自動化構建成容器鏡像,初次聽起來很奇怪,有了 docker 之后有一個 Dockerfile 不就能構建容器了嗎?為什么還需要一個新的 Build 系統?

?Knative 的特別之處在于兩點:一是它的構建完成是在 kubernetes 中進行的,和整個 kubernetes 生態結合更緊密;另外,它旨在提供一個通用的標準化的構建組件,可以作為其他更大系統中的一部分。

正如官方文檔中的說的那樣,更多是為了定義標準化、可移植、可重用、性能高效的構建方法

?Serving:服務系統

?serving 的核心功能是讓應用運行起來提供服務。雖然聽起來很簡單,但這里包括了很多的事情

  • 自動化啟動和銷毀容器
  • 根據名字生成網絡訪問相關的 service、ingress 等對象
  • 監控應用的請求,并自動擴縮容
  • 支持藍綠發布、回滾功能,方便應用方法流程

??knative 是建立在 kubernetes 和 istio 平臺之上的,使用 kubernetes 提供的容器管理能力(deployment、replicaset、和 pods等),以及 istio 提供的網絡管理功能(ingress、LB、dynamic route等)

因為 kubernetes 和 istio 本身的概念非常多,理解和管理起來比較困難,knative 在此之上提供了更高一層的抽象(這些對應是基于 kubernetes 的 CRD 實現的)。

Eventing:事件系統

serving 系統實現的功能是讓應用/函數能夠運行起來,并且自動伸縮,那什么時候才會調用應用呢?除了我們熟悉的正常應用調用之外,serverless 最重要的是基于事件的觸發機制,也就是說當某件事發生時,就觸發某個特定的函數。

事件概念的出現,讓函數和具體的調用方能夠解耦。函數部署出來不用關心誰會調用它,而事件源觸發也不用關心誰會處理它。

Knative 目前的狀態

knative 是 2018 年 7月才剛剛對外開放,雖然內部已經開發一段時間,但是目前還處于非常早前的階段(從支持的事件源和 bus就能看出來)。目前代碼還不穩定,很多實現都是 hard-coded。

knative 也是脫產于 google 和 CNCF,因此整個社區運行方式和目標與之前的 kubernetes 以及 istio 非常相似。社區根據組件分成多個 Working Group,每個 Group 獨立負責自己的功能,所有的開源活動(文檔、視頻、代碼)都是開放的。另外,CloudEvents 作為 knative 依賴的標準,目標也是成為 CRI、CNI、CSI 這種類似的標準。

knative 社區目前非常活躍,已?github.com/knative/serving?項目為例,一個月已經有 600+ star,目前有 60+ contributor,900+ commits,而且入門的文檔和教程都已經非常全面。

總結

以上是生活随笔為你收集整理的Knative初识的全部內容,希望文章能夠幫你解決所遇到的問題。

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