| 研究生: |
楊宗訓 Zong-Syun Yang |
|---|---|
| 論文名稱: |
基於 Kubernetes 做開源 serverless compute platform 效能測試 Performance Evaluations of Open Source Serverless Compute Platforms based on Kubernetes |
| 指導教授: |
陳彥文
王尉任 |
| 口試委員: | |
| 學位類別: |
碩士 Master |
| 系所名稱: |
資訊電機學院 - 通訊工程學系在職專班 Executive Master of Communication Engineering |
| 論文出版年: | 2023 |
| 畢業學年度: | 111 |
| 語文別: | 中文 |
| 論文頁數: | 76 |
| 中文關鍵詞: | 負載平衡 、故障轉移 、Serverless 、Kubernetes 、Knative 、OpenFaaS 、Nuclio 、Fission |
| 外文關鍵詞: | load balance, fault tolerance, Serverless, Kubernetes, Knative, OpenFaaS, Nuclio, Fission |
| 相關次數: | 點閱:25 下載:0 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
雲端運算之服務要穩定執行,且需要有負載平衡和故障轉移機制、根據流量調整執行服務數量、系統開發和管理分工要明確以及按照使用量收費,所以出現了 Serverless 概念。目前公有雲的 Serverless 已經有很多效能測試的研究,但私有雲的部份還很少。因此本論文使用市面上常見的開源 Serverless 框架,有 Knative、OpenFaaS 、 Nuclio 和 Fission 建構在 Kubernetes 私有雲平台執行,比較不同 Serverless 框架在資源使用方面和執行效能的差異。本研究測試項目主要有 Serverless 框架資源使用狀態,了解到哪些 Serverless 框架較輕量。另外當服務副本數量縮小到零個時會發生冷啟動造成執行服務延遲,因此透過每間隔一段時間從 client 連到服務上驗證冷啟動對執行效能的影響,以及比較不同 Serverless 框架在執行函數同步和非同步的效能。最後本論文說明不同使用情境可以選擇哪些適合的 Serverless 框架做為本論文的研究成果。
Cloud computing services require stable execution, load balancing, and fault tolerance mechanisms. They also need to adjust the number of running service based on traffic and have clear division of labor in system development and management. Additionally, they are billed based on usage. These requirements have led to the emergence of the Serverless concept. Currently, there have been many performance tests conducted on Serverless in public clouds, but there is still limited research on private clouds. Therefore, this paper uses the normal open source Serverless frameworks, including Knative, OpenFaaS, Nuclio and Fission, to deploy on a Kubernetes private cloud platform, in order to compare the differences between the resource usage utilization and execution performance for different Serverless frameworks. The main task of this research is to test the resource usage status of Serverless framework and understand which frameworks are more lightweight. Furthermore, when the number of service replicas scaled to zero, the cold starts can be occurred can result in the executing service deploy. Therefore, the effect of cold starts on execution performance is verified by periodically connecting from the client to the service, and the performance of different Serverless frameworks in executing functions synchronously and asynchronously is compared. Finally, this paper explains which Serverless frameworks are suitable for different usage scenarios as the research result.
[1] AWS 官方網站, "Amazon EC2 隨需定價," Amazon, [Online]. Available: https://aws.amazon.com/tw/ec2/pricing/on-demand. [Accessed 02 December 2022].
[2] AWS 官方網站, "AWS Lambda 定價," Amazon, [Online]. Available: https://aws.amazon.com/tw/lambda/pricing. [Accessed 05 December 2022].
[3] G. Adzic and R. Chatley, Serverless computing: economic and architectural impact, Paderborn, Germany: ESEC/FSE 2017: Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering. ACM, 2017, p. 884.
[4] Redhat 官方網站, "What is serverless," Redhat, 11 May 2022. [Online]. Available: https://www.redhat.com/en/topics/cloud-native-apps/what-is-serverless. [Accessed 12 December 2022].
[5] 騰訊雲開發團隊, "容器化的 Serverless," 騰訊, 02 July 2022. [Online]. Available: https://cloud.tencent.com/developer/article/1646498. [Accessed 15 December 2022].
[6] "What is BaaS?," cloudflare, [Online]. Available: https://www.cloudflare.com/zh-tw/learning/serverless/glossary/backend-as-a-service-baas/. [Accessed 20 December 2022].
[7] TIBCO, "什麼是功能即服務 (FaaS)?," [Online]. Available: https://www.tibco.com/zh-hant/reference-center/what-is-function-as-a-service-faas. [Accessed 15 December 2022].
[8] E. Adam and W. Joe, "Be Wary of the Economics of "Serverless" Cloud Computing," IEEE Cloud Computing, vol. 4, no. 2, p. 11, 26 April 2017.
[9] Jonathan Decker, Piotr Kasprzak and Julian Martin Kunkel, "Performance Evaluation of Open-Source Serverless Platforms," algorithms, vol. 15, no. 7, p.2, 02 July 2022.
[10] P. Vahidinia, B. Farahani and F. S. Aliee, Cold Start in Serverless Computing: Current Trends and Mitigation Strategies, Barcelona, Spain: 2020 International Conference on Omni-layer Intelligent Systems (COINS), 2020, p. 1.
[11] "Kubeless," kubeless 官方 GitHub, [Online]. Available: https://github.com/vmware-archive/kubeless/blob/master/README.md. [Accessed 30 October 2022].
[12] OpenFaaS 官方 GitHub, OpenFaaS, [Online]. Available: https://github.com/openfaas/faas. [Accessed 11 November 2022].
[13] Nuclio 官方網站, "Nuclio," Iguazio, [Online]. Available: https://nuclio.io/. [Accessed 20 November 2022].
[14] "Knative Project," CNCF 組織, 02 March 2022. [Online]. Available: https://www.cncf.io/projects/knative/. [Accessed 10 January 2023].
[15] OpenFaaS 官方網站, "OpenFaaS Pricing," OpenFaaS, [Online]. Available: https://www.openfaas.com/pricing/. [Accessed 20 December 2022].
[16] Nuclio 官方網站, "Introduction," Iguazio, [Online]. Available: https://nuclio.io/docs/latest/introduction/. [Accessed 25 December 2022].
[17] Nuclio 官方網站, "Architecture," Iguazio, [Online]. Available: https://nuclio.io/docs/latest/concepts/architecture/. [Accessed 25 December 2022].
[18] Fission 官方網站, "Features," Fission, [Online]. Available: https://fission.io/. [Accessed 28 December 2022].
[19] Fission 官方網站, "Fission Concepts," Fission, [Online]. Available: https://fission.io/docs/concepts/. [Accessed 31 December 2022].
[20] S. K. Mohanty, Evaluation of Serverless Computing Frameworks Based on Kubernetes, Master thesis, 2018, p. 45.