Kubernetes在希臘語中的意思為“舵手”,用此命名是用來突出其為用戶帶來的控制力。如今,程序員對于Kubeless新框架以及Kubernetes-native無服務器框架擁有更強的控制力。
利用Kubernetes資源,Kubeless可以提供自動擴展,API路由,監控,故障排除等功能,且Kubeless是完全開源的,不隸屬于任何公司或組織。
為什么要切換到Kubeless?
Kubernetes無疑是偉大的!許多開源項目都提供了 FaaS 容器調度器,例如,Funktion,Fission,Kubeless,Funcatron,FaaS 等。為什么Kubeless能夠在重重包圍中脫穎而出呢?這是因為它使用CRD來免除程序員自己編寫API服務來處理自定義資源。Kubeless只需要運行一個集群控制器來監視自定義資源,而且控制器還可以按需啟動runtime,有助于集群內控制器將功能代碼動態地注入runtime。除此之外,它還可以使用HTTP或者PubSub機制。
Kubeless使用Kafka進行事件系統。 Kafka設置也捆綁在Kubeless命名空間中進行開發。此外,Kubeless使用k8s,沒有額外的API服務器或API路由器/網關。這使得Kubernetes用戶很容易將現有技能用于Kubeless。
Kubeless新框架包含的其它工具:
·UI is available,可以在本地或群集中運行。
·severless框架插件,可用于額外的支持。
Kubeless的前進之路
截至目前,Kubeless仍處于早期階段。不過,現在已經有了一個詳細的路線圖,以下是正在實施的一些高級功能:
添加其他runtime: 目前,Kubeless支持Python,NodeJS和Ruby,同時還提供了一種自定義runtime的方法。
調查其他消息總線(如nats.io)
通過Prometheus調整運行時間,以便能夠自動創建pod自動分頁器
優化功能啟動時間
添加分布式跟蹤(也許使用istio)
突破觸發器和運行時
支持其它的事件框架,如nats.io