-
Notifications
You must be signed in to change notification settings - Fork 701
Training Resources Chaosthon
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.
Create your own Chaos Control Plane
- Sign up at https://litmuschaos.cloud
- 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.
-
Click or scroll down on the teaming page to find the invitation. You must be invited as an editor. Accept the invitation.
-
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"
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.
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.
- Sockshop application is setup at http://a5d3f939433a1425e8bed9f7cf632ed4-533721864.us-east-2.elb.amazonaws.com/category.html . This is a e-commerce application where various types of socks are sold.
- Catalog is a micro service that is accessible on this application
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.
-
Browse the catalog on the sock-sock website and see if it is working before chaos is applied.
-
Create a new Chaos Workflow from Litmus Workflows tab.
-
Choose eks-common as the agent and click next
-
Choose Accenture-ChaosHub in the list of chaos hubs.
-
Accenture-ChaosHub has two pre-defined chaos workflows. Choose accenture-demo1
-
Name the chaos workflow with something that contains your name, so that it can be identified. Many participants are sharing this environment.
-
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.
-
Click next on the resilience score screen. There is only one experiment, no need to set weight.
-
In the schedule screen, "Schedule now" is selected by default, click Next.
-
The final screen is a summary screen. Browse the YAML file to learn how the chaos workflow is constructed. Click Finish button.
-
Click Go to Workflow.
-
You will see that your chaos workflow is running and click on your workflow name to browse the running workflow.
-
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.
-
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.
-
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.
-
On the workflow browser, click on the pod-delete experiment to see the logs console.
-
Click on the Chaos Results tab to see the chaos workflow results.
-
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.
- 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.
-
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.
-
Join Litmus slack channel . Litmus community is at #litmus channel in Kubernetes slack workspace.
- 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