New Features and Enhancements
- Specification of pod and container security context for the experiment resources via chaosexperiment spec
- Introduces pod scheduling policy support via NodeSelector specification on the chaosengine (instance-specific attribute)
- Ability to override experiment images from the chaosengine
- Pushes an experiment execution summary event on the chaosresult resource
- Adds the network chaos experiment to induce packet duplication
- Adds node chaos experiment to force pod evictions via taints
- Adds service chaos experiment to kill docker service on the node
- Extends the golang chaoslib support for all existing chaos experiments in the generic suite
- Validation webhook enhancements to verify if application labels specified in the chaosengine are propagated to pod templates of the applications under test (AUT)
- Additional examples to illustrate litmus chaos-workflows using nginx benchmark using apache benchmark tool with parallel pod-kills
- Migrates the ansible-based chaos experiments to the litmus-ansible repo from litmuschaos/litmus in line with the litmus-go, litmus-python repo structure
- Improves the unit-test based coverage for chaos operator by 30%
- Extends the capability trigger on-demand e2e runs for PRs via GitHub comments to chaos operator
- Adds framework to determine e2e coverage percentage based on comparison of executed tests in the pipeline versus test plan
- Introduces an e2e portal to view e2e pipeline data and coverage
- Improves the Travis-based CI pipeline of the test-tools repo to build images only if respective Dockerfile or scripts are modified instead of building all images irrespective the nature of the commit.
- Increases sources for (helm-based) litmus installation to include helm hub & jfrog chartcenter artifact repositories
- Adds betterci integration to charthub to obtain UI/UX previews for PRs
- Enhances individual experiment documentation with abort procedure & troubleshooting references
- Enhances the experiment failure and uninstall troubleshooting sections to include more conditions
- Includes steps to run chaos experiments on rancher platform
- Includes missing video links/examples for chaos experiments in the generic suite
- Updates all the litmuschaos websites (docs, charthub, project website) based on CNCF guidelines
- Enhances the release guidelines doc with an enhanced release checklist
Major Bug Fixes
- Fixes invalid Jinja template for chaos injection (helper) pod in the kubelet-service-kill experiment
- Specifies an upper limit for the memory hog experiment docs based on the current resource exhaustion approach via dd
- Adds instructions in infra (node) chaos experiments to cordon the AUT before the execution of chaos to prevent the restart of litmus pods
- Fixes a race condition in the pod-delete experiment where the verdict is flagged as fail despite successful execution
- Fixes Kafka experiment failure while trying to derive leader broker for the test topic (partition) due to missing ns and improper regex
- Fixes coredns experiment regression (caused due to introduction of helper pods logic for the pod-delete experiment) due to missing
lib_image in experiment CR
Installation
kubectl apply -f https://litmuschaos.github.io/litmus/litmus-operator-v1.6.0.yaml
Verify your installation
-
Verify if the chaos operator is running
kubectl get pods -n litmus
-
Verify if chaos CRDs are installed
kubectl get crds | grep chaos
For more details refer to the documentation at Docs