chaosblade

An easy to use and powerful chaos engineering experiment toolkit.(阿里巴巴开源的一款简单易用、功能强大的混沌实验注入工具)

APACHE-2.0 License

Stars
5.8K
Committers
49

Bot releases are hidden (Show)

chaosblade - v0.3.0

Published by xcaspar about 5 years ago

This version fixes a lot of bugs, and supports HTTP request calls, see #68 for the detail.

Features/Enhancements

  • Support Restful API mode calls(#68 )
  • Support for specifying multiple ports in network experiments(#176 )
  • Add ip matcher in network experiments(#181 )
  • Specify any directory to fill disk(#169 )
  • Stop process for mac(#167 )
  • Support linux memory experiment(#161 )
  • Support cpu percent experiment(#154 )
  • Add --exception-message flag in java exception experiments(#147 )
  • Enhance disk burn experiment(#200 )
  • Add debug mode to locate problems that are not valid for the experiment(chaosblade-io/chaosblade-exec-jvm#75)
  • Add support for jvm code cache full(chaosblade-io/chaosblade-exec-jvm#68)
  • Add support for jedis experiment(chaosblade-io/chaosblade-exec-jvm#79)
  • Add support for postgrelsql experiment(chaosblade-io/chaosblade-exec-jvm#74)
  • Add --pid for java preparation(chaosblade-io/chaosblade-exec-jvm#67)
  • Add requestpath flag for servlet experiment(chaosblade-io/chaosblade-exec-jvm#63)

Bug Fixes

  • Fix unable to access sandbox-core.jar(#178 )
  • Fix fill disk failed when the size value is greater than the available disk size(#171 )
  • Fix params parse error for java experiments(#160 )
  • Fix blade create cpu fullload but destroy it without root authority(#152 )
  • Fix blade c jvm script will be repeated multiple times(#150 )
  • Fix no such file or directory returned if the chaosblade directory contains blank space(#149 )
  • Fix under certain circumstances,process of disk burn not quit after timeout(#194 )
  • Fix dubbo thread pool full exception(chaosblade-io/chaosblade-exec-jvm#86)

Others

  • Adjust the cli directory structure to facilitate third-party development(#189 )

Thanks for the contributors: @yixy @hqwhqwhq @zeuskim @auyang-0626 @liwx2000 @yangsr @bryanYao @infinite-xue

chaosblade - v0.2.0

Published by xcaspar about 5 years ago

This version provides C++ chaos experiments support. The C++ executor project address: https://github.com/chaosblade-io/chaosblade-exec-cplus . In addition to this, support for RocketMQ component and dubbo group matcher are also provided.

Features/Enhancements

  • Add support for cplus executor(#137 )
  • Add support for dubbo group (#118 )
  • Add --port args for jvm preparation(#140 )
  • Add support for stopping process experiment(#136 )
  • Add support for RocketMQ component (chaosblade-exec-jvm # 62)

Bug Fixes

  • Fix running revoke command repeatly will cause status error(#120 )
  • Fix "connect: connection refused" when prepare command is executed(#138 )

Others

Thanks for the contributors: @leonardo669 @itcai @RinaisSuper @dreamquster @jievince @Braavos96 @niaoshuai

chaosblade - v0.1.0

Published by xcaspar over 5 years ago

This version provides a lot of java chaos experiment's features, such as cpu full load in jvm, dynamic script parsing(support java and groovy script), httpclient plugin, limits of request count and request percent about chaos effected and so on.

Features/Enhancements

Bug Fixes

  • Fix "jvm return value" command do not support space or other invalid url char in value string(#97 )
  • Fix the class name method name is required for java chaos experiments(#80 )
  • Fix java.lang.NoSuchMethodException: null(#83 )
  • Fix unsupported major.minor version 52.0\n exit status 255 on (#77 )

Thanks for the contributors: @dreamquster @guohz-git @Kaushl2208 @sjha2048 @wangkechun @tangyuhan0816

chaosblade - v0.0.3

Published by xcaspar over 5 years ago

This version provides many new features, such as oom of jvm, thread pool full of dubbo, connection pool full of druid, and so on.

Features/Enhancements

  • Add jvm oom experiment contains heap, noheap and direct buffer area.chaosblade-exec-jvm #18
  • Add dubbo thread pool full experiment. chaosblade-exec-jvm #22
  • Add druid connection pool full experiment. chaosblade-exec-jvm #24
  • Add script file chaos experiment such as delay and exit fault. (#59 )
  • Add --cpu-list flag for binding cpu processor about cpu burn experiment. (#37 )
  • Update --numcpu flag name to --cpu-count. (#58 )
  • Add --pods flag for deleting multiple pods. (#51 )

Bug Fixes

  • Fix java agent loaded twice. (#62 )
  • Fix bug about --numcpu flag strong check. (#44 )
  • Fix MUSL_VERSION variable in Dockfile. (#47 )

Thanks for the contributors: @Vascal @RinaisSuper @ondrej-fabry

chaosblade - v0.0.2

Published by xcaspar over 5 years ago

This version provides some bug fixes and enhancements. A very important feature is the addition of the timeout flag to set the run time of the experiment, the flag unit is second. For example, blade create cpu fullload --timeout 30. Thanks for @mingcheng.

Features / Enhancements

  • Optimize network command flag name (#7, #33 )
  • Add timeout flag for blade cmd to set the run time of the experiment (#17 )
  • Add query command to get the necessary flag values for chaos experiments (#22 )
  • Add --numcpu flag to set cpu core count to burn (#37 )

Bug fixes

  • Fix bug of destroying disk fill experiment with illegal flag value (#19 )
  • Fix stop k8s experiment error (#38 )
  • Fix bug of executing disk fill experiment on Ubuntu os under zh_CN.utf8 locale (#40 )

Thanks for the contributors: @mingcheng, @Cenyol

chaosblade - v0.0.1

Published by xcaspar over 5 years ago

This is the first version of chaosblade.

Features

Support the following chaos experiment:

  • CPU full load
  • Network package delay
  • Network package block(drop)
  • Network package loss
  • DNS not available
  • Fill disk
  • Burn disk IO (include read and write)
  • Kill process
  • Delete pod
  • Remove container
  • Request delay, exception and timeout for Dubbo, Servlet, MySQL Driver component
  • Java method invoked delay, exception or return the specified value

Exclude delete pod and remove container,the above chaos experiment can be executed in the container.

Linux/amd64 and darwin/amd64 versions are available, but some network and disk experiments cannot be executed in darwin/amd64 version.