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.
This commit:
- Adds timeout to avoid operations hanging for long durations.
- Improves exception handling and exits wherever needed.
- Sets KUBECONFIG env var globoally to access the cluster.
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
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.