Chaosblade:云原生架構(gòu)下的混沌工程實(shí)踐_第1頁
Chaosblade:云原生架構(gòu)下的混沌工程實(shí)踐_第2頁
Chaosblade:云原生架構(gòu)下的混沌工程實(shí)踐_第3頁
Chaosblade:云原生架構(gòu)下的混沌工程實(shí)踐_第4頁
Chaosblade:云原生架構(gòu)下的混沌工程實(shí)踐_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

自我介紹ChaosBlade:

云原生架構(gòu)下的混沌工程探索與實(shí)踐肖長軍阿里巴巴技術(shù)專家自我介紹肖長軍,花名穹谷,阿里巴巴高可用架構(gòu)團(tuán)隊多年應(yīng)用性能監(jiān)控研發(fā)和分布式系統(tǒng)高可用架構(gòu)經(jīng)驗(yàn)阿里云AHAS、APDS

產(chǎn)品核心開發(fā)開源項目ChaosBlade

負(fù)責(zé)人混沌工程布道師自我介紹目錄混沌實(shí)驗(yàn)工具

ChaosBlade面向云原生的混沌工程實(shí)踐混沌實(shí)驗(yàn)平臺

AHAS

Chaos自我介紹阿里巴巴混沌工程演進(jìn)2012EOS ????2012???? ????2018ACP2016MonkeyKing ????2015?!?!?! ????20192018??? $+$62019???

??????自我介紹ChaosBlade

開源的背景上手難度大難于控制爆炸半徑使用方式不統(tǒng)一平臺適配難度大缺少實(shí)驗(yàn)?zāi)P蛨鼍半y于沉淀缺少場景規(guī)范很難擴(kuò)展場景能力分散自我介紹ChaosBlade

的定位與特點(diǎn)ChaosBlade(混沌之刃)是一款遵循混沌實(shí)驗(yàn)?zāi)P?,簡單易用,功能?qiáng)大的混沌實(shí)驗(yàn)工具Github地址:/chaosblade-io/chaosblade場景豐富度高使用簡潔,易于理解動態(tài)加載,無侵入場景擴(kuò)展方便自我介紹ChaosBlade

的基石-混沌實(shí)驗(yàn)?zāi)P蛯?shí)驗(yàn)靶點(diǎn):實(shí)驗(yàn)的組件實(shí)驗(yàn)范圍:集群、機(jī)器、Pod規(guī)則匹配器:匹配條件實(shí)驗(yàn)行為:具體執(zhí)行的實(shí)驗(yàn)規(guī)則TargetScopeMatcherAction簡潔,層次清晰通俗易懂四層,邊界清晰通用,覆蓋目前所有故障場景基礎(chǔ)資源、應(yīng)用、容器或

serverless

架構(gòu)易實(shí)現(xiàn),實(shí)驗(yàn)場景共建簡單定義清晰的接口規(guī)范語言、領(lǐng)域無關(guān)可以擴(kuò)展多語言、多領(lǐng)域?qū)崿F(xiàn)自我介紹ChaosBlade

豐富的實(shí)驗(yàn)場景基礎(chǔ)資源應(yīng)用服務(wù)容器服務(wù)云平臺chaosblade-exec-oschaosblade-exec-jvmchaosblade-exec-cpluschaosblade-exec-nodejschaosblade-exec-golangchaosblade-exec-dockerchaosblade-exec-k8schaosblade-exec-aliyunchaosblade-exec-awskubernetes…ECSOSSFC…rocketmq/notifydubbo/hsf/httpService

Mesh網(wǎng)關(guān)監(jiān)控度量分布式跟蹤分布式事務(wù)消息RPC

框架服務(wù)發(fā)現(xiàn)緩存熔斷限流定時任務(wù)web容器數(shù)據(jù)庫語言本身druid/tddl/mysql/postgresqlnacostair/redissentinelquartzservletdubbo/hsfscgatewayprometheuseagleeyeseataCPU

負(fù)載、內(nèi)存占用、網(wǎng)絡(luò)延遲/丟包/阻塞、殺進(jìn)程、宕機(jī)、重啟、磁盤填充、IO

Hang、IO

burn、shell腳本調(diào)用延遲、異常、超時打標(biāo)識別投遞延遲、異常、超時、重發(fā)調(diào)用延遲、異常、超時調(diào)用延遲、異常、超時、修改返回值限流失效、異常請求延遲、異常連接池滿、調(diào)用延遲、異常動態(tài)腳本能力(java&groovy),內(nèi)存溢出,進(jìn)程

CPU負(fù)載,指定類和方法做延遲、異常、修改返回值、修改參數(shù)同基礎(chǔ)資源場景、刪、停容器殺

POD、停止

POD、kubelet

異常、斷網(wǎng)、刪容器、容器服務(wù)異常、etcd異常等;容器內(nèi)應(yīng)用進(jìn)程、基礎(chǔ)資源場景自我介紹ChaosBlade

簡潔易用完善的命令提示CLI

方式執(zhí)行 Web

方式執(zhí)行自我介紹ChaosBlade

整體架構(gòu)設(shè)計開箱即用,無需安裝支持命令提示所有變量參數(shù)化所有參數(shù)規(guī)范化模塊化,支持動態(tài)擴(kuò)展對象化,方便管理基礎(chǔ)資源演練執(zhí)行器…K8s演練執(zhí)行器命令初始化Yaml解析器模型實(shí)現(xiàn)解析器CLI

