混沌工程 ChaosMeta 的全新版本 V0.7.0 現已正式發布!該版本包含了許多新特性和增強功能,在編排界面提供了多集群管理,在代碼層面支持多命令下發通道的選擇。另外由螞蟻集團發起的ChaosMeta于北京時間2024年1月10日正式進入CNCF混沌工程全景圖。
ChaosMeta進入CNCF混沌工程全景圖
北京時間2024年1月10日,ChaosMeta正式進入CNCF混沌工程全景圖,在混沌工程領域占有一席之地。ChaosMeta會在混沌工程、云原生、AI等領域不斷精進,持續構建穩定性平臺生態圈。
新版本特性
▌多集群管理
簡介:ChaosMeta支持多集群管理,ChaosMeta不僅支持阿里云ACK,也同時支持其他云廠商或者自建的K8S集群,提供強大的可擴展性。
原理:為了更好的在中樞集群中管理多個k8s集群,在不使用開源聯邦特性的情況下,基于Kubeconfig實現了一套K8S多集群管理的方案。
注意:控制面chaosmeta-platform只部署一個集群即可,chaosmeta-inject、chaosmeta-daemon、chaosmeta-flow等所有運行面組件都需要在各個集群部署一套。
▌頁面配置
1.多集群配置:在配置頁面導入集群,配置Kubeconfig文件。
2.攻擊集群選定:在填寫攻擊參數時選擇攻擊集群,可選擇的攻擊集群就是步驟一所配置的有權限的K8S集群。
▌多命令下發通路
簡介:大型IT公司通常會對命令下發通道有著嚴格的限制,正因如此我們不僅提供ChaosMeta自建的命令下發通道(Daemonset),也支持接入其他已經存在的命令下發通道。
原理:實現下面的Middleware就可以接入已存在的命令下發通道。(ExecCmdTask、QueryTaskStatus)
▌代碼適配
type Middleware interface {// 腳本執行: host: 集群ip, cmd:下發的shell指令, userKey: 用戶id, sync: 同步或者異步ExecCmdTask(ctx context.Context, host string, cmd string) common.TaskResult// 任務狀態查詢:taskId 任務id, userKey: 用戶idQueryTaskStatus(ctx context.Context, taskId string, userKey string) common.TaskResult
}
新版本修復
1. 修復cron表達式定期執行失效的問題。
2. 修復定時任務的時區顯示問題。
未來方向
接下來我們會繼續完善各方面的能力
- 支持大模型領域相關能力的建設,比如訓練任務延遲、推理結果編碼篡改等。
- 支持安全領域相關能力的建設,比如數據庫勒索、服務權限篡改、SYN洪水等。
- 支持PaaS、中間件領域相關能力的建設,比如請求apiserver超時、監控系統指標異常等。
加入我們
作為一個開放的項目,我們認可開源的研發模式,并致力于將 ChaosMeta 社區打造成一個開放和有創造力的社區。后續,所有的研發、討論等相關工都會在社區透明運行。
我們歡迎任何形式的參與,包括且不限于提問、代碼貢獻、技術討論、需求建議等。期待收到社區想法和反饋,以推動項目往前進一步發展。
如果對我們的項目或者設計理念感興趣,請 star 我們的項目給予支持。
項目 GitHub 地址:
https://github.com/traas-stack/chaosmeta
官方文檔:
https://chaosmeta.gitbook.io/chaosmeta-cn
微信群:請添加負責人邀請入1群,或者掃碼入2群
釘釘群:21765030887
公眾號:ChaosMeta混沌工程