You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+30
Original file line number
Diff line number
Diff line change
@@ -24,6 +24,36 @@ It generates the custom chaos experiments with some default Pre & Post Chaos Che
24
24
25
25
Refer [Litmus-SDK](https://github.com/litmuschaos/litmus-python/blob/master/contribute/developer-guide/README.md) for more details
26
26
27
+
### Overview
28
+
29
+
Litmus-Python chaos experiments are fundamental units within the LitmusChaos architecture. Users can choose between readily available chaos experiments or create new ones to construct a required Chaos Workflow.
30
+
31
+
To know more about LitmusChaos experiments [refer](https://litmuschaos.github.io/litmus/) to this.
32
+
33
+
#### Experiment Flow :
34
+
- Experiment business logic image has to be updated in `spec.definition.image` along with experiment entrypoint and tunable parameters in ChaosEngine (CR) which holds experiment-specific chaos parameters. ChaosExperiment is created by chaos runner which is managed by chaos operator [Refer litmus-python pod-delete experiment](https://github.com/litmuschaos/chaos-charts/blob/master/charts/generic/pod-delete/python/experiment.yaml)
35
+
- Chaos Engine holds experiment-specific parameters. This CR is also updated/patched with the status of the chaos experiments, making it the single source of truth concerning the chaos.
36
+
- Now we need to fit Experiment and Engine into the workflow, Chaos Workflow is a set of different operations coupled together to achieve desired chaos impact on a Kubernetes Cluster. LitmusChaos leverages the popular workflow & GitOps tool, Argo, to achieve this.
37
+
- Add experiment manifest in `install-experiment` artifacts and engine in `run-chaos` artifacts.
38
+
- Follow the steps in [pod-delete workflow](https://github.com/litmuschaos/chaos-charts/blob/master/workflows/pod-delete/workflow.yaml) or [User guide](https://docs.litmuschaos.io/docs/user-guides/construct-workflow/)
39
+
- Now fork and clone [chaos-charts](https://github.com/litmuschaos/chaos-charts), Enter into [workflow](https://github.com/litmuschaos/chaos-charts/tree/master/workflows) directory.
40
+
- Enter into `charts` directory to add charts which has been generated using sdk, for [reference](https://github.com/litmuschaos/chaos-charts/tree/master/charts/cassandra)
41
+
- Enter into `workflow` directory and add workflow manifests for [reference](https://github.com/litmuschaos/chaos-charts/tree/master/workflows/podtato-head)
42
+
-**Note**: Update `sample_category` and `sample_exec_chaos` to `sample-category` and `sample-exec-chaos` inside manifest in every chart name while updating chaos-charts. Example: `sample_category.package.yaml` to `sample-category.package.yaml`
43
+
- Connect your Git repository with chaos-center [ChaosHub](https://docs.litmuschaos.io/docs/concepts/chaoshub/)
44
+
- Workflow can be added as a predefined workflow in Github and users can test by following the given steps:
45
+
- Fork and clone [chaos-charts](https://github.com/litmuschaos/chaos-charts), now Enter into [workflow](https://github.com/litmuschaos/chaos-charts/tree/master/workflows) directory.
46
+
- Follow the same structure for your workflow and push it. For [example](https://github.com/litmuschaos/chaos-charts/tree/master/workflows/podtato-head)
47
+
- Connect your Git repository with chaos-center [ChaosHub](https://docs.litmuschaos.io/docs/concepts/chaoshub/)
48
+
- Schedule your workflow with chaos-center in [given](https://docs.litmuschaos.io/docs/user-guides/schedule-workflow) manner, by selecting your connected [ChaosHub](https://docs.litmuschaos.io/docs/user-guides/schedule-workflow/#2-choose-a-workflow)
49
+
- To Run your [first workflow](https://docs.litmuschaos.io/docs/getting-started/run-your-first-workflow/) follow the step-by-step guidelines.
50
+
- After scheduling it one can [observe the workflow](https://docs.litmuschaos.io/docs/user-guides/observe-workflow)
51
+
- To [Analyze the workflow](https://docs.litmuschaos.io/docs/user-guides/analyze-workflow/#) follow these guidelines
52
+
- Now User can [setup own Observablity](https://docs.litmuschaos.io/docs/user-guides/observability-set-up) and [Compare](https://docs.litmuschaos.io/docs/user-guides/comparative-analysis) it with other scheduled workflows with the help of monitoring dashboard
53
+
- It can be scheduled for repeated execution.
54
+
- Select [edit Schedule](https://docs.litmuschaos.io/docs/user-guides/edit-schedule#3-change-the-schedule) to schedule recurrent workflow by selecting proper timing.
0 commit comments