Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improv/typos and punctuations #55

Draft
wants to merge 15 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 47 additions & 0 deletions .github/ISSUE_TEMPLATE/create-new-section-template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
name: Create a new section
about: For documentation issues requiring an entirely new section in the sidebar
title: Create {section}
labels: sections

---

<!-- This template is used for requesting for the addition of an entirely new section/sub-section in the current documentation. -->


<!-- Thanks for filing an issue! Before hitting the button, please answer these questions.-->

# Create {section-name}

## Section Name: {section-name}
<!-- What is this section called? -->

### Why do we need to create this section
<!-- Tell us why it is important that this section is added to the documentation. -->

### What will this section contain?
<!-- Tell us what will be included in this section that isn't already added to existing sections. -->

### Directory
<!-- Will this be a section on it's own or it is going to be a sub-section? Can you provide a link to where this section will be added to? -->

### Sub-sections
<!-- Does this section have sub-sections?
If yes, please list the title of each sub-section in this format; -->

##### Sub-section one
<!-- Sub-section one does Lorem ipsum dolor sit amet, consectetur... -->

##### Sub-section two
<!-- Sub-section two does Lorem ipsum dolor sit amet, consectetur... -->

<!-- {Optional: add any further explanation if the above does not give room for enough context?} -->

## Helpful Resources
<!-- {Optional: Add links to anything that might be helpful in understanding the need of this particular section} -->

<!-- Be ready for follow-up questions, and please respond in a timely manner. If we can't reproduce a bug or think a feature already exists, we might close your issue. If we're wrong, PLEASE feel free to reopen it and explain why. -->


### Comments for the reviewers?
<!-- Leave a comment for the reviewers of this issue -->
19 changes: 19 additions & 0 deletions .github/ISSUE_TEMPLATE/question.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
name: 🤔 Questions
about: For Questions not answered in our community meetings, Docs, Readme or Slack
title: {title}
labels: question

---

<!-- This template is used to ask questions that you might have and have not been previously answered on any of our communication or help channels. Questions asked here should be questions that might likely lead to a new issue being created. -->

**Please make sure you have;**

