Releases: litmuschaos/litmus
1.1.1
1.1.0
New features and Enhancements
- Addition of OpenEBS control-plane sanity, storage pool sanity & storage pool network chaos experiments
- Introduce the Chaos Abort functionality to terminate in-flight chaos experiments at once
- Schema changes to support override of configmap & secret volumes parameters from the ChaosEngine with improved component structure
- Make annotation checks against target applications an optional feature in lieu of infra chaos experiments with higher blast radius (multi-application impact).
- Make the Go Chaos-Runner as the default runner type for experiments
- Improved CRD validation for ChaosEngine CRs based on OpenAPI v3 specification
- Improved logging for experiment lifecycle (chaos-runner) via use of klog framework
- Addition of Kubernetes events for chaos experiment lifecycle
- Enhancement to pass chaos lineage (chaos UUID) across all resources created as part of an experiment
- Strengthened e2e pipelines (generic, openebs chaos validation tests) with BDD tests using Ginkgo
- Updates experiment scaffold (developer) tool to reflect latest experiment schema
- Optimized (minimal) permissions in the chaos-operator RBAC
- Converts the chaos-charts repo into the single source truth wrt chaos manifests (includes experiment RBAC, sample ChaosEngine CR manifests along with individual chaosExperiment CRs & CSV) thereby providing an integrated bundle to aid developers
- Doc updates to embed all chaos snippets from chaos-charts via the embedmd tool
- Adds the Litmus FAQ with questions on general usage & troubleshooting steps
Major Bug Fixes
- Addition of rescue blocks in chaoslib wrappers to fail fast / avoid false positives in chaos experiments
- Fixes container-kill experiment execution on containerd runtime
- Patch chaosresult state with status “running” & verdict “awaited” during experiment execution.
- Fixes crash of exporter (monitor pod) in case of infra experiments with annotationCheck disabled.
- Refactor of experiment manifests to use standard naming conventions & file extensions
Getting Started
Prerequisites to install
- Make sure you have a healthy Kubernetes Cluster.
- Kubernetes 1.11+ is installed
Installation
kubectl apply -f https://litmuschaos.github.io/litmus/litmus-operator-v1.1.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
1.1.0-RC2
1.1.0-RC1
(feat): Adding openebs control plane pod delete experiment (#1203) Signed-off-by: Raj <[email protected]>
1.0.1
New features and Enhancements
- Adds ramp time (warm-up period before chaos is injected) support to the generic chaos experiments
- Optimises the chaosServiceAccount permissions needed for current OpenEBS experiments
- Improved negative path/error handling in container-kill experiment
- Support for containerd runtime in OpenEBS chaos experiments
- Improve OpenEBS network loss experiments to use iSCSI session recovery timeout as default loss period with data persistence verification as post-chaos checks
1.0.0
New features and Enhancements
- Introduces a new chart for CoreDNS, a graduated CNCF project with a DNS pod failure experiment.
- Enhances the infrastructure/cluster level chaos suite with node drain chaos experiment
- Enhances the pod network chaos suite with network packet corruption chaos experiment
- Enhances the resource stress chaos suite with pod/container CPU hog experiment
- Supports post chaos checks against multiple (dependent) applications via the
auxiliaryAppInfo
property in the ChaosEngine CR - Optimises the chaosServiceAccount permissions needed for each experiment at their respective scope (Namespaced, Cluster) in the
scope
&permissions
of the ChaosExperiment CR. A sample RBAC manifest is now also provided with individual experiment documentation - Adds validation of LitmusChaos CRDs via OpenAPI schema validation to help with prevention of malformed - ChaosEngine/ChaosExperiment CRs
- Upgrades the new Go ChaosRunner to beta quality
- Adds Gitlab CI for build & Chaos-Chart-e2e pipelines on LitmusChaos repositories
- Enhances the side panel on charthub (hub.litmuschaos.io) with experiment maturity, documentation link & supported Kubernetes platforms
- Includes support for usage (Google Analytics) metrics against the Chaos Experiments to capture chaos trends, indicated on respective charts in the charthub
- Indicates blast radius of a Chaos Experiment on the respective Charts in the charthub
Major Bug Fixes
- Fixes chaoslib task files to successfully cleanup chaos resources (daemonsets) in case of infra chaos experiments
- Fixes chaoslib task files to end plays/experiment upon not meeting expected conditions/results rather than notify & proceed with play.
- Move to apps/v1 for deployment/daemonset resources to support recent Kubernetes versions (1.16+)
- Fixes inability to cleanup experiment job when .spec.jobCleanupPolicy is set to delete with Go chaos runner
- Fixes reuse of facts/ playbook, included & registered variables by setting up a new naming convention to pass details from experiment logic playbooks to task files
- Update the docs with correct values for Mandatory/Optional nature of experiment environmental variables
- Fix broken/dead links on the charthub and docs
Community
- Monthly community sync-up (every 3rd Wednesday) to go over the concluded release, roadmap discussion, contributor shoutout, presentations/demos
- Group Reviews of contributors PRs on a need basis
- Improved contributor documentation for the chaos operator
Getting Started
Prerequisites to install
- Make sure you have a healthy Kubernetes Cluster.
- Kubernetes 1.11+ is installed
Installation
kubectl apply -f https://litmuschaos.github.io/pages/litmus-operator-v1.0.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
1.0.0-RC2
Getting Started
Prerequisites to install
- Make sure you have a healthy Kubernetes Cluster.
- Kubernetes 1.11+ is installed
Installation
kubectl apply -f https://litmuschaos.github.io/pages/litmus-operator-latest.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
-
Verify if the chaos experiments are installed.
kubectl get chaosexperiments
For more details refer to the documentation at Docs
1.0.0-RC1
Getting Started
Prerequisites to install
- Make sure you have a healthy Kubernetes Cluster.
- Kubernetes 1.11+ is installed
Installation
kubectl apply -f https://litmuschaos.github.io/pages/litmus-operator-latest.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
-
Verify if the chaos experiments are installed.
kubectl get chaosexperiments
For more details refer to the documentation at Docs
0.9.0
New capabilities & Enhancements
- Introduces an alpha version of a new chaos-runner written in Go, that supports increased performance, validation of experiment dependencies & improved logging, while laying the base for features such as random execution, chaos experiment abort, etc.,
- Includes support for execution of chaos on daemonsets
- Includes support for injecting config information to the chaos experiments via configmaps and secrets
- Ability to specify chaos-runner and chaos-monitor default images via environment variables in the chaos-operator deployment
- Includes support for performing a multi/group-kill of pods in the pod-failure chaos experiment
- Support network chaos (latency, packet loss) on all apps irrespective of the availability of linux traffic shaper tool “tc” with upgraded pumba (0.6.5) integration
- Improved health checks (kafka cluster state) in kafka chaos experiments via zookeeper
- Includes kafka broker network chaos (latency & packet loss) experiments
- Improved user experience on the chaoshub (hub.litmuschaos.io) with platform & experiment maturity information.
- Improved experiment-specific user guides on docs.litmuschaos.io
- Updated chaos-operator using operator-sdk version 1.12
Major Bug Fixes
- Fix chaos-runner failure to patch chaosengine with chaos experiment results
- Deprecate chaoskube support and fix chaoslib selection logic for pod-failure experiments
- Fix reuse of ansible register variables as facts in container-kill & pod-failure chaos experiments
- Fix premature exit of the chaos-runner pod before chaos experiment completion
Getting Started
Prerequisites to install
- Make sure you have a healthy Kubernetes Cluster.
- Kubernetes 1.11+ is installed
Installation
kubectl apply -f https://litmuschaos.github.io/pages/litmus-operator-v0.9.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
-
Verify if the chaos experiments are installed.
kubectl get chaosexperiments
For more details refer to the documentation at Docs
0.9.0-RC1
Getting Started
Prerequisites to install
- Make sure you have a healthy Kubernetes Cluster.
- Kubernetes 1.11+ is installed
Installation
kubectl apply -f https://litmuschaos.github.io/pages/litmus-operator-latest.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
-
Verify if the chaos experiments are installed.
kubectl get chaosexperiments
For more details refer to the documentation at Docs