Commit Graph
36 Commits
Author SHA1 Message Date
Janos Bonic d8c4c27a7d Fixes #265: Replace powerfulseal 2022-06-07 17:11:53 +02:00
Naga Ravi Chaitanya Elluri 9208f39e06 Add support to run on Kubernetes
This commit:
- Leverages distribution flag in the config set by the user to skip
  things not supported on OpenShift to be able to run scenarios on
  Kubernetes.
- Adds sample config and scenario files that work on Kubernetes.
2022-06-01 07:27:06 -05:00
Paige Rubendall 23d9a26f52 adding namespace deletion using kuberenetes python client 2022-05-26 14:24:36 -05:00
yogananth-subramanian 50dd9873c1 Node egress traffic shaping
Patch adds a scenario to create variations in egress traffic of a Node's interface using the tc and Netem.
2021-12-16 12:54:53 -05:00
Paige Rubendall 01f1075eb3 Adding namespace or label selector error; delete_count option 2021-12-08 15:45:25 -05:00
Alejandro Gullón baa812b7f0 Added new scenario to fill up a given volumen (#182)
* Added new scenario to fill up a given volumen

* fixing small issues and style

* adding PVC as input param instead of pod name

* small fix

* get container name and volumen name
replace oc with kubectl commands

* adding yaml file to create a pv, pvc and pod to run pvc_scenario

* adding support to match both string for describe command when looking for pod_name

* added support to find the pvc from a given pod

* small fix

* small fix
2021-11-24 12:18:49 -05:00
prubenda 8e0f4e63af Adding container for pod_exec in time scenarios 2021-11-23 11:33:49 -05:00
Naga Ravi Chaitanya Elluri f3bbc85dd5 Fix issue with matching labels
This commit fixes the issue with application outages scenario where
the pod-selector is not being mapped properly.
2021-10-29 10:45:46 -04:00
Paige Rubendall 87aa9eef4d Adding multiple node names and instance count for label selectors 2021-10-26 13:44:28 -04:00
Naga Ravi Chaitanya Elluri cdf3bc03d2 Add support to block traffic to an application
This commit enables users to simulate a downtime of an application
by blocking the traffic for the specified duration to see how
it/other components communicating with it behave in case of downtime.
2021-10-01 10:13:40 -04:00
Paige Rubendall 22df024312 adding validation that namespace becomes active 2021-09-28 09:58:55 -04:00
Naga Ravi Chaitanya Elluri f36da323e7 Prioritize filtering on namespace to improve performance
This will avoid querying all namespaces for pods matching the label_selector
if defined as shown in the sample scenario config. This commit also prints a
pointer to the report generated at the end of the run.
2021-09-22 15:03:39 -04:00
Naga Ravi Chaitanya Elluri 5da0b259c5 Run all the litmus resources in a single namespace
- This eases the usage and debuggability by running the fault injection pods in
  the same namespace as other resources of litmus. This will also ease the
  deletion process and ensure that there are no leftover objects on the cluster.

- This commit also enables users to use the same rbac template for all the litmus
  scenarios without having to pull in a specic one for each of the scenarios.
2021-09-08 16:37:07 -04:00
Naga Ravi Chaitanya Elluri adb465cab0 Add support for multi-zone disruption
This will enable users to disrupt multiple zones in the cluster simultaneously
to be able to understand the behaviour of various components.
2021-08-26 08:23:24 -04:00
Paige Rubendall 22fcab57f5 container checking in pod 2021-08-25 09:28:03 -04:00
prubenda 9b0bcdbf0e Adding node memory hog scenario 2021-08-20 14:02:00 -04:00
Naga Ravi Chaitanya Elluri 6456eec76a Add zone outage scenarios
This commit adds support to create zone outage in AWS by denying both
ingress and egress traffic to the instances belonging to a particular
subnet belonging to the zone by tweaking the network acl. This creates
an outage of all the nodes in the zone - both master and workers.
2021-08-17 11:43:13 -04:00
Naga Ravi Chaitanya Elluri c56a8a5356 Add more tunables for cpu hog scenario
This commit exposes the flags to tweak the number of cores and node
count to hog during the node-cpu-hog scenario.
2021-07-28 17:07:40 -04:00
Paige Rubendall f051c1c30f Merge pull request #120 from paigerube14/container_kill
Container kill
2021-07-15 15:07:58 -04:00
prubenda 76efac8f9b Adding delete of namespaces 2021-07-13 13:31:45 -04:00
prubenda 46a1823291 Adding killing of specific containers in pods 2021-07-08 17:10:48 -04:00
prubenda 41bf815f98 Adding shut down scenario for gcp, az, aws, openstack 2021-06-23 09:00:58 -04:00
Amit Sagtani d00d6ec69e Install pre-commit and use GitHub Actions (#94)
* added pre-commit and code-cleaning

* removed tox and TravisCI
2021-05-05 09:53:45 -04:00
prubenda e1320b0d7b adding update to openshift apiserver label for pod scenario 2021-04-13 10:42:59 -04:00
mjulie 488aa826e4 Add pod scenarios for custom app
Signed-off-by: mjulie <mjulie@in.ibm.com>
2021-02-04 11:24:05 -05:00
mjulie 9df350a189 Add pod scenarios for custom app
Signed-off-by: mjulie <mjulie@in.ibm.com>
2021-02-04 11:24:05 -05:00
prubenda 1fc9683c8c Adding litmus scenario options 2020-12-03 12:45:35 -05:00
prubenda 6f31519e5f adding time scenario 2020-10-27 08:37:54 -04:00
prubenda a704c77a39 deleting post action files that are no longer needed 2020-09-11 17:17:59 -04:00
prubenda 8f5b688fba working on powerfulseal retry logic 2020-09-11 17:08:31 -04:00
Yashashree Suresh 31f06b861a Added node scenarios to stop and terminate instance
This commit:
- Adds a node scenario to stop and start an instance
- Adds a node scenario to terminate an instance
- Adds a node scenario to reboot an instance
- Adds a node scenario to stop the kubelet
- Adds a node scenario to crash the node
2020-08-27 16:50:42 -04:00
prubenda 0fc82090f2 Adding watch to see if components recovered 2020-08-18 16:26:04 -04:00
Yashashree Suresh c033aa434e Added support to kill prometheus pods 2020-08-13 10:30:04 -04:00
prubenda 44e753867f Adding random regex pod kill 2020-07-06 22:00:12 -04:00
prubenda 07db8f4690 Adding updated scenarios for 3.0 powerfulseal version 2020-06-16 15:59:32 -04:00
Naga Ravi Chaitanya Elluri 649134e492 Add initial version of kraken
This commit:
- Adds support to run pod chaos scenarios including killing an etcd,
  ApiServer and kube-apiserver using powerfulseal tool.
- Adds support to create a report with the details about each chaos
  injection along with timestamps. The report is generated in the
  run directory.
- Adds kubernetes package with a bunch of functions which can be
  used later to talk to the kubernetes API to be able to know the
  status of the targeted components/nodes.
2020-04-20 08:57:00 -04:00