Chaos Engineering Was Missing from Harness’ CI/CD Before ChaosNative Purchase
Harness’ purchase of ChaosNative shows not only how chaos engineering integration was missing from its CI/CD platform, but also reflects Harness’ conviction that the capability is lacking in CD/CD platforms in general.
In the immediate term, Harness will change the name of ChaosNative Litmus Enterprise to Harness Chaos Engineering and it will be available as a separate module. Harness will integrate ChaosNative Litmus Enterprise “very tightly” with Harness CI/CD platform and it will be available among other CI/CD “feature flag” tools, Harish Doddala, senior director of product management for Harness, told The New Stack Harness seeks to integrate ChaosNative Litmus Enterprise with its platform in the same way it has sought to simplify its CI offering by turning Drone, which it purchased in 2020, into the Harness CI Community Edition open source project.
However, this does not mean that DevOps teams will be locked out of using what will become the Harness Chaos Engineering module if they don’t adopt Harness’ platform. It’s not ‘take it or leave it,’ as in use our platform or nothing,” Harness CMO Scott Sanchez told The New Stack. “If you do have a different CI or CD platform and you want to put this or another Harness module into it, it will definitely work.
Harness will continue to expand on ChaosNative’s capabilities, including its plans to take a leading role in the open source development of open source LitmusChaos (Harness was not previously a major contributor to the project).
In other words, Harness has high hopes for the adoption of a stand-alone enterprise version of LitmusChaos whether it is used with Harness’ or another CI/CD platform. This is because chaos engineering is severely lacking in today’s CI/CD world, especially for highly complex and distributed microservices and Kubernetes environments, Doddala said.
“LitmusChaos’ creators have long noticed how many enterprises need to do many custom experiments through chaos engineering,” Doddala said.
Emergence of Chaos Engineering
Chaos engineering has emerged as an increasingly essential process to maintain reliability for applications in cloud native environments. Unlike pre-production testing, chaos engineering involves determining when and how software might break in production by testing it in a non-production scenario.
Think of chaos engineering as an overlap between reliability testing and experimenting with code and applications across a continuous integration/continuous delivery (CI/CD) pipeline, by obtaining metrics and data about how an application might fail when certain errors are induced.
Specific to ChaosNative’s offerings that Harness has purchased, ChaosNative Litmus Enterprise has helped DevOps and site reliability engineers (SREs) to adopt chaos engineering tools that are self-managed, while the cloud service, ChaosNative Litmus Cloud, offers a hosted LitmusChaos control plane.
Indeed, chaos engineering has become increasingly critical for DevOps teams, especially those seeking to increase agility by being able to apply chaos engineering to the very beginning of the production cycle. It is also seen as a way to help remove the much-talked-about silos between developer, security and operations DevOps team members, by allowing all teams to take part in chaos engineering without slowing down the production cycle.
ChaosNative Litmus Enterprise and ChaosNative Litmus Cloud are two popular alternatives on offer, Torsten Volk, an analyst at Enterprise Management Associates (EMA), told The New Stack. “Shifting left chaos as an integral part of the CI/CD pipeline is crucial for successful digital transformation, as it instills a culture of responsibility and reliability into product teams,” Volk said. “This lowers the threshold for leveraging already existing microservices to create innovative business solutions and therefore squeezing more value out of already existing code. It thus makes the integration between chaos engineering and CI/CD pipeline automation very interesting for enterprise customers.”
LitmusChaos was born out of a need to improve resiliency and “build confidence in cloud native services in production,” Uma Mukkara, ChaosNative’s CEO and maintainer of LitmusChaos, wrote in a blog post. “What started out as an effort to provide out-of-the-box chaos experiments for Kubernetes-based microservices, eventually grew into an end-to-end framework to carry out chaos engineering on a wide variety of application and infrastructure targets, with support for multi-tenancy, SLO validation, and custom workflows, among other features,” Mukkara wrote.
LitmusChaos was created in 2017 and was approved to become a Cloud Native Computing Foundation (CNCF) incubation project from a CNCF sandbox level in January.
The open source platform supports more than 50 chaos experiments “that cover the entire range of Kubernetes resources,” Mukkara said earlier this year. These include major cloud platforms such as those Amazon Web Services, Google Cloud Platform and Azure offer, as well as applications such as Cassandra and Kafka.