Commit Graph
68 Commits
Author SHA1 Message Date
Shreyas Anantha RamaprasadandGitHub 08deae63dd Added VMware Node Scenarios (#285)
* Added VMware node scenarios

* Made vmware plugin independent of Krkn

* Revert changes made to node status watch

* Fixed minor documentation changes
2022-08-15 23:35:16 +02:00
Janos Bonic ccd902565e Fixes #265: Replace Powerfulseal and introduce Wolkenwalze SDK for plugin system 2022-08-02 16:25:03 +01:00
Naga Ravi Chaitanya Elluri da117ad9d9 Switch to python3.9 2022-07-22 16:56:47 -04:00
harshil-redhatandGitHub 97d4f51f74 Fix installation docs with updated git repo (#270)
Signed-off-by: harshil-redhat <72143431+harshil-redhat@users.noreply.github.com>
2022-06-23 19:29:36 -04:00
sanjacodesandNaga Ravi Chaitanya Elluri 9810649c62 Clean up and start figuring out CI failures 2022-06-02 09:12:19 -05:00
Paige RubendallandNaga Ravi Chaitanya Elluri 23d9a26f52 adding namespace deletion using kuberenetes python client 2022-05-26 14:24:36 -05:00
gsteedsandSanja 6280a39250 Fixed links within docs, as well as read through docs files and corrected some spelling and grammer issues. 2022-05-04 09:35:50 +02:00
gsteedsandSanja 89ff8b699f Fixed small mistake in contribute.md. 2022-05-04 09:35:50 +02:00
gsteedsandSanja 5c7a97d592 Fixed broken lines in docs. 2022-05-04 09:35:50 +02:00
9a087de8e9 Add Krkn logo (#230)
Credits: Thanks to Kaliq Ray for designing the logo.

Fixes https://github.com/cloud-bulldozer/krkn/issues/195

Co-authored-by: Sanja <86982064+sanjacodes@users.noreply.github.com>
2022-05-03 14:48:38 -04:00
Paige RubendallandNaga Ravi Chaitanya Elluri c1fb82e245 adding new quay repo 2022-04-25 10:25:51 -04:00
Paige RubendallandNaga Ravi Chaitanya Elluri 9a8e750d5f adding rebase isntructions 2022-04-07 13:34:24 -04:00
Paige RubendallandNaga Ravi Chaitanya Elluri 7f60701444 adding alibaba node scenario start 2022-04-01 16:46:29 -04:00
Naga Ravi Chaitanya Elluri 4f7616a150 Add pointers around alerts consistency
This commit also adds instructions around running kraken using venv
to avoid any dependencies conflicts.
2022-03-09 15:42:47 -05:00
Paige RubendallandNaga Ravi Chaitanya Elluri 8a90a4c8d0 Adding chaos testing examples within Red Hat/OpenShift 2022-03-08 15:26:28 -05:00
Alejandro GullónandGitHub 0bf75e16cb Updating testing guide with few additions (#205)
* updating testing guide with few additions

* adressing typo issues
2022-02-24 08:34:27 -05:00
Naga Ravi Chaitanya Elluri 8c7b19d37d Add roadmap for Kraken
This commit adds a roadmap which walks through the features and enhancements that
are going to be added to Kraken in the immediate future in order to help users
understand where we need help as well as where the project is going.
2022-01-31 09:39:07 -05:00
Naga Ravi Chaitanya Elluri 3554ef505e Set theme jekyll-theme-cayman 2022-01-06 16:18:43 -05:00
Naga Ravi Chaitanya Elluri f10538abcb Add chaos testing guide
This commit:
- Adds information around test methodology that needs to be embraced and
  best practices that an OpenShift cluster, platform and applications running
  on top of it should take into account for best user experience, performance,
  resilience and reliability.
- Adds test environment recommendations as to how and where to run chaos tests.
2022-01-06 16:17:32 -05:00
yogananth-subramanianandNaga Ravi Chaitanya Elluri 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 RubendallandNaga Ravi Chaitanya Elluri 01f1075eb3 Adding namespace or label selector error; delete_count option 2021-12-08 15:45:25 -05:00
Paige RubendallandGitHub f17ad062cf Ci tests (#184)
* Adding in working ci tests

* spacing in readme
2021-11-24 15:12:47 -05:00
Alejandro GullónandGitHub 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
prubendaandNaga Ravi Chaitanya Elluri 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 RubendallandNaga Ravi Chaitanya Elluri 87aa9eef4d Adding multiple node names and instance count for label selectors 2021-10-26 13:44:28 -04:00
Naga Ravi Chaitanya Elluri 674eb74a75 Expose setting the signal in the config
This commit enables users to start Kraken to act as listener by setting
the signal to PAUSE in the config to get the cluster to a desired test or
run any setup before injecting chaos by setting the signal to RUN. This
helps in cases where we have test cases that need to coordinate the chaos
at a desired time depending on the state of the cluster/test run.
2021-10-26 09:05:25 -04:00
Paige RubendallandNaga Ravi Chaitanya Elluri 6b865fc573 Adding server set up for kraken 2021-10-25 08:58:46 -04:00
Paige RubendallandNaga Ravi Chaitanya Elluri 57ef98f728 adding more node clouds defined 2021-10-11 13:49:12 -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 RubendallandNaga Ravi Chaitanya Elluri 22df024312 adding validation that namespace becomes active 2021-09-28 09:58:55 -04:00
Naga Ravi Chaitanya Elluri 68a32666cd Update litmus docs with supported scenarios 2021-09-01 16:41:22 -04:00
Naga Ravi Chaitanya Elluri b9493baf1d Add a note around node-scenarios compatability
This commit adds a note around using standlone version of Kraken to
inject node-scenarios until https://github.com/cloud-bulldozer/kraken/issues/106
gets fixed.
2021-08-30 08:40:20 -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 RubendallandNaga Ravi Chaitanya Elluri 22fcab57f5 container checking in pod 2021-08-25 09:28:03 -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 716057eab6 Monitor user application availability during chaos
Current Kraken integration with Cerberus monitors the cluster as well as the
application health post chaos and pass/fails if they are not healthy after chaos.
This commit adds ability to monitor the user application health during the chaos
and fails the run in case of downtime as it's potentially a downtime in case of
customers environment as well. It is especially useful in case of control plane
failure scenarios including API server, Etcd, Ingress etc.
2021-07-27 13:15:57 -04:00
Naga Ravi Chaitanya Elluri e9f5961986 [Docs] Add instructions on how to mount custom scenarios 2021-07-26 09:57:11 -04:00
Paige RubendallandGitHub f051c1c30f Merge pull request #120 from paigerube14/container_kill
Container kill
2021-07-15 15:07:58 -04:00
prubendaandNaga Ravi Chaitanya Elluri 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
Naga Ravi Chaitanya Elluri d7ba19c382 Automate the infrastruture pieces
This commit:
- Adds support to automate the infrastructure pieces leveraged by Kraken
  including Cerberus and Elasticsearch
- Adds a Kraken config that can be used to discover all the infra pieces
  automatically without having to tweak the configuration.
2021-07-07 15:52:26 -04:00
Naga Ravi Chaitanya Elluri e195922504 Document pip version and add more logging 2021-07-07 09:49:52 -04:00
9b83dbcf04 Baremetal Node Support (#74)
* Support for baremtal node scenarious

* Finished baremetal support

* Added documentation for baremetal

* Clarify limitations of implementation in documentation

* Add baremetal support to new run.py file

* Allow use on newer machines

Some older machines require lanplus instead of lan

* Setup to allow per-device user, pass, and bmc address

Also set min version for a dependency

* Fix linting issues

* More linting issue fixes

* More linter issues

* Account for linter standard non-conformity

* Added baremetal warning

Co-authored-by: jaredoconnell <jocnnel@redhat.com>
2021-07-02 17:31:40 -04:00
prubendaandNaga Ravi Chaitanya Elluri 5456fce924 Adding getting started docs 2021-06-23 13:58:43 -04:00
prubendaandNaga Ravi Chaitanya Elluri 41bf815f98 Adding shut down scenario for gcp, az, aws, openstack 2021-06-23 09:00:58 -04:00
Naga Ravi Chaitanya Elluri e30a4243f6 Add support to alerting on metrics evaluation
This commit enables alerting in Kraken based on the Prometheus queries defined
by the user and modifies the return code of the run to determine pass/fail for
the run.
2021-06-22 15:22:37 -04:00
Naga Ravi Chaitanya Elluri 7e8f0450d6 Add support to scrape and index metrics
This commit:
- Enables Kraken to leverage kube-burner to scrape metrics from
  Prometheus and index them into Elasticsearch. This way we can
  take a look at the metrics in Grafana long term even after the
  cluster is terminated.
- Enables separation of operations based on distribution with
  OpenShift as the default option. One of the use cases is to
  capture Prometheus instance details as it's installed by default
  while it's optional for Kubernetes.
2021-06-21 14:55:50 -04:00
Robert O'BrienandNaga Ravi Chaitanya Elluri 56de5c76a9 Added selinux label to the docker run install command 2021-06-17 08:30:58 -04:00
Amit SagtaniandGitHub 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