Skip to content

Releases: traas-stack/chaosmeta

v0.7.0

24 May 07:23
7080567
Compare
Choose a tag to compare

Feature:

  • Multi k8s cluster management capability, requiring only one set of management surfaces to manage multiple clusters;
  • Middleware install way extension: Some environments do not allow daemonset and chaosmetad can be installed through middleware way, supporting developers to expand;
  • Automatic selection of install channels: daemonset, middleware, and agent. The three install channels do not require configuration and can be automatically selected.

BugFix:

  • The periodic execution of cron expression does not meet expectations #148
  • Update time of Execution once by setting time, task will not execute. #147
  • Time zone problem about execution once by setting time #146

v0.6.1

08 Jan 12:02
87f3854
Compare
Choose a tag to compare

Feature:

  • Automatically update the caBundle of the webhook in the operator #125
  • Optimize the deployment method, support scriptless method, and support helm deployment method #125 #126
  • The platform layer implements container granular target screening capabilities #122
  • Expose the configuration of the traffic injection executor #145

BugFix:

  • Fix jvm injection failure problem #127
  • Fixed the issue of disk IO fault injection execution exception #114
  • Fix the problem that the container memory filling will be automatically GCed in 3 minutes. #108
  • Front-end image package size optimization

v0.6.0

30 Oct 02:01
88ff305
Compare
Choose a tag to compare

In this release, support fault capabilities such as DNS fault and log injection, and the visual orchestration interface provides support for various nodes such as traffic injection and measurement, providing support capabilities for automated chaos engineering

Enhancements

  • User interface orchestration interface supports measure engine nodes and traffic injection nodes #62
  • Supports offline deployment solutions and provides tools to import internal image registry with one click #106
  • In the experiment results interface, the orchestration node is supported to display detailed error log information #75
  • File content appending supports loop persistence mode (log injection) #93
  • The CR of the measurement engine supports recording the time point when the condition is met for the first time #86
  • Support injection capabilities related to DNS anomalies: DNS record injection, DNS server address injection #85
  • Implement a memory injection method that does not rely on container directories at all #71 #94

Bug Fixes

  • Fixed user interface failure to support memory injection in absolute value mode #84
  • Fixed the problem that the fault injection capabilities of modules such as file, process, and mem depended on the container/bin/bash command #71
  • Fixed the calculation method of container memory usage based on the /proc directory and changed it to based on the host's /sys/fs/cgroup directory #94

v0.5.2

28 Sep 03:29
176c231
Compare
Choose a tag to compare

This release mainly supports JVM fault injection in the container and the front-end switching between Chinese and English, and fixes many bugs

Enhancements

  • Support jvm inject in container java process in chaosmetad. #78
  • The frontend supports Chinese-English switching. #77 #60

Bug Fixes

  • Fix the experimental arrangement serial and parallel execution, and the fault of each row is executed sequentially #70
  • Fixed the issue where JVM fault injection cannot be performed on processes within the container #78
  • Fix experimental attack scope: label configuration #69
  • Fix some experimental configuration parameters #76
  • Fix the problem of not supporting bool type parameters #73
  • Fix some display bugs on the frontend #68

v0.5.1

15 Sep 09:21
965f2c3
Compare
Choose a tag to compare

This patch mainly enables chaosmetad to support the containerd container runtime, and enables ChaosMeta to operate in the k8s cluster of the containerd container runtime

Enhancements

  • Chaosmetad support "containerd" container runtime. #59
  • ChaosMeta as a whole can operate in the k8s cluster in the containerd runtime.

Bug Fixes

  • Fix when deploying multiple operator components, webhook certificate verification fails. #74

v0.5.0

31 Aug 03:27
04beb73
Compare
Choose a tag to compare

This version mainly released platform interface components (chaosmeta-platform), measurement components (chaosmeta-measure-operator) and flow injection components (chaosmeta-flow-operator).

For additional information, please refer to the changelog provided below.

Features

The following new features are supported:

Features of the platform interface

  • Space management: Isolate data according to organization or activity to ensure data security and privacy.
  • User rights management: Provide access rights control for different roles, which can effectively manage the use of chaos engineering experiments.
  • Arranging experiments: Through drag-and-drop visual operations, the experiment arrangement is more friendly and flexible, and the work efficiency of users is improved. The current version of the interface only supports fault injection type nodes.
  • Experimental results: Provide the traceability function of the experimental execution details, allowing users to know the execution status and results of the experiment at any time, which is convenient for users to conduct data analysis and decision-making.

Features of the measurement component

Currently includes 4 measurement capabilities:

  • monitor: It is expected to judge the value of the monitoring item, such as whether the cpu usage monitoring value of a certain machine is greater than 90%, and prometheus is supported by default
  • pod: predictive judgment on pod-related data, such as whether the number of pod instances of an application is greater than 3
  • http: It is expected to judge the http request, for example, when the specified http request is made, whether the returned status code is 200
  • tcp: To judge the expectations of tcp requests, such as testing whether port 8080 of a server can communicate

Features of the flow injection component

  • HTTP: Inject HTTP request traffic

Bug Fixes

  • Fix recovery processing logic when there is no attack target. #33

Others

v0.1.1

02 Jun 10:24
48dfacf
Compare
Choose a tag to compare

This patch release has some fixes for JVM experiment, remote injection. Added support for domestic docker image registry

Major Bug Fixes

  • Fix the ClASSPATH dependency problem of JVM experiment #22
  • Fix the underscore self-adaptation problem of multi-word args in Remote Injection

Enhancements

  • Support domestic mirror registry #21
  • Support local deploy shell #30

v0.1.0

25 May 03:48
83eb299
Compare
Choose a tag to compare

This is the first version of ChaosMeta officially released, which provides a stand-alone fault injection toolkit and the ability to remotely inject any Pod/Node in Kubernetes

Features

Support the following chaos experiment:

Stand-alone fault injection capabilities

The following stand-alone fault injection capabilities support remote injection of any Pod/Node in the Kubernetes cluster

  • CPU: CPU usage soars, CPU average load soars
  • Memory: memory usage soars, OOM
  • Disk: disk usage soars
  • Disk IO: disk IO soars, disk IO hang, disk IO speed limit
  • Network: service port preemption, network card bandwidth (network speed) limitation, network delay, network packet loss, network packet corrupt, network packet duplication, network packet reorder
  • Process: kill process, stop process
  • Kernel: the file descriptor FD soars, fill up the number of NProc processes
  • Files: permission tampering, deleting files, appending file content (log injection), adding files, moving files
  • Java Runtime: method call delay, method return value tampering, method throwing exception
  • Container: kill container, suspend container, restart container, delete container

Cloud native fault injection capability

  • Pod: delete pod, tamper with pod label, inject finalizer into pod, delete container, stop container, replace container image
  • Deployment: delete the Deployment, tamper with the Deployment label, inject the Deployment into the Finalizer, and expand and shrink the Deployment replicas
  • Node: tampering with Node labels, tampering with Node taints
  • Cluster: batch injection of Pending Pod, batch injection of Completed Job