Chaosblade 常見場景演練

Mike_Jia發表於2024-10-09

1 CPU 滿負載注入

例如:執行測試,對3個cpu做壓力測試,分別對1,2,0做壓力,cpu壓力da

./blade create cpu fullload --cpu-count 3 --cpu-list 1,2,0 --cpu-percent 90

top 檢視cpu狀態

./blade create cpu fullload --cpu-count 1 --cpu-list 0 --cpu-percent 90

銷燬:

./blade destroy 04387569ffd9e877

2 磁碟填充20G的檔案

./blade create disk fill --size 20480

df -h 檢視磁碟狀態

3 磁碟IO高

./blade create disk burn --write --read --size 10 --timeout 300

4 網路禁止埠

blade create network drop --local-port 80 --remote-port 80

5 網路掉包50s

網路掉包50%

blade create network loss --interface eth0 --percent 50 --local-port 6483 --remote-port 6483

6 網路延遲

對網路卡eth0,延時3

blade create network delay --interface eth0 --time 3000 --local-port 6483 --remote-port 6483

7 DUBBO 服務延遲

./blade create dubbo delay --time 3000 --service com.alibaba.demo.HelloService --methodname hello --consumer --process dubbo-consumer

Test: curl -o /dev/null -w "Server Response Time: %{time_starttransfer}\n" http://ip:8080/hello?msg=world

http://ip:8080/hello?msg=world 訪問該頁面延遲3s

8 JAVA程式 丟擲異常

啟動java程式 java TestPrinter

./blade create jvm throwCustomException --process TestPrinter --classname TestPrinter --methodname test --exception java.lang.Exception

9 JAVA 程式 修改方法的返回值

啟動java程式 java TestPrinter

./blade create jvm return --process TestPrinter --classname TestPrinter --methodname test --value 123456...

10指令碼執行延遲

blade create script delay --time 10000 --file test.sh --function-name start0

11指令碼執行退出

./blade create script exit --exit-code 1 --exit-message this-is-error-message --file /test/test.sh --function-name start0

12 檢視建立故障記錄

./blade status --type create

13 檢視銷燬記錄

./blade status --type destroy

相關文章