雲原生技術在效率上的巨大優勢,使其日益成為IT發展的主流趨勢。根據Gartner的預測,到2025年,雲原生平台将成為95%以上的新數字化計劃的基礎。
圍繞雲原生中的各個方面,都有這非常出色的開源工具,涵蓋容器排程、可觀察性、持久性存儲、容器運作時和其他領域。我們需要的就是發現優秀的工具,并在工作中合理的運用,讓雲原生之旅更加便捷高效。
本文為系列的第四篇,繼續為大家推薦雲原生各方面的優秀開源工具。
混沌工程
首先什麼是混沌工程,混沌工程(Chaos Engineering)是通過主動向系統中引入軟體或 硬體的異常狀态(擾動),制造故障場景并根據系統在各種壓力下的 行為表現确定優化政策的一種系統穩定性保障手段。最早大力提出混沌工程概念的就是netflix,拜 Netflix 所賜,現在大部分的混沌工程項目都叫做 Monkey,也就是一隻讨厭的猴子,在你的系統裡面上蹦下竄,不停搗亂,直到搞挂你的系統。
Chaos Mesh
Chaos Mesh自己的定義是“A Powerful Chaos Engineering Platform for Kubernetes”
可以看出,設計的出發點就是圍繞着k8s來建構混沌工程。
使用 Chaos Mesh,您可以友善地模拟開發、測試和生産環境中現實中可能出現的各種異常,發現系統中的潛在問題。 為了降低混沌工程項目的門檻,混沌網格為您提供了可視化操作。 您可以在 Web UI 上輕松設計混沌場景并監控混沌實驗的狀态。
目前Chaos Mesh是使用最廣的一個開源混沌工程項目,如果感興趣,可以去深入學習一下。
網站:https://chaos-mesh.org/
項目:https://github.com/chaos-mesh/chaos-mesh
ChaosBlade
ChaosBlade是一個雲原生混沌工程平台,支援多種環境、叢集和語言。
包含混沌工程實驗工具 chaosblade 和混沌工程平台 chaosblade-box,旨在通過混沌工程幫助企業解決雲原生過程中高可用問題。chaosblade 是有阿裡巴巴開源的項目,是以從内容、文檔等各個方面對中國的使用者都是非常友好的。
網站:https://chaosblade.io/
項目:https://github.com/chaosblade-io/chaosblade
Key Management
SPIFFE
SPIFFE,即每個人的安全生産身份架構(Secure Production Identity Framework for Everyone),是一套開源标準,用于在動态和異構環境中安全地進行身份識别。采用 SPIFFE 的系統無論在哪裡運作,都可以輕松可靠地互相認證。
SPIFFE 開源規範的核心是——通過簡單 API 定義了一個短期的加密身份檔案 SVID。然後,工作負載進行認證時可以使用該身份檔案,例如建立 TLS 連接配接或簽署和驗證 JWT 令牌等。
SPIFFE 已經在雲原生應用中得到了大量的應用,尤其是在 Istio 和 Envoy 中。下面将向你介紹 SPIFFE 的一些基本概念。
網站:https://spiffe.io/
項目:https://github.com/spiffe
Athenz
其他可以推薦的項目是Athenz ,Athenz 用于動态基礎設施中基于 X.509 證書的服務身份驗證和細粒度通路控制的開源平台
網站:https://www.athenz.io/
項目:https://github.com/AthenZ/athenz
邊緣計算
邊緣計算是最近幾年非常熱門的一個領域,雲原生在邊緣計算領域也有着很多非常優秀的項目,這裡我們選擇兩個最具代表性的進行推薦。
KubeEdge
KubeEdge 是一個開源系統,用于将原生容器化應用編排功能擴充到 Edge 的主機。 它建立在 kubernetes 之上,為雲和邊緣之間的網絡、應用程式部署和中繼資料同步提供基本的基礎架構支援。 KubeEdge 在 Apache 2.0 下獲得許可。 并且絕對免費供個人或商業使用。
KubeEdge 的目标是打造一個支援邊緣計算的開放平台,将原生容器化應用程式編排能力擴充到邊緣主機,它基于 kubernetes 建構,為雲和邊緣之間的網絡、應用程式部署和中繼資料同步提供基礎基礎設施支援。
KubeEdge 是華為貢獻給CNCF的開源項目,從網站的貢獻者清單我們可以看出,中國企業占據了大部分。
網站:https://kubeedge.io/en/
項目:https://github.com/kubeedge/kubeedge
OpenYurt
OpenYurt 同樣是有阿裡巴巴開源的雲原生項目,可以看出近些年,在開源領域阿裡确實做出了非常多的貢獻。
OpenYurt是基于原生Kubernetes建構的,目标是對其進行擴充以無縫支援邊緣計算。簡而言之,OpenYurt使使用者能夠管理在邊緣基礎架構中運作的應用程式,就像它們在雲基礎架構中運作一樣。官方網站是https://openyurt.io。OpenYurt是阿裡巴巴的第一個開源,雲原生邊緣計算項目,彙集了阿裡巴巴集團衆多邊緣計算團隊的深厚技術積累,并探讨了對邊緣計算雲原生實施的需求。自2018年以來,OpenYurt已成為ACK @ Edge的核心架構,并已應用于内容傳遞網絡(CDN),ApsaraVideo Live,IoT平台,物流,工業頭腦和城市頭腦。
網站: https://openyurt.io/
項目:https://github.com/openyurtio/openyurt
安全和合規性
在安全和合規性方面,開源項目推薦HummerRisk。HummerRisk 是一款開源的雲原生安全平台,以非侵入的方式解決雲原生的安全和治理問題。核心能力包括混合雲的安全治理和K8S容器雲安全檢測。
首先可以快速實作跨雲的持續合規性檢測,因為是國内開源,對國内的雲支援度非常好。另外就是可以對雲原生資源進行安全檢測,比如鏡像、容器、K8s以及源代碼等。同時項目保持了高度的靈活性,針對規則和檢測都可以快速的實作自定義,以及産品擴充。
網站:https://www.hummercloud.com/
項目位址:https://github.com/HummerRisk/HummerRisk
雲原生展望
到 2023 年,大多數應用程式将是雲原生的。 雲原生世界将持續發展,開源是支援我們的微服務、容器化和 DevOps 新時代的基礎。盡管從技術上講,您可以使用這些開源項目通過開發和營運自行托管,但組織很可能會采用開源、閉源和SaaS産品的組合來完成工作。 無論如何,很高興知道可以免費使用什麼。