【回顧】云原生畢業(yè)項目,事件驅(qū)動的資源擴(kuò)縮容組件
共 1795字,需瀏覽 4分鐘
·
2024-07-03 19:30
大家好,又見面了,我是 GitHub 精選君!
背景介紹
在實時計算或事件驅(qū)動的微服務(wù)中,我們常常會遇到一個問題,即如何根據(jù)實時任務(wù)的數(shù)量,動態(tài)的分配相關(guān)的計算和存儲資源。這是一個比較難以解決的問題,因為我們需要實時監(jiān)控系統(tǒng)的負(fù)載并根據(jù)實時負(fù)載來調(diào)整計算資源,這需要有復(fù)雜的負(fù)載均衡器和資源管理器,對于 Kubernetes(簡稱 k8s)用戶來說,難以實現(xiàn)精細(xì)化的、基于事件驅(qū)動的自動化擴(kuò)容。
今天要給大家推薦一個 GitHub 開源項目 kedacore/keda,該項目在 GitHub 有超過 7.4k Star,用一句話介紹該項目就是:“ KEDA is a Kubernetes-based Event Driven Autoscaling component. It provides event driven scale for any container running in Kubernetes ”。
項目介紹
KEDA(Kubernetes-based Event Driven Autoscaling)是一個基于 Kubernetes 的事件驅(qū)動自動化擴(kuò)容組件。KEDA 提供了細(xì)粒度的自動擴(kuò)容(包括從零開始擴(kuò)容和縮減到零),適用于任何在 Kubernetes 中運行的容器。KEDA 可以同時運行在云端和邊緣端,并且原生的和 Kubernetes 組件(如 Horizontal Pod Autoscaler)集成。此外,KEDA 沒有外部依賴,這極大的簡化了使用者的操作。KEDA 已經(jīng)是云原生計算基金會 (CNCF) 畢業(yè)項目。
如何使用
KEDA 提供了多種部署方式,包括 Helm、Operator Hub 和 YAML 文件,用戶可以根據(jù)自己的實際情況和習(xí)慣選擇合適的部署方式。以下是一些 QuickStart 指南,你可以通過這些指南來學(xué)習(xí)如何使用 KEDA:
? RabbitMQ 和 Go 的 QuickStart 鏈接:https://github.com/kedacore/sample-go-rabbitmq
? Azure Functions 和 Queues 的 QuickStart 鏈接:https://github.com/kedacore/sample-hello-world-azure-functions
? Azure Functions 和 Kafka on Openshift 4 的 QuickStart 鏈接:https://github.com/kedacore/sample-azure-functions-on-ocp4
? Azure Storage Queue with ScaledJob 的 QuickStart 鏈接:https://github.com/kedacore/sample-go-storage-queue
對于一些其他的事件源,你可以在這里(https://github.com/kedacore/samples)找到相關(guān)樣例。
項目推介
KEDA 是一個非?;钴S的開源項目,并且已經(jīng)成為了 CNCF 畢業(yè)項目,這意味著它不僅是一個功能強(qiáng)大,而且是一個成熟穩(wěn)定的開源項目,許多知名的公司和組織已經(jīng)在生產(chǎn)環(huán)境中使用了 KEDA。
以下是該項目 Star 趨勢圖(代表項目的活躍程度):
更多項目詳情請查看如下鏈接。
開源項目地址:https://github.com/kedacore/keda
開源項目作者:kedacore
開源協(xié)議:Apache License 2.0
關(guān)注我們,一起探索有意思的開源項目。
點擊如下卡片后臺回復(fù):加群,與技術(shù)極客們一起交流人工智能、開源項目,一起成長。如果你正在尋求開源項目推廣、DevOps、AIGC 大模型、軟件開發(fā)等領(lǐng)域的付費服務(wù),可參考推文了解詳情。