命令轉(zhuǎn)換器命令注冊(Cobra)實(shí)驗(yàn)?zāi)P蛯ο驨ameDescNoArgsRequeiredNameShortDescLongDescExampleActionsFlagsPreExecutorNameShortDescLongDescExampleMatchersFlagsExecutor解析JavaYamlJava執(zhí)行器C++YamlC++執(zhí)行器……自我介紹ChaosBlade

實(shí)踐案例bladecreatemysql

delay--time

600--database

demo--table

d_discount--sqltype

select--effect-percent

50實(shí)驗(yàn)場景:數(shù)據(jù)庫調(diào)用延遲監(jiān)控指標(biāo):慢

SQL

數(shù),告警信息期望假設(shè):慢

SQL

數(shù)增加,釘釘群收到慢SQL

告警混沌實(shí)驗(yàn):對

demo-provider

注入調(diào)用

mk-demo數(shù)據(jù)庫延遲故障監(jiān)控指標(biāo):慢

SQL

數(shù)增加,釘釘群收到告警問題排查:通過

ARMS

慢調(diào)用鏈路排查備注:應(yīng)用架構(gòu)拓?fù)鋱D來自于阿里云

AHAS

產(chǎn)品告警和鏈路跟蹤來自于阿里云

ARMS

產(chǎn)品自我介紹ChaosBlade

實(shí)踐案例實(shí)驗(yàn)場景:數(shù)據(jù)庫調(diào)用延遲監(jiān)控指標(biāo):慢

SQL

數(shù),告警信息期望假設(shè):慢

SQL

數(shù)增加,釘釘群收到慢SQL

告警混沌實(shí)驗(yàn):對

demo-provider

注入調(diào)用

mk-demo數(shù)據(jù)庫延遲故障監(jiān)控指標(biāo):慢

SQL

數(shù)增加,釘釘群收到告警問題排查:通過

ARMS

慢調(diào)用鏈路排查備注:應(yīng)用架構(gòu)拓?fù)鋱D來自于阿里云

AHAS

產(chǎn)品告警和鏈路跟蹤來自于阿里云

ARMS

產(chǎn)品自我介紹混沌工程的價值流程人員驗(yàn)證系統(tǒng)的高可用性-架構(gòu)師提升故障的應(yīng)急效率-開發(fā)&運(yùn)維提早暴露線上問題,降低故障復(fù)發(fā)率-測試提升用戶體驗(yàn)-產(chǎn)品&設(shè)計系統(tǒng)韌性-提升系統(tǒng)容錯、容災(zāi)能力基礎(chǔ)能力-具備可監(jiān)控、可灰度、可回滾運(yùn)維高可用-提升監(jiān)控運(yùn)維系統(tǒng)的高可用能力故障應(yīng)急-故障等級劃分的合理性,聯(lián)系人的有效性,緊急預(yù)案的可行性故障復(fù)盤,故障統(tǒng)計,問題持續(xù)演練驗(yàn)證-故障管理自我介紹云原生時代下,混沌工程的價值是什么?自我介紹云原生架構(gòu)下的穩(wěn)定性挑戰(zhàn)云設(shè)施微服務(wù)容器服務(wù)網(wǎng)格Serverless自我介紹云原生時代下,通過混沌工程推進(jìn)“云原生”化自我介紹面向云原生場景的ChaosBlade

實(shí)現(xiàn)方案ChaosBlade

CRChaosBladeOperatorPodContainerChaosBladeVolumeChaosBladePodChaosBladeNodeapiVersion:chaosblade.io/v1kind:

ChaosBlademetadata:name:

cpu-loadspec:experiments:-scope:

nodetarget:cpuaction:

loaddesc:“cpu50%

load”flags:-name:

cpu-percentvalue:

“50”applyscope:

nodescope:

containerscope:

podmountsidecar聲明式實(shí)驗(yàn)場景配置自我介紹面向云原生架構(gòu)的ChaosBlade

實(shí)踐案例實(shí)驗(yàn)場景:隨機(jī)刪除業(yè)務(wù)

Pod,驗(yàn)證業(yè)務(wù)的穩(wěn)定性監(jiān)控指標(biāo):業(yè)務(wù)指標(biāo)和

Pod數(shù)期望假設(shè):業(yè)務(wù)不受影響,Pod

副本數(shù)在預(yù)期之內(nèi)混沌實(shí)驗(yàn):隨機(jī)刪除包含system=demo

標(biāo)簽的Pod,同類

Pod

刪除數(shù)量為1驗(yàn)證結(jié)果:業(yè)務(wù)受影響,不符合預(yù)期apiVersion:chaosblade.io/v1kind:

ChaosBlademetadata:name:random-delete-podsspec:experiments:

scope:podtarget:podaction:

deletedesc:“deletebusinesspods

randomly”flags:

name:modevalue:

randomname:

countvalue:

“1”Matchers:name:

selectorvalue:

“system=demo”

name:

groupKeyvalue:

“app”自我介紹混沌實(shí)驗(yàn)平臺AHAS

Chaos自我介紹AHAS

Chaos

平臺設(shè)計理念集成&被集成操作簡潔編排靈活專家經(jīng)驗(yàn)自我介紹AHAS

Chaos

平臺架構(gòu)設(shè)計上層業(yè)務(wù)平臺模塊流程引擎底層能力基礎(chǔ)設(shè)施日常演練突襲演練攻防演練資損演練上云演練…權(quán)限管理機(jī)器集群管理應(yīng)用管理標(biāo)簽管理演練空間演練管理演練運(yùn)行演練通知演練推薦演練計劃場景分類場景檢索場景擴(kuò)展場景配置演練報表流程編排流程執(zhí)行節(jié)點(diǎn)擴(kuò)展小程序Cha

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論