DEV Community

Cover image for Creating Chaos and a Giveaway โš’ ๐ŸŽ
Ari ๐Ÿช
Ari ๐Ÿช

Posted on

Creating Chaos and a Giveaway โš’ ๐ŸŽ

Alt text of image

Introducing Chaos

"Chaos engineering is the discipline of experimenting on a software system in production in order to build confidence in the system's capability to withstand turbulent and unexpected conditions."


I think when most of us hear 'Chaos' we automatically get a little anxious. The idea of presenting failure into anything let alone a system can sound scary, however, by running these controlled experiments we can gain insight and reduce disasters. This is important because inevitably a system WILL fail.

So let's break some stuff and see how it all works!

Below is a repo with step by step instructions to setup Kubernetes clusters and use a few different platforms to run experiments on them.

A lot of tutorials I have found around running chaos experiments with K8s skip the cluster setup bit - making this repo a good complete getting started guide if you're new to K8s and Chaos Engineering. ๐Ÿ™‚ ๐ŸŽ‰

GitHub logo ari-hacks / kubernetes-chaos-sandbox

๐Ÿงช Tutorials for running chaos experiments with litmus chaos, chaos mesh, and gremlin (includes k8s setup)

Kubernetes Chaos Sandbox

chaos-experiment

A sandbox repo of chaos experiment tutorials with Gremlin, Litmus Chaos, and Chaos Mesh

Local Setup

  • OS: MacOs Catalina

  • Kubernetes: Docker Desktop

  • Resource settings
      - CPUs:6
      - Memory: 6GB
      - Swap: 3GB
      - Disk Size: 59.6GB
    

Quick Links to Tutorials โ˜๏ธ

Quick Link to Kubernetes setup

Additional tutorials

There are several organizations making waves in the chaos experimenting world today. I choose to learn a bit more about Gremlin, Litmus, and Chaos Mesh.

Each provides various interesting experiments and testing experiences. Gremlin is chaos engineering as a service. This is perfect if you like a good GUI and want to get up and running quickly. Litmus Chaos is a good choice if you enjoy the command line (which I do ๐Ÿ˜‰ ). I had the opportunity to contribute to their project and the team is great! Chaos Mesh is similar to Litmus Chaos and they have some awesome documentation I was able to contribute to this Hacktoberfest as well. Chaos Mesh offers the option of using an interactive GUI or the command line (or both!) making it very developer friendly.

While the purpose of Chaos experimenting is introducing failure the main goal in testing is really to fix and overcome any weaknesses found in a system. By using these tools we are making software and infrastructure more reliable and sustainable.

Alt text of image

"The purpose of Chaos Engineering is NOT to 'Break Things on Purpose'. If anything it is to try and 'Fix Them on Purpose.'"

๐Ÿšจ Before you go.....

I am giving away a $12 voucher to the dev shop! Leave a comment below if interested and I'll pick someone at random this weekend to send it to! ๐ŸŽ โœŒ๐Ÿพ

Top comments (6)

Collapse
 
joelbonetr profile image
JoelBonetR ๐Ÿฅ‡ • Edited

I like the "chaos engineering as a service" concept. At the first sight, who will pay for getting chaos?

I've a colleague at the department who's byname is Gremlin, I've to share this of course, never heard about ๐Ÿ˜†

Thanks for this post ๐Ÿ˜„

Collapse
 
ari_hacks profile image
Ari ๐Ÿช

Glad you enjoyed it! That is quite a unique name haha! ๐Ÿ˜†

Collapse
 
craigmorten profile image
Craig Morten

Nice one ๐Ÿฅณ great work getting is all in one easy bookmarkable place ๐Ÿ‘

Collapse
 
ari_hacks profile image
Ari ๐Ÿช

Thanks! I'm hoping it can reduce the barrier to entry and get folks more excited about the space. I also enjoy your posts, thanks for the content! ๐Ÿ™‚

Collapse
 
ankitbeniwal profile image
Ankit Beniwal

Kudos ๐Ÿฅณ๐Ÿฅณ to you for making Chaos Mesh's documentation less chaotic. ๐Ÿ˜…๐Ÿ˜…๐Ÿ‘๐Ÿ‘

Collapse
 
arcticspacefox profile image
ArcticSpaceFox

Cool article, never really got much into kubernetes. I will have a look at it though ๐Ÿ˜„ seems interesting