Skip to content

Training Resources Chaosthon

Uma Mukkara edited this page May 31, 2022 · 6 revisions

Chaosthon practical training resources

This page helps the participants of the Chaosthon in getting to know more about LitmusChaos platform and gives some practical training in creating and executing chaos workflows or scenarios.

Stage1

Create your own Chaos Control Plane

image

  • Browse and learn around managing chaos workflows. Read the documentation at docs.litmuschaos.io

Join the ChaosThon project

  • Once you signup at litmuschaos.cloud, you will be invited to join a project. The invitation will be from umasankar.mukkara@harness.io. The invitation is visible on the top right of the Settings --> Teaming page. image

  • Click or scroll down on the teaming page to find the invitation. You must be invited as an editor. Accept the invitation. image

  • Once the invitation is accepted, you will have access to the ChaosThon project on your project bar on your top left screen of the chaos center. Click on the project and select "Umasankar90499's project" image


Stage 2

It is now assumed that you have access to "Umasankar90499's project" on litmuschaos.cloud. When you are in this project, you will be doing actions as "Umasankar". It is important to keep the environment usable by other participants of Chaosthon. Do not delete the workflows that are not created by you. When you browse the project, you see a fully configured target environment. You will see chaos workflows that ran against an agent called "eks-common". You will be running a demo chaos workflow against an application called sock-shop catalog.

Sample application details

The sample is called sock-shop, which is installed in a namespace called "sock-shop" in a eks cluster, which is connected to your project through the eks-common agents. The details of the agents can be seen at the ChaosAgents section.

Creating a pod-delete chaos on catalog service

You can create a new chaos workflow that deletes pod belonging to the catalog service. A pre-defined chaos workflow is made available for you in a ChaosHub called "Accenture-ChaosHub". Follow the below steps.

  1. Browse the catalog on the sock-sock website and see if it is working before chaos is applied.

  2. Create a new Chaos Workflow from Litmus Workflows tab. image

  3. Choose eks-common as the agent and click next image

  4. Choose Accenture-ChaosHub in the list of chaos hubs. image

  5. Accenture-ChaosHub has two pre-defined chaos workflows. Choose accenture-demo1 image

  6. Name the chaos workflow with something that contains your name, so that it can be identified. Many participants are sharing this environment. image

  7. The experiment is setup for you already. If you wish browse the experiment and probe and learn how it is configured. Do NOT change any settings as the experiment is pre-configured to run against catalog service. image

  8. Click next on the resilience score screen. There is only one experiment, no need to set weight. image

  9. In the schedule screen, "Schedule now" is selected by default, click Next. image

  10. The final screen is a summary screen. Browse the YAML file to learn how the chaos workflow is constructed. Click Finish button. image

  11. Click Go to Workflow. image

  12. You will see that your chaos workflow is running and click on your workflow name to browse the running workflow. image

  13. The workflow starts with setting up the experiments environment before running the actual experiments. At this point of time your sock-shop catalog must be available. Browse and check it is working. image

  14. After a minute or so, pod-delete will start running. Few seconds into it, the catalog service may not be available, as there is no redundancy to that service. Till the pod is back up, the catalog service should remain unavailable. image

  15. Browse the catalog service and see it as unavailable. This means, that you are able to run the pod-delete chaos against the catalog service. image

  16. On the workflow browser, click on the pod-delete experiment to see the logs console. image

  17. Click on the Chaos Results tab to see the chaos workflow results. image

  18. The workflow will run for a few minutes. When pod-delete chaos experiment is completed, the results can be seen in the Chaos Results tab. At the end Revent-Chaos step is run, this will run any chaos logs and results to keep the system at it's original state. Note that, after the revert chaos step, logs and results are not available as part of the workflow browser screen.

image

  1. By now, the catalog pod must be back and service must be available.

This is the end of stage 2. Feel free to browse various features in the chaos center. The settings section provides various capabilities around teaming and GitOps.

Become part of the Litmus community

  • If you like the Litmus project, you may want to become one of the project stargazers on GitHub. Provide a star here if you like Litmus. image

  • Join Litmus slack channel . Litmus community is at #litmus channel in Kubernetes slack workspace.


Stage 3

  • Create a new chaos workflow against the same catalog experiment using the workflow wizard. In this case, we create a Pod Delete against front-end website or any other micro service in the sock-shop namespace.

More details are coming soon