- Reviewed the [Questions](https://github.com/litmuschaos/litmus-docs-beta/labels/question) asked by our community members and contributers.
- Searched opened and closed [GitHub issues](https://github.com/litmuschaos/litmus-docs-beta/issues)


### Comments for the reviewers?
<!-- Leave a comment for the reviewers of this issue -->

Original file line number Diff line number Diff line change
@@ -1,4 +1,12 @@
<!-- This form is for bug reports and feature requests ONLY! -->
---
name: 🛠️ Technical Issue
about: For BUG REPORTS & FEATURE REQUESTS only!
title: {title}
labels: technical

---
<!-- This template is for bug reports and feature requests ONLY! -->

<!-- Thanks for filing an issue! Before hitting the button, please answer these questions.-->

## Is this a BUG REPORT or FEATURE REQUEST?
Expand All @@ -12,10 +20,7 @@ If this is a BUG REPORT, please:
If this is a FEATURE REQUEST, please:
- Describe *in detail* the feature/behavior/change you'd like to see.

In both cases, be ready for followup questions, and please respond in a timely
manner. If we can't reproduce a bug or think a feature already exists, we
might close your issue. If we're wrong, PLEASE feel free to reopen it and
explain why.
In both cases, be ready for follow-up questions, and please respond in a timely manner. If we can't reproduce a bug or think a feature already exists, we might close your issue. If we're wrong, PLEASE feel free to reopen it and explain why.
-->

**What happened**:
Expand All @@ -24,4 +29,7 @@ explain why.

**How to reproduce it (as minimally and precisely as possible)**:

**Anything else we need to know?**:
**Anything else we need to know?**:

### Comments for the reviewers?
<!-- Leave a comment for the reviewers of this issue -->
21 changes: 21 additions & 0 deletions .github/ISSUE_TEMPLATE/update-documentation-template copy.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
name: ⬆️ Update documentation
about: For issues that require an update or improvement to the existing Litmus documentation
title: {title}
labels: updates

---

<!-- This template is used to report any type of errors(punctuations, grammatical, spelling, etc) found in the litmus documentation. More broadly speaking, it is used to request for fixes, updates, changes, or general improvements to the current Litmus documetation. -->

## What error was observed?
<!-- This can be anything, a typo, spelling error, lack of clarity in specific places, etc. -->

## What improvement does this issue propose?
<!-- Tell us what the improvement is and why it is better. Provide clarity in your explanation, give as much context as you can. Include links, screenshots(if necessary), and references. -->

## Helpful Resources
<!-- {Optional: Add links to anything that might be helpful in understanding the need of this particular section} -->

### Comments for the reviewers?
<!-- Leave a comment for the reviewers of this issue -->
10 changes: 7 additions & 3 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
<!-- Thanks for sending a pull request! Here are some tips for you -->

**What this PR does / why we need it**:
### What this PR does / why we need it:
<!-- Be detailed, tell us how this PR solves an existing problem(or issue) -->

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
### Which issue this PR fixes *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #

**Special notes for your reviewer**:
### What changes were made?
<!-- What were the updates made and why do they matter? You can link am issue if one already explains it -->

### Special notes for your reviewer:

**Checklist:**
- [ ] Fixes #<issue number>
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ website/i18n/*
# Generated files
website/.docusaurus
website/.cache-loader
website/build

# Misc
.DS_Store
Expand Down
Empty file removed website/build/.gitkeep
Empty file.
6 changes: 3 additions & 3 deletions website/docs/agent-installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@ title: Litmus Chaos Agent Install
sidebar_label: Chaos Agent
---

In Litmus the Agents can be classified as two types
In Litmus the Agents can be classified into two, namely;

- Self Agent
- External Agent

As part of Litmus installation by default, a self cluster would be registered as Agent in the Portal. From Portal you induce chaos into self cluster and observe the results from the Portal.
As a part of the Litmus installation, by default, a self cluster would be registered as an Agent in the Portal. From the Portal you may induce chaos into self cluster and observe the results from the Portal.

As you are aware by now, Portal is a Cross Cloud Chaos Control plane. That is you can connect multiple external kubernetes agents to this portal. Once connected you can manage the chaos from the Portal that is you can induce chaos into this agent from the Portal and observe the results from the Portal. Using the command line utility _litmusctl_ you can connect the external agents to the Portal.

Expand Down Expand Up @@ -193,4 +193,4 @@ Installation Mode: cluster
👉 Litmus agents can be accessed here: http://172.17.0.2:31696/targets
```

To verify, if the connection process was successful you can view the list of connected agents from the Targets section on your LitmusPortal and ensure that the connected agent is in Active State.
To verify, if the connection process was successful you can view the list of connected agents from the targets section on your LitmusPortal and ensure that the connected agent is in Active State.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ksatchit : I'll let you advise on this nomenclature change in the documentation.

57 changes: 22 additions & 35 deletions website/docs/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,40 +13,33 @@ The above picture gives you a high-level architecture of the Litmus. At highleve
1. Portal
2. Agents

**Portal** is a set of Litmus components which act as Cross Cloud Chaos Control plane (WebUI) which is be used to orchestrate and observe the chaos workflows on Agents.
**Portal** is a set of Litmus components which act as Cross Cloud Chaos Control plane (WebUI) which is used to orchestrate and observe the chaos workflows on Agents.

**Agent** is the set of Litmus components which induces Chaos using the chaos workflows on the K8S cluster component.

Typical user scenario, The user would install litmus. This would in-turn install Portal and Agent on the self cluster. Using the portal user can create/schedule new chaos workflows on the Agents and observe the results from here. User can also connect more clusters to the portal, and use the Portal as single window pane for cross cloud chaos management.
A typical user scenario would be when a user would install litmus. This would, in turn, install Portal and Agent on the self cluster. Using the portal, the user can create/schedule new chaos workflows on the Agents and observe the results from here. Users can also connect more clusters to the portal, and use the Portal as single window pane for cross cloud chaos management.



**Portal Components**
#### Portal Components

Portal has the following components

- Litmus WebUI

Litmus UI provides web user interface, where user can construct and observe the chaos workflow at ease. Also this act as cross cloud chaos control plane that is

- Litmus Server

Litmus Server act as middle ware which is use to handle API request from the user interface, store the config and results details into the DB. This also act as interface to communicate between the requests and scheduling the workflow to Agent.
- **Litmus WebUI** <br />
Litmus UI provides web user interface, where a user can construct and observe the chaos workflow at ease. Also this act as a cross cloud chaos control plane.

- Litmus DB
- **Litmus Server**<br />
Litmus Server act as middleware which is use to handle API request from the user interface, store the config and result details into the DB. This also act as an interface to communicate between the requests and scheduling the workflow to the Agent.

Litmus DB act as config store for chaos workflows and its results.

**Agent components**
- **Litmus DB**<br />
Litmus DB act as a config store for chaos workflows and its results.

#### Agent components
Agents has the following Litmus components

- Chaos Operator

Chaos-Operator watches for the ChaosEngine CR and executes the Chaos-Experiments mentioned in the CR. Chaos-Operator is namespace scoped. By default, it runs in `litmus` namespace. Once the experiment is completed, chaos-operator invokes chaos-exporter to export chaos metrics to a Prometheus database.

- CRDs
- **Chaos Operator**<br />
Chaos-Operator watches for the ChaosEngine CR and executes the Chaos-Experiments mentioned in the CR. Chaos-Operator is namespace scoped. By default, it runs on the `litmus` namespace. Once the experiment is completed, chaos-operator invokes chaos-exporter to export chaos metrics to a Prometheus database.

- **CRDs**<br />
During installation, the following three CRDs are installed on the Kubernetes cluster.

```
Expand All @@ -55,27 +48,21 @@ Agents has the following Litmus components
chaosresults.litmuschaos.io
```

- Chaos Experiment
- **Chaos Experiment**<br />
Chaos Experiment is a CR and are available as YAML files on [Chaos Hub](https://hub.litmuschaos.io/). For more details visit [Chaos Hub documentation](https://litmusdocs-beta.netlify.app/docs/chaoshub).

Chaos Experiment is a CR and are available as YAML files on [Chaos Hub](https://hub.litmuschaos.io/). For more details visit Chaos Hub [documentation](https://litmusdocs-beta.netlify.app/docs/chaoshub).
- **Chaos Engine**<br />
ChaosEngine CR links application to experiments. User has to create ChaosEngine YAML by specifying the application label, it's experiments and create the CR. The CR is watched by Chaos-Operator and chaos-experiments are executed on a given application.

- Chaos Engine

ChaosEngine CR links application to experiments. User has to create ChaosEngine YAML by specifying the application label and experiments and create the CR. The CR is watched by Chaos-Operator and chaos-experiments are executed on a given application.

- Chaos Results

ChaosResult resource holds the results of a ChaosExperiment with a namespace scope. It is created or updated at runtime by the experiment itself. It holds important information like the ChaosEngine reference, Experiment State, Verdict of the experiment (on completion), salient application/result attributes. It is also a source for metrics collection. It is updated/patched with the status of the experiment run. It is not removed as part of the default cleanup procedures to allow for extended reference.

- Chaos Probes
- **Chaos Results**<br />
ChaosResult resource holds the results of a ChaosExperiment within a namespace scope. It is created or updated at runtime by the experiment itself. It holds important information like the ChaosEngine reference, Experiment State, Verdict of the experiment (on completion), salient application/result attributes. It is also a source for metrics collection. It is updated/patched with the status of the experiment run. It is not removed as part of the default cleanup procedures to allow for extended reference.

- **Chaos Probes**<br />
Litmus probes are pluggable checks that can be defined within the ChaosEngine for any chaos experiment. The experiment pods execute these checks based on the mode they are defined in & factor their success as necessary conditions in determining the verdict of the experiment (along with the standard “in-built” checks).

- Chaos Exporter

- **Chaos Exporter**<br />
Optionally metrics can be exported to a Prometheus database. Chaos-Exporter implements the Prometheus metrics endpoint.

- Subscriber

- **Subscriber**<br />
Subscriber is the component used in Agent side which interact with Litmus Server component to get the details of Chaos workflow and send the results back.

6 changes: 3 additions & 3 deletions website/docs/getstarted.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,11 @@ sidebar_label: Pre-requisites

Running chaos on your application involves the following steps:

[Install Litmus](litmus-install-cluster-mode)
- [Install Litmus](litmus-install-cluster-mode)

[How to Create and Run a Workflow](create-workflow)
- [How to Create and Run a Workflow](create-workflow)

[Observe ChaosResults](observe-workflow)
- [Observe ChaosResults](observe-workflow)

<hr/>

Expand Down
4 changes: 2 additions & 2 deletions website/docs/introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@ Service downtimes are always expensive and they are very difficult to predict an

LitmusChaos is a complete framework to implement chaos engineering within a cloud-native ecosystem. It helps both Developers and SREs automate the chaos experiments at different stages within the DevOps pipeline like development, during CI/CD, & in production.

- What is a Chaos Experiment?
#### What is a Chaos Experiment?

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.

- What is a Chaos Workflow?
#### What is a Chaos Workflow?

A chaos workflow is much more than a simple chaos experiment. It supports the user in defining the expected result, observing the result, analysing the overall system behaviour, and in the decision-making process if the system needs to be tuned for improving the resilience.
LitmusChaos provides necessary infrastructure to develop, use, and manage chaos workflows for a typical development or operations team. Teaming and GitOps features of Litmus help greatly to collaborate the chaos workflows management within the teams or software organisations.
Expand Down
10 changes: 7 additions & 3 deletions website/docs/litmus-installation-cluster.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,10 @@ sidebar_label: Control Plane (Cluster Mode)
---

<iframe width="560" height="315" src="https://www.youtube.com/embed/rOrKegj5ePI" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
<br />
<br />

Installing Litmus in cluster mode gives Litmus access to cluster wide resources. Here, the CRDs are installed directly on the cluster.

## Pre-requisites

Expand All @@ -18,12 +22,12 @@ sidebar_label: Control Plane (Cluster Mode)

## Installation

Installation of Litmus can be done using either of the below methods
Installation of Litmus can be done using either of the below methods;

- [Helm3](#helm_install) chart or
- [Kubectl](#kubectl_install) yaml spec file

### Installation Steps
### Install Litmus using Helm

The helm chart will install all the required service account configuration and chaos control plane.

Expand All @@ -38,7 +42,7 @@ helm repo list

#### Step-2: Create the litmus namespace

- The litmus infra components will be placed in this namespace.
The litmus infra components will be placed in this namespace.

**Note**: The chaos control plane can be placed in any namespace, though it is typically placed in "litmus".

Expand Down
Loading