diff --git a/config/config.yaml b/config/config.yaml index 7d43c725..8ee29990 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -2,8 +2,9 @@ kraken: kubeconfig_path: /root/.kube/config # Path to kubeconfig scenarios: # List of policies/chaos scenarios to load - scenarios/etcd.yml - - scenarios/openshift-kube-apiserver.yml + - scenarios/openshift-kube-apiserver.yml - scenarios/openshift-apiserver.yml + - scenarios/regex_openshift_pod_kill.yml cerberus: cerberus_enabled: False # Enable it when cerberus is previously installed diff --git a/requirements.txt b/requirements.txt index c312fb15..82b458ca 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ datetime pyfiglet -powerfulseal==3.0.0rc9 +git+https://github.com/bloomberg/powerfulseal.git@master requests diff --git a/scenarios/regex_openshift_pod_kill.yml b/scenarios/regex_openshift_pod_kill.yml new file mode 100644 index 00000000..9bcce66b --- /dev/null +++ b/scenarios/regex_openshift_pod_kill.yml @@ -0,0 +1,20 @@ +config: + runStrategy: + runs: 1 + maxSecondsBetweenRuns: 30 + minSecondsBetweenRuns: 1 +scenarios: + - name: kill up to 3 pods in any openshift namespace + steps: + - podAction: + matches: + - namespace: "openshift-.*" + filters: + - property: + name: "state" + value: "Running" + - randomSample: + size: 3 + actions: + - kill: + probability: .7