Guest post by LitmusChaos’ maintainers
After an amazing KubeCon North America 2022 in Detroit, MI, the LitmusChaos community has a lot to share and is back with another edition of monthly updates from the LitmusChaos community. With the growth of the Chaos Engineering community as well as the LitmusChaos community, we appreciate this massive participation and immense engagement and strive for the community to prosper and contribute back to its development.
This article is written to share monthly updates with the community from October 2022 to update the community on the latest happenings and updates around the LitmusChaos project.
LitmusChaos is a dynamic open source chaos engineering platform that enables teams to identify weaknesses and potential outages in infrastructures by inducing chaos engineering tests/experiments in a controlled manner. LitmusChaos is driven by the principles of Cloud-Native innovation and gave rise to the principles of Cloud-Native Chaos Engineering. Chaos engineering verifies the resilience of business services and helps DevOps pipelines proactively build code that is more resilient against software and infrastructure faults.
The LitmusChaos project was started in late 2017 to provide simple chaos jobs in Kubernetes. It became a CNCF sandbox project in 2020 and was promoted as a CNCF incubating project in January 2022. Today, it has maintainers from 5 different organizations across cloud-native vendors, solution providers, and end-users.
The project is used in production by more than 30 organizations, including large end-users like Adidas, FIS, iFood, Cyren, Intuit, Lenskart, Orange, and more as well as technology organizations like Red Hat and VMware.
LitmusChaos Releases 2.14.0
LitmusChaos version 2.13.0 was released on the 15th of October with some great new updates to the core components, the chaos center, and the Litmusctl.
Release Notes (2.14.0)
Core Component Updates –
- Adds the containerd CRI support to the DNS experiments litmuschaos/litmus-go#577
- Adds support for execution of http-chaos experiments in service-mesh environments litmuschaos/litmus-go#578
- Enhances the network experiments to support port specification in source and destination FQDN/IPs for faults injection litmuschaos/litmus-go#570
- Adds an option to provide the custom labels to the chaos-runner pod. It can be defined at spec.components.runner.labels inside the chaosengine litmuschaos/chaos-operator#427
- Enhances the cmdprobe-source pods to inherit the experiment pod spec attributes. It allows the source pod to inherit the ENVs, volumes, and volumeMounts litmuschaos/chaos-operator#421
- Enhances the probe status schema representation inside the chaos-result to add the probe verdict, description, and mode litmuschaos/chaos-operator#419 litmuschaos/litmus-go#566
- Upgraded the operator-sdk version from 0.15.2 to 1.19.0 to remove the indirect unlicensed dependencies litmuschaos/chaos-operator#420
- Enhance the HTTP probe to use the global probe timeout as response timeout. litmuschaos/chaos-operator#422
- Adds the probe retry as an optional parameter inside the probe to support 0 retries(single iteration) and rename the defaultAppHealthCheck to defaultHealthCheck litmuschaos/chaos-operator#424
- Refactored the chaos-operator for better logging and event creation litmuschaos/chaos-operator#428
- Fixes chaosresult update conflict issue in abort scenarios litmuschaos/litmus-go#567
- Fixes the probeSuccessPercentage evaluation inconsistency for the probe failures litmuschaos/litmus-go#568
- Fixes the stress experiments to clean all the stress-ng child processes during abort litmuschaos/litmus-go#569
- Adds the steady state checks as tunables based on appHealthChecks parameter inside the chaosengine and removed the AUT status checks from the node and infra experiments litmuschaos/litmus-go#576
ChaosCenter Updates –
- Enhances MyHub to clone a single branch with one depth #3776 #3792
- Updates the httpProbe UI screens to remove responseTimeout parameters from the httpProbes/inputs and uses the global timeout #3796
- Adds the probe retry parameter to an optional field #3797
Thanks to our existing and new contributors for this release
@asashiskumarnaik @chinmaym07 @SaptarshiSarkar12 @amityt @avaakash @imrajdas @ispeakc0de @Jonsy13 @neelanjan00 @uditgaurav
Litmus-2.14.0 (Stable) cluster scope manifest
kubectl apply -f https://raw.githubusercontent.com/litmuschaos/litmus/2.14.0/mkdocs/docs/2.14.0/litmus-2.14.0.yaml
Litmus-2.14.0 (Stable) namespace scope manifest.
#Create a namespace eg: litmus
kubectl create ns litmus
#Install CRDs, if SELF_AGENT env is set to TRUE
kubectl apply -f https://raw.githubusercontent.com/litmuschaos/litmus/master/mkdocs/docs/2.14.0/litmus-portal-crds-2.14.0.yml
kubectl apply -f https://raw.githubusercontent.com/litmuschaos/litmus/master/mkdocs/docs/2.14.0/litmus-namespaced-2.14.0.yaml -n litmus
Upgrading from 2.13.0 to 2.14.0
kubectl apply -f https://raw.githubusercontent.com/litmuschaos/litmus/2.14.0/mkdocs/docs/2.14.0/upgrade-agent.yaml
Latest from the LitmusChaos Community
As the community continues to grow, so does the content. Over the month the community members have created some amazing and exciting content to uplift the presence of LitmusChaos on the Cloud Native map. Check out all the latest content curated by the community for the community:
The major announcement from October waas around LitmusChaos 3.0 Beta. LitmusChaos maintainers have announced the plan for development of the next major release – Litmus 3.0. The project team is now encouraging reviews, contributions and feedback around this Beta release. The Litmus 3.0 will have a new UI console that is completely renewed and improved UX for creating new experiments more intuitively.
Read more here:
Here are our monthly updates from September 2022, Check out the LitmusChaos September update blog:
Chaos Engineering Meetup:
After not having a Chaos Engineering Meetup in October due to KubeCon NA, the LitmusChaos Community is excited to host an in-person Chaos Engineering meetup for the very first time post covid-19 in Bangalore at the Harness.io Bangalore office which covers a packed agenda on various usecases, running a gameday using Litmus and so much more.
If you are in Bangalore, then don’t forget to join the Chaos Engineering Meetup.
When: 26th of November,2022
Time: 9 AM IST to 1 PM IST
Indiqube Qrion, Ground Floor
24th Main Rd, Agara Village, 1st Sector, HSR Layout Bengaluru, Karnataka 560102
Check out more information on the meetup alongside the detailed agenda here: https://www.meetup.com/chaos-engineering-meetup-group/events/289083048/
The LitmusChaos Community meetings continue as a monthly cadence call to discuss the latest updates, happenings, and questions from the community. They are hosted every 3rd Wednesday of the month. Check out the latest from our last community meeting held on October 19th. The call started off with a detailed release notes run-through by LitmusChaos maintainer Shubham Chaudhary followed by a quick community roundup on the latest community updates by community leader Prithvi Raj and eventually concluded with an open floor Q&A where the community shared their user stories, and also listed down some important questions to move ahead in their journey.
Check out the recording of the meeting:
LitmusChaos-Community-Sync-up- October 2022| Open Source Chaos Engineering |
Community members launched a KubeCon NA playlist featuring two insightful videos which covered the LitmusChaos SDK & a demo on the Online Boutique Sample application which made October a month full of amazing videos which turned out to be really informative and useful to the community.
- In this video, LitmusChaos Maintainer, Shubham Chaudhary gives a deep dive into the LitmusChaos SDK covering how you can create your own experiments using LitmusChaos.
UseCase: Create a pod cpu stress experiment, which execs inside the target pod and run md5sum command
LitmusChaos SDK Demo
- The second video in the playlist by LitmusChaos Maintainer Udit Gaurav cover the following UseCase: This demo will help us to understand how we can run a load-gen on our application and perform a chaos test on it. To achieve this, the chaos scenario first launches a Forio load job on the frontend service of boutique application, then runs a cpu-chaos experiment on the same service to check the resiliency under load.
LitmusChaos Demo on Online Boutique Sample Application
- Community Member Dharmesh Vaya who is also a prominent speaker under the Google Developers Program joined the Google Cloud Next – Innovators Hive 2022 conference to cover various aspects of Chaos Engineering and talked about the LitmusChaos project and why it is one of the go-to popular chaos tools in the Open
Time for some Chaos!!
The last video in the video series includes LitmusChaos maintainer Uma Mukkara (Head of Chaos Engineering, Harness) joining Performance Engineering expert and popular podcast host Scott Moore on a quick chat at KubeCon NA around how chaos engineering is being received at KubeCon. How and when should a company begin introducing the chaos concepts into their organization? Find out in this episode:
KubeCon 2022: Litmus Chaos
In the end…
There is a lot that happened in the month of October, especially with the Chaos Day co-located event at KubeCon NA as well as the various talks and community interest at KubeCon NA this year. All of this will be featured in another blog which will be specific to the LitmusChaos experience at KubeCon NA 2022.
The LitmusChaos community continues to grow with amazing contributions (issues, suggestions, PRs) from the community and looks forward to more members joining in and contributing to the growth of the project.
Join the #litmus channel on the Kubernetes Slack to become a part of the community. Learn, Ask, and Contribute by being a part of the community.
Check out the Contributing Guide to get started with contributions
Subscribe to the LitmusChaos YouTube Channel for the latest videos.
Follow @LitmusChaos on Twitter for the latest social updates.
Check out the LitmusChaos blogs to learn more about LitmusChaos and you can write one too by using the tag #litmuschaos on DEV.to