From cf3add39502f459c8a8081da8c1755ba89c4225d Mon Sep 17 00:00:00 2001 From: Neelanjan Manna Date: Wed, 22 Feb 2023 10:44:12 +0530 Subject: [PATCH] replaces default container runtime to containerd (#587) Signed-off-by: neelanjan00 --- charts/generic/container-kill/engine.yaml | 4 +- .../engine_nginx_getstarted.yaml | 4 +- charts/generic/container-kill/experiment.yaml | 4 +- charts/generic/experiments.yaml | 2471 ++++++++++++++++- charts/generic/pod-cpu-hog/engine.yaml | 4 +- charts/generic/pod-cpu-hog/experiment.yaml | 4 +- charts/generic/pod-dns-error/engine.yaml | 4 +- charts/generic/pod-dns-error/experiment.yaml | 4 +- charts/generic/pod-dns-spoof/engine.yaml | 4 +- charts/generic/pod-dns-spoof/experiment.yaml | 4 +- charts/generic/pod-http-latency/engine.yaml | 4 +- .../generic/pod-http-latency/experiment.yaml | 4 +- .../generic/pod-http-modify-body/engine.yaml | 4 +- .../pod-http-modify-body/experiment.yaml | 4 +- .../pod-http-modify-header/engine.yaml | 4 +- .../pod-http-modify-header/experiment.yaml | 4 +- .../generic/pod-http-reset-peer/engine.yaml | 4 +- .../pod-http-reset-peer/experiment.yaml | 4 +- .../generic/pod-http-status-code/engine.yaml | 4 +- .../pod-http-status-code/experiment.yaml | 4 +- charts/generic/pod-io-stress/engine.yaml | 4 +- charts/generic/pod-io-stress/experiment.yaml | 4 +- charts/generic/pod-memory-hog/engine.yaml | 4 +- charts/generic/pod-memory-hog/experiment.yaml | 4 +- .../pod-network-corruption/engine.yaml | 4 +- .../pod-network-corruption/experiment.yaml | 4 +- .../pod-network-duplication/engine.yaml | 4 +- .../pod-network-duplication/experiment.yaml | 4 +- .../generic/pod-network-latency/engine.yaml | 4 +- .../pod-network-latency/experiment.yaml | 4 +- charts/generic/pod-network-loss/engine.yaml | 4 +- .../generic/pod-network-loss/experiment.yaml | 4 +- .../generic/container-kill/engine.yaml | 4 +- .../engine_nginx_getstarted.yaml | 4 +- .../generic/container-kill/experiment.yaml | 4 +- experiments/generic/experiments.yaml | 44 +- experiments/generic/pod-cpu-hog/engine.yaml | 4 +- .../generic/pod-cpu-hog/experiment.yaml | 4 +- experiments/generic/pod-dns-error/engine.yaml | 4 +- .../generic/pod-dns-error/experiment.yaml | 4 +- experiments/generic/pod-dns-spoof/engine.yaml | 4 +- .../generic/pod-dns-spoof/experiment.yaml | 4 +- .../generic/pod-http-latency/engine.yaml | 4 +- .../generic/pod-http-latency/experiment.yaml | 4 +- .../generic/pod-http-modify-body/engine.yaml | 4 +- .../pod-http-modify-body/experiment.yaml | 4 +- .../pod-http-modify-header/engine.yaml | 4 +- .../pod-http-modify-header/experiment.yaml | 4 +- .../generic/pod-http-reset-peer/engine.yaml | 4 +- .../pod-http-reset-peer/experiment.yaml | 4 +- .../generic/pod-http-status-code/engine.yaml | 4 +- .../pod-http-status-code/experiment.yaml | 4 +- experiments/generic/pod-io-stress/engine.yaml | 4 +- .../generic/pod-io-stress/experiment.yaml | 4 +- .../generic/pod-memory-hog/engine.yaml | 4 +- .../generic/pod-memory-hog/experiment.yaml | 4 +- .../pod-network-corruption/engine.yaml | 4 +- .../pod-network-corruption/experiment.yaml | 4 +- .../pod-network-duplication/engine.yaml | 4 +- .../pod-network-duplication/experiment.yaml | 4 +- .../generic/pod-network-latency/engine.yaml | 4 +- .../pod-network-latency/experiment.yaml | 4 +- .../generic/pod-network-loss/engine.yaml | 4 +- .../generic/pod-network-loss/experiment.yaml | 4 +- workflows/bank-of-anthos/workflow.yaml | 4 +- workflows/bank-of-anthos/workflow_cron.yaml | 4 +- workflows/sock-shop-promProbe/workflow.yaml | 4 +- .../sock-shop-promProbe/workflow_cron.yaml | 4 +- workflows/sock-shop/workflow.yaml | 4 +- workflows/sock-shop/workflow_cron.yaml | 4 +- 70 files changed, 2623 insertions(+), 164 deletions(-) diff --git a/charts/generic/container-kill/engine.yaml b/charts/generic/container-kill/engine.yaml index 19ccab1..399084c 100644 --- a/charts/generic/container-kill/engine.yaml +++ b/charts/generic/container-kill/engine.yaml @@ -28,11 +28,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' - name: PODS_AFFECTED_PERC value: '' diff --git a/charts/generic/container-kill/engine_nginx_getstarted.yaml b/charts/generic/container-kill/engine_nginx_getstarted.yaml index 1f98146..df1430a 100644 --- a/charts/generic/container-kill/engine_nginx_getstarted.yaml +++ b/charts/generic/container-kill/engine_nginx_getstarted.yaml @@ -32,11 +32,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' - name: PODS_AFFECTED_PERC value: '' diff --git a/charts/generic/container-kill/experiment.yaml b/charts/generic/container-kill/experiment.yaml index f4468de..905c73a 100644 --- a/charts/generic/container-kill/experiment.yaml +++ b/charts/generic/container-kill/experiment.yaml @@ -85,13 +85,13 @@ spec: # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # provide the name of container runtime # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the total chaos duration - name: TOTAL_CHAOS_DURATION diff --git a/charts/generic/experiments.yaml b/charts/generic/experiments.yaml index c07d42a..5d5fdff 100644 --- a/charts/generic/experiments.yaml +++ b/charts/generic/experiments.yaml @@ -881,11 +881,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL @@ -2954,11 +2954,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL @@ -2980,6 +2980,2465 @@ spec: apiVersion: litmuschaos.io/v1alpha1 description: message: | +<<<<<<< HEAD + Pod DNS Spoof can spoof particular dns requests in target pod container to desired target hostnames +kind: ChaosExperiment +metadata: + name: pod-dns-spoof + labels: + name: pod-dns-spoof + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Namespaced + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # deriving the parent/owner details of the pod(if parent is anyof {deployment, statefulset, daemonsets}) + - apiGroups: ["apps"] + resources: ["deployments","statefulsets","replicasets", "daemonsets"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: ["apps.openshift.io"] + resources: ["deploymentconfigs"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: [""] + resources: ["replicationcontrollers"] + verbs: ["get","list"] + # deriving the parent/owner details of the pod(if parent is argo-rollouts) + - apiGroups: ["argoproj.io"] + resources: ["rollouts"] + verbs: ["list","get"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + image: "litmuschaos/go-runner:latest" + args: + - -c + - ./experiments -name pod-dns-spoof + command: + - /bin/bash + env: + - name: TARGET_CONTAINER + value: "" + + # provide lib image + - name: LIB_IMAGE + value: "litmuschaos/go-runner:latest" + + - name: TOTAL_CHAOS_DURATION + value: "60" # in seconds + + # Time period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: "" + + ## percentage of total pods to target + - name: PODS_AFFECTED_PERC + value: "" + + - name: TARGET_PODS + value: "" + + # provide the name of container runtime, it supports docker, containerd, crio + - name: CONTAINER_RUNTIME + value: 'containerd' + + # provide the socket file path + - name: SOCKET_PATH + value: '/run/containerd/containerd.sock' + + ## it defines the sequence of chaos execution for multiple target pods + ## supported values: serial, parallel + - name: SEQUENCE + value: "parallel" + + # map of the target hostnames eg. '{"abc.com":"spoofabc.com"}' . If empty no queries will be spoofed + - name: SPOOF_MAP + value: "" + + labels: + experiment: pod-dns-spoof + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/runtime-api-usage: "true" + app.kubernetes.io/version: latest + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + poweroff node +kind: ChaosExperiment +metadata: + name: node-poweroff + labels: + name: node-poweroff + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Cluster + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps & secrets details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps","secrets"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + # for experiment to perform node status checks + - apiGroups: [""] + resources: ["nodes"] + verbs: ["get","list"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name node-restart + command: + - /bin/bash + env: + - name: SSH_USER + value: 'root' + + - name: TOTAL_CHAOS_DURATION + value: '60' + + - name: REBOOT_COMMAND + value: '-o ServerAliveInterval=1 -o ServerAliveCountMax=1 "sudo systemctl poweroff --force --force" ; true' + + # Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + # provide lib image + - name: LIB_IMAGE + value: "litmuschaos/go-runner:latest" + + # ENTER THE TARGET NODE NAME + - name: TARGET_NODE + value: '' + + - name: NODE_LABEL + value: '' + + # ENTER THE TARGET NODE IP + - name: TARGET_NODE_IP + value: '' + + labels: + name: node-poweroff + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/version: latest + secrets: + - name: id-rsa + mountPath: /mnt/ + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + It injects chaos inside the pod which modifies the status code of the response from the provided application server to desired status code provided by the user and reverts after a specified duration +kind: ChaosExperiment +metadata: + name: pod-http-status-code + labels: + name: pod-http-status-code + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Namespaced + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # deriving the parent/owner details of the pod(if parent is anyof {deployment, statefulset, daemonsets}) + - apiGroups: ["apps"] + resources: ["deployments","statefulsets","replicasets", "daemonsets"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: ["apps.openshift.io"] + resources: ["deploymentconfigs"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: [""] + resources: ["replicationcontrollers"] + verbs: ["get","list"] + # deriving the parent/owner details of the pod(if parent is argo-rollouts) + - apiGroups: ["argoproj.io"] + resources: ["rollouts"] + verbs: ["list","get"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name pod-http-status-code + command: + - /bin/bash + env: + + - name: TARGET_CONTAINER + value: '' + + # provide lib image + - name: LIB_IMAGE + value: 'litmuschaos/go-runner:latest' + + # modified status code for the http response + # if no value is provided, a random status code from the supported code list will selected + # if an invalid status code is provided, the experiment will fail + # supported status code list: [200, 201, 202, 204, 300, 301, 302, 304, 307, 400, 401, 403, 404, 500, 501, 502, 503, 504] + - name: STATUS_CODE + value: '' + + # whether to modify the body as per the status code provided + - name: "MODIFY_RESPONSE_BODY" + value: "true" + + # port of the target service + - name: TARGET_SERVICE_PORT + value: "80" + + # port on which the proxy will listen + - name: PROXY_PORT + value: "20000" + + # network interface on which the proxy will listen + - name: NETWORK_INTERFACE + value: "eth0" + + - name: TOTAL_CHAOS_DURATION + value: '60' # in seconds + + # Time period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + # percentage of total pods to target + - name: PODS_AFFECTED_PERC + value: '' + + - name: TARGET_PODS + value: '' + + # provide the name of container runtime + # for litmus LIB, it supports docker, containerd, crio + # for pumba LIB, it supports docker only + - name: CONTAINER_RUNTIME + value: 'containerd' + + # provide the socket file path + - name: SOCKET_PATH + value: '/run/containerd/containerd.sock' + + # To select pods on specific node(s) + - name: NODE_LABEL + value: '' + + ## it defines the sequence of chaos execution for multiple target pods + ## supported values: serial, parallel + - name: SEQUENCE + value: 'parallel' + + labels: + name: pod-http-status-code + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/version: latest + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Inject network packet corruption into application pod +kind: ChaosExperiment +metadata: + name: pod-network-corruption + labels: + name: pod-network-corruption + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Namespaced + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # deriving the parent/owner details of the pod(if parent is anyof {deployment, statefulset, daemonsets}) + - apiGroups: ["apps"] + resources: ["deployments","statefulsets","replicasets", "daemonsets"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: ["apps.openshift.io"] + resources: ["deploymentconfigs"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: [""] + resources: ["replicationcontrollers"] + verbs: ["get","list"] + # deriving the parent/owner details of the pod(if parent is argo-rollouts) + - apiGroups: ["argoproj.io"] + resources: ["rollouts"] + verbs: ["list","get"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name pod-network-corruption + command: + - /bin/bash + env: + + - name: TARGET_CONTAINER + value: '' + + # provide lib image + - name: LIB_IMAGE + value: 'litmuschaos/go-runner:latest' + + - name: NETWORK_INTERFACE + value: 'eth0' + + - name: TC_IMAGE + value: 'gaiadocker/iproute2' + + - name: NETWORK_PACKET_CORRUPTION_PERCENTAGE + value: '100' #in PERCENTAGE + + - name: TOTAL_CHAOS_DURATION + value: '60' # in seconds + + # Time period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + ## percentage of total pods to target + - name: PODS_AFFECTED_PERC + value: '' + + - name: TARGET_PODS + value: '' + + # To select pods on specific node(s) + - name: NODE_LABEL + value: '' + + # provide the name of container runtime + # for litmus LIB, it supports docker, containerd, crio + # for pumba LIB, it supports docker only + - name: CONTAINER_RUNTIME + value: 'containerd' + + # provide the destination ips + # chaos injection will be triggered for these destination ips + - name: DESTINATION_IPS + value: '' + + # provide the destination hosts + # chaos injection will be triggered for these destination hosts + - name: DESTINATION_HOSTS + value: '' + + # provide the socket file path + - name: SOCKET_PATH + value: '/run/containerd/containerd.sock' + + ## it defines the sequence of chaos execution for multiple target pods + ## supported values: serial, parallel + - name: SEQUENCE + value: 'parallel' + + labels: + name: pod-network-corruption + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/runtime-api-usage: "true" + app.kubernetes.io/version: latest + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Injects 100% network packet loss on pods belonging to an app deployment +kind: ChaosExperiment +metadata: + name: pod-network-partition + labels: + name: pod-network-partition + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Namespaced + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # performs CRUD operations on the network policies + - apiGroups: ["networking.k8s.io"] + resources: ["networkpolicies"] + verbs: ["create","delete","list","get"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name pod-network-partition + command: + - /bin/bash + env: + + - name: TOTAL_CHAOS_DURATION + value: '60' # in seconds + + # ime period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + # provide the destination ips + # chaos injection will be triggered for these destination ips + - name: DESTINATION_IPS + value: '' + + # provide the destination hosts + # chaos injection will be triggered for these destination hosts + - name: DESTINATION_HOSTS + value: '' + + # provide network policy type + # support ingress, egress, all values + - name: POLICY_TYPES + value: 'all' + + # provide labels of the destination pods + - name: POD_SELECTOR + value: '' + + # provide labels the destination namespaces + - name: NAMESPACE_SELECTOR + value: '' + + # provide comma separated ports + - name: PORTS + value: '' + + labels: + name: pod-network-partition + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/version: latest + +--- +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Taint the node where application pod is scheduled +kind: ChaosExperiment +metadata: + name: node-taint + labels: + name: node-taint + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Cluster + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec","pods/eviction"] + verbs: ["get","list","create"] + # ignore daemonsets while draining the node + - apiGroups: ["apps"] + resources: ["daemonsets"] + verbs: ["list","get","delete"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + # for experiment to perform node status checks + - apiGroups: [""] + resources: ["nodes"] + verbs: ["get","list","patch","update"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name node-taint + command: + - /bin/bash + env: + + - name: TARGET_NODE + value: '' + + - name: NODE_LABEL + value: '' + + - name: TOTAL_CHAOS_DURATION + value: '60' + + # Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + # set taint label & effect + # key=value:effect or key:effect + - name: TAINTS + value: '' + + labels: + name: node-taint + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/version: latest + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + it injects chaos into the pod which stops outgoing http requests by resetting the TCP connection and then reverts back to the original state after a specified duration +kind: ChaosExperiment +metadata: + name: pod-http-reset-peer + labels: + name: pod-http-reset-peer + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Namespaced + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # deriving the parent/owner details of the pod(if parent is anyof {deployment, statefulset, daemonsets}) + - apiGroups: ["apps"] + resources: ["deployments","statefulsets","replicasets", "daemonsets"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: ["apps.openshift.io"] + resources: ["deploymentconfigs"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: [""] + resources: ["replicationcontrollers"] + verbs: ["get","list"] + # deriving the parent/owner details of the pod(if parent is argo-rollouts) + - apiGroups: ["argoproj.io"] + resources: ["rollouts"] + verbs: ["list","get"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name pod-http-reset-peer + command: + - /bin/bash + env: + + - name: TARGET_CONTAINER + value: '' + + # provide lib image + - name: LIB_IMAGE + value: 'litmuschaos/go-runner:latest' + + # reset timeout specifies after how much duration to reset the connection + - name: RESET_TIMEOUT + value: '0' #in ms + + # port of the target service + - name: TARGET_SERVICE_PORT + value: "80" + + # port on which the proxy will listen + - name: PROXY_PORT + value: "20000" + + # network interface on which the proxy will listen + - name: NETWORK_INTERFACE + value: "eth0" + + - name: TOTAL_CHAOS_DURATION + value: '60' # in seconds + + # Time period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + # percentage of total pods to target + - name: PODS_AFFECTED_PERC + value: '' + + - name: TARGET_PODS + value: '' + + # provide the name of container runtime + # for litmus LIB, it supports docker, containerd, crio + # for pumba LIB, it supports docker only + - name: CONTAINER_RUNTIME + value: 'containerd' + + # provide the socket file path + - name: SOCKET_PATH + value: '/run/containerd/containerd.sock' + + # To select pods on specific node(s) + - name: NODE_LABEL + value: '' + + ## it defines the sequence of chaos execution for multiple target pods + ## supported values: serial, parallel + - name: SEQUENCE + value: 'parallel' + + labels: + name: pod-http-reset-peer + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/version: latest + +--- +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Drain the node where application pod is scheduled +kind: ChaosExperiment +metadata: + name: node-drain + labels: + name: node-drain + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Cluster + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec","pods/eviction"] + verbs: ["get","list","create"] + # ignore daemonsets while draining the node + - apiGroups: ["apps"] + resources: ["daemonsets"] + verbs: ["list","get","delete"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + # for experiment to perform node status checks + - apiGroups: [""] + resources: ["nodes"] + verbs: ["get","list","patch"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name node-drain + command: + - /bin/bash + env: + + - name: TARGET_NODE + value: '' + + - name: NODE_LABEL + value: '' + + - name: TOTAL_CHAOS_DURATION + value: '60' + + # Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + labels: + name: node-drain + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/version: latest + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Deletes a pod belonging to a deployment/statefulset/daemonset +kind: ChaosExperiment +metadata: + name: pod-delete + labels: + name: pod-delete + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Namespaced + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # deriving the parent/owner details of the pod(if parent is anyof {deployment, statefulset, daemonsets}) + - apiGroups: ["apps"] + resources: ["deployments","statefulsets","replicasets", "daemonsets"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: ["apps.openshift.io"] + resources: ["deploymentconfigs"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: [""] + resources: ["replicationcontrollers"] + verbs: ["get","list"] + # deriving the parent/owner details of the pod(if parent is argo-rollouts) + - apiGroups: ["argoproj.io"] + resources: ["rollouts"] + verbs: ["list","get"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name pod-delete + command: + - /bin/bash + env: + + - name: TOTAL_CHAOS_DURATION + value: '15' + + # Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + - name: FORCE + value: 'true' + + - name: CHAOS_INTERVAL + value: '5' + + ## percentage of total pods to target + - name: PODS_AFFECTED_PERC + value: '' + + - name: TARGET_PODS + value: '' + + # To select pods on specific node(s) + - name: NODE_LABEL + value: '' + + ## it defines the sequence of chaos execution for multiple target pods + ## supported values: serial, parallel + - name: SEQUENCE + value: 'parallel' + + labels: + name: pod-delete + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/version: latest + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Injects cpu consumption on pods belonging to an app deployment +kind: ChaosExperiment +metadata: + name: pod-cpu-hog + labels: + name: pod-cpu-hog + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Namespaced + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # deriving the parent/owner details of the pod(if parent is anyof {deployment, statefulset, daemonsets}) + - apiGroups: ["apps"] + resources: ["deployments","statefulsets","replicasets", "daemonsets"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: ["apps.openshift.io"] + resources: ["deploymentconfigs"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: [""] + resources: ["replicationcontrollers"] + verbs: ["get","list"] + # deriving the parent/owner details of the pod(if parent is argo-rollouts) + - apiGroups: ["argoproj.io"] + resources: ["rollouts"] + verbs: ["list","get"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name pod-cpu-hog + command: + - /bin/bash + env: + - name: TOTAL_CHAOS_DURATION + value: '60' + + ## Number of CPU cores to stress + - name: CPU_CORES + value: '1' + + ## LOAD CPU WITH GIVEN PERCENT LOADING FOR THE CPU STRESS WORKERS. + ## 0 IS EFFECTIVELY A SLEEP (NO LOAD) AND 100 IS FULL LOADING + - name: CPU_LOAD + value: '100' + + ## Percentage of total pods to target + - name: PODS_AFFECTED_PERC + value: '' + + ## Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + ## It is used in pumba lib only + - name: LIB_IMAGE + value: 'litmuschaos/go-runner:latest' + + ## It is used in pumba lib only + - name: STRESS_IMAGE + value: 'alexeiled/stress-ng:latest-ubuntu' + + ## provide the cluster runtime + - name: CONTAINER_RUNTIME + value: 'containerd' + + # provide the socket file path + - name: SOCKET_PATH + value: '/run/containerd/containerd.sock' + + - name: TARGET_PODS + value: '' + + # To select pods on specific node(s) + - name: NODE_LABEL + value: '' + + ## it defines the sequence of chaos execution for multiple target pods + ## supported values: serial, parallel + - name: SEQUENCE + value: 'parallel' + + labels: + name: pod-cpu-hog + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/runtime-api-usage: "true" + app.kubernetes.io/version: latest + +--- +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Injects memory consumption on pods belonging to an app deployment +kind: ChaosExperiment +metadata: + name: pod-memory-hog-exec + labels: + name: pod-memory-hog-exec + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Namespaced + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # deriving the parent/owner details of the pod(if parent is anyof {deployment, statefulset, daemonsets}) + - apiGroups: ["apps"] + resources: ["deployments","statefulsets","replicasets", "daemonsets"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: ["apps.openshift.io"] + resources: ["deploymentconfigs"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: [""] + resources: ["replicationcontrollers"] + verbs: ["get","list"] + # deriving the parent/owner details of the pod(if parent is argo-rollouts) + - apiGroups: ["argoproj.io"] + resources: ["rollouts"] + verbs: ["list","get"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name pod-memory-hog-exec + command: + - /bin/bash + env: + - name: TOTAL_CHAOS_DURATION + value: '60' + + ## enter the amount of memory in megabytes to be consumed by the application pod + - name: MEMORY_CONSUMPTION + value: '500' + + ## percentage of total pods to target + - name: PODS_AFFECTED_PERC + value: '' + + ## Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + # The command to kill the chaos process + - name: CHAOS_KILL_COMMAND + value: "kill $(find /proc -name exe -lname '*/dd' 2>&1 | grep -v 'Permission denied' | awk -F/ '{print $(NF-1)}' | head -n 1)" + + ## it defines the sequence of chaos execution for multiple target pods + ## supported values: serial, parallel + - name: SEQUENCE + value: 'parallel' + + - name: TARGET_PODS + value: '' + + labels: + name: pod-memory-hog-exec + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/version: latest + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Kills the kubelet service on the application node to check the resiliency. +kind: ChaosExperiment +metadata: + name: kubelet-service-kill + labels: + name: kubelet-service-kill + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Cluster + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + # for experiment to perform node status checks + - apiGroups: [""] + resources: ["nodes"] + verbs: ["get","list"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name kubelet-service-kill + command: + - /bin/bash + env: + + - name: TOTAL_CHAOS_DURATION + value: '60' # in seconds + + # Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + - name: NODE_LABEL + value: '' + + # provide lib image + - name: LIB_IMAGE + value: 'ubuntu:16.04' + + # provide the target node name + - name: TARGET_NODE + value: '' + + labels: + name: kubelet-service-kill + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/service-kill: "true" + app.kubernetes.io/version: latest + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Give a cpu spike on a node belonging to a deployment +kind: ChaosExperiment +metadata: + name: node-cpu-hog + labels: + name: node-cpu-hog + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Cluster + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + # for experiment to perform node status checks + - apiGroups: [""] + resources: ["nodes"] + verbs: ["get","list"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name node-cpu-hog + command: + - /bin/bash + env: + + - name: TOTAL_CHAOS_DURATION + value: '60' + + # Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + ## ENTER THE NUMBER OF CORES OF CPU FOR CPU HOGGING + ## OPTIONAL VALUE IN CASE OF EMPTY VALUE IT WILL TAKE NODE CPU CAPACITY + - name: NODE_CPU_CORE + value: '' + + ## LOAD CPU WITH GIVEN PERCENT LOADING FOR THE CPU STRESS WORKERS. + ## 0 IS EFFECTIVELY A SLEEP (NO LOAD) AND 100 IS FULL LOADING + - name: CPU_LOAD + value: '100' + + # ENTER THE COMMA SEPARATED TARGET NODES NAME + - name: TARGET_NODES + value: '' + + - name: NODE_LABEL + value: '' + + # provide lib image + - name: LIB_IMAGE + value: 'litmuschaos/go-runner:latest' + + ## percentage of total nodes to target + - name: NODES_AFFECTED_PERC + value: '' + + ## it defines the sequence of chaos execution for multiple target nodes + ## supported values: serial, parallel + - name: SEQUENCE + value: 'parallel' + + labels: + name: node-cpu-hog + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/version: latest + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: "Kills a container belonging to an application pod \n" +kind: ChaosExperiment +metadata: + name: container-kill + labels: + name: container-kill + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Namespaced + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # deriving the parent/owner details of the pod(if parent is anyof {deployment, statefulset, daemonsets}) + - apiGroups: ["apps"] + resources: ["deployments","statefulsets","replicasets", "daemonsets"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: ["apps.openshift.io"] + resources: ["deploymentconfigs"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: [""] + resources: ["replicationcontrollers"] + verbs: ["get","list"] + # deriving the parent/owner details of the pod(if parent is argo-rollouts) + - apiGroups: ["argoproj.io"] + resources: ["rollouts"] + verbs: ["list","get"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name container-kill + command: + - /bin/bash + env: + + - name: TARGET_CONTAINER + value: '' + + # Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + - name: TARGET_PODS + value: '' + + # provide the chaos interval + - name: CHAOS_INTERVAL + value: '10' + + - name: SIGNAL + value: 'SIGKILL' + + # provide the socket file path + - name: SOCKET_PATH + value: '/run/containerd/containerd.sock' + + # provide the name of container runtime + # for litmus LIB, it supports docker, containerd, crio + # for pumba LIB, it supports docker only + - name: CONTAINER_RUNTIME + value: 'containerd' + + # provide the total chaos duration + - name: TOTAL_CHAOS_DURATION + value: '20' + + ## percentage of total pods to target + - name: PODS_AFFECTED_PERC + value: '' + + # To select pods on specific node(s) + - name: NODE_LABEL + value: '' + + - name: LIB_IMAGE + value: 'litmuschaos/go-runner:latest' + + ## it defines the sequence of chaos execution for multiple target pods + ## supported values: serial, parallel + - name: SEQUENCE + value: 'parallel' + + labels: + name: container-kill + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/runtime-api-usage: "true" + app.kubernetes.io/version: latest + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Fillup Ephemeral Storage of a Resource +kind: ChaosExperiment +metadata: + name: disk-fill + labels: + name: disk-fill + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Namespaced + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # deriving the parent/owner details of the pod(if parent is anyof {deployment, statefulset, daemonsets}) + - apiGroups: ["apps"] + resources: ["deployments","statefulsets","replicasets", "daemonsets"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: ["apps.openshift.io"] + resources: ["deploymentconfigs"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: [""] + resources: ["replicationcontrollers"] + verbs: ["get","list"] + # deriving the parent/owner details of the pod(if parent is argo-rollouts) + - apiGroups: ["argoproj.io"] + resources: ["rollouts"] + verbs: ["list","get"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name disk-fill + command: + - /bin/bash + env: + + - name: TARGET_CONTAINER + value: '' + + - name: FILL_PERCENTAGE + value: '80' + + - name: TOTAL_CHAOS_DURATION + value: '60' + + # Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + # provide the data block size + # supported unit is KB + - name: DATA_BLOCK_SIZE + value: '256' + + - name: TARGET_PODS + value: '' + + - name: EPHEMERAL_STORAGE_MEBIBYTES + value: '' + + # To select pods on specific node(s) + - name: NODE_LABEL + value: '' + + ## percentage of total pods to target + - name: PODS_AFFECTED_PERC + value: '' + + - name: LIB_IMAGE + value: 'litmuschaos/go-runner:latest' + + # Provide the container runtime path + # Default set to docker container path + - name: CONTAINER_PATH + value: '/var/lib/docker/containers' + + ## it defines the sequence of chaos execution for multiple target pods + ## supported values: serial, parallel + - name: SEQUENCE + value: 'parallel' + + labels: + name: disk-fill + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/host-path-usage: "true" + app.kubernetes.io/version: latest + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Pod DNS Error injects dns failure/error in target pod containers +kind: ChaosExperiment +metadata: + name: pod-dns-error + labels: + name: pod-dns-error + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Namespaced + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # deriving the parent/owner details of the pod(if parent is anyof {deployment, statefulset, daemonsets}) + - apiGroups: ["apps"] + resources: ["deployments","statefulsets","replicasets", "daemonsets"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: ["apps.openshift.io"] + resources: ["deploymentconfigs"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: [""] + resources: ["replicationcontrollers"] + verbs: ["get","list"] + # deriving the parent/owner details of the pod(if parent is argo-rollouts) + - apiGroups: ["argoproj.io"] + resources: ["rollouts"] + verbs: ["list","get"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + image: "litmuschaos/go-runner:latest" + args: + - -c + - ./experiments -name pod-dns-error + command: + - /bin/bash + env: + - name: TARGET_CONTAINER + value: "" + + # provide lib image + - name: LIB_IMAGE + value: "litmuschaos/go-runner:latest" + + - name: TOTAL_CHAOS_DURATION + value: "60" # in seconds + + # Time period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: "" + + ## percentage of total pods to target + - name: PODS_AFFECTED_PERC + value: "" + + - name: TARGET_PODS + value: "" + + # provide the name of container runtime, it supports docker, containerd, crio + - name: CONTAINER_RUNTIME + value: 'containerd' + + # provide the socket file path + - name: SOCKET_PATH + value: '/run/containerd/containerd.sock' + + ## it defines the sequence of chaos execution for multiple target pods + ## supported values: serial, parallel + - name: SEQUENCE + value: "parallel" + + # list of the target hostnames or kewywords eg. '["litmuschaos","chaosnative.io"]' . If empty all hostnames are targets + - name: TARGET_HOSTNAMES + value: "" + + # can be either exact or substring, determines whether the dns query has to match exactly with one of the targets or can have any of the targets as substring + - name: MATCH_SCHEME + value: "exact" + + labels: + experiment: pod-dns-error + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/runtime-api-usage: "true" + app.kubernetes.io/version: latest + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Restart node +kind: ChaosExperiment +metadata: + name: node-restart + labels: + name: node-restart + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Cluster + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps & secrets details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps","secrets"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + # for experiment to perform node status checks + - apiGroups: [""] + resources: ["nodes"] + verbs: ["get","list"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name node-restart + command: + - /bin/bash + env: + - name: SSH_USER + value: 'root' + + - name: TOTAL_CHAOS_DURATION + value: '60' + + # Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + # provide lib image + - name: LIB_IMAGE + value: "litmuschaos/go-runner:latest" + + # ENTER THE TARGET NODE NAME + - name: TARGET_NODE + value: '' + + - name: NODE_LABEL + value: '' + + # ENTER THE TARGET NODE IP + - name: TARGET_NODE_IP + value: '' + + labels: + name: node-restart + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/version: latest + secrets: + - name: id-rsa + mountPath: /mnt/ + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Injects cpu consumption on pods belonging to an app deployment +kind: ChaosExperiment +metadata: + name: pod-cpu-hog-exec + labels: + name: pod-cpu-hog-exec + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Namespaced + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # deriving the parent/owner details of the pod(if parent is anyof {deployment, statefulset, daemonsets}) + - apiGroups: ["apps"] + resources: ["deployments","statefulsets","replicasets", "daemonsets"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: ["apps.openshift.io"] + resources: ["deploymentconfigs"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: [""] + resources: ["replicationcontrollers"] + verbs: ["get","list"] + # deriving the parent/owner details of the pod(if parent is argo-rollouts) + - apiGroups: ["argoproj.io"] + resources: ["rollouts"] + verbs: ["list","get"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name pod-cpu-hog-exec + command: + - /bin/bash + env: + - name: TOTAL_CHAOS_DURATION + value: '60' + + ## Number of CPU cores to stress + - name: CPU_CORES + value: '1' + + ## Percentage of total pods to target + - name: PODS_AFFECTED_PERC + value: '' + + ## Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + # The command to kill the chaos process + - name: CHAOS_KILL_COMMAND + value: "kill $(find /proc -name exe -lname '*/md5sum' 2>&1 | grep -v 'Permission denied' | awk -F/ '{print $(NF-1)}')" + + - name: TARGET_PODS + value: '' + + ## it defines the sequence of chaos execution for multiple target pods + ## supported values: serial, parallel + - name: SEQUENCE + value: 'parallel' + + labels: + name: pod-cpu-hog-exec + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/version: latest + +--- +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Injects memory consumption on pods belonging to an app deployment +kind: ChaosExperiment +metadata: + name: pod-memory-hog + labels: + name: pod-memory-hog + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Namespaced + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # deriving the parent/owner details of the pod(if parent is anyof {deployment, statefulset, daemonsets}) + - apiGroups: ["apps"] + resources: ["deployments","statefulsets","replicasets", "daemonsets"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: ["apps.openshift.io"] + resources: ["deploymentconfigs"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: [""] + resources: ["replicationcontrollers"] + verbs: ["get","list"] + # deriving the parent/owner details of the pod(if parent is argo-rollouts) + - apiGroups: ["argoproj.io"] + resources: ["rollouts"] + verbs: ["list","get"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name pod-memory-hog + command: + - /bin/bash + env: + - name: TOTAL_CHAOS_DURATION + value: '60' + + ## enter the amount of memory in megabytes to be consumed by the application pod + - name: MEMORY_CONSUMPTION + value: '500' + + ## Number of workers to perform stress + - name: NUMBER_OF_WORKERS + value: '1' + + ## percentage of total pods to target + - name: PODS_AFFECTED_PERC + value: '' + + ## Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + ## It is used in pumba lib only + - name: LIB_IMAGE + value: 'litmuschaos/go-runner:latest' + + ## It is used in pumba lib only + - name: STRESS_IMAGE + value: 'alexeiled/stress-ng:latest-ubuntu' + + ## provide the cluster runtime + - name: CONTAINER_RUNTIME + value: 'containerd' + + # provide the socket file path + - name: SOCKET_PATH + value: '/run/containerd/containerd.sock' + + ## it defines the sequence of chaos execution for multiple target pods + ## supported values: serial, parallel + - name: SEQUENCE + value: 'parallel' + + - name: TARGET_PODS + value: '' + + # To select pods on specific node(s) + - name: NODE_LABEL + value: '' + + labels: + name: pod-memory-hog + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/runtime-api-usage: "true" + app.kubernetes.io/version: latest + +--- +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + IO stress on a app pods belonging to an app deployment +kind: ChaosExperiment +metadata: + name: pod-io-stress + labels: + name: pod-io-stress + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Namespaced + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # deriving the parent/owner details of the pod(if parent is anyof {deployment, statefulset, daemonsets}) + - apiGroups: ["apps"] + resources: ["deployments","statefulsets","replicasets", "daemonsets"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: ["apps.openshift.io"] + resources: ["deploymentconfigs"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: [""] + resources: ["replicationcontrollers"] + verbs: ["get","list"] + # deriving the parent/owner details of the pod(if parent is argo-rollouts) + - apiGroups: ["argoproj.io"] + resources: ["rollouts"] + verbs: ["list","get"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name pod-io-stress + command: + - /bin/bash + env: + - name: TOTAL_CHAOS_DURATION + value: '120' + + ## specify the size as percentage of free space on the file system + ## default value 90 (in percentage) + - name: FILESYSTEM_UTILIZATION_PERCENTAGE + value: '10' + + ## we can specify the size in Gigabyte (Gb) also in place of percentage of free space + ## NOTE: for selecting this option FILESYSTEM_UTILIZATION_PERCENTAGE should be empty + - name: FILESYSTEM_UTILIZATION_BYTES + value: '' + + ## Total number of workers default value is 4 + - name: NUMBER_OF_WORKERS + value: '4' + + ## Percentage of total pods to target + - name: PODS_AFFECTED_PERC + value: '' + + # provide volume mount path + - name: VOLUME_MOUNT_PATH + value: '' + + ## specify the comma separated target pods + - name: TARGET_PODS + value: '' + + # To select pods on specific node(s) + - name: NODE_LABEL + value: '' + + # Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + # provide lib image + - name: LIB_IMAGE + value: 'litmuschaos/go-runner:latest' + + ## provide the cluster runtime + - name: CONTAINER_RUNTIME + value: 'containerd' + + # provide the socket file path + - name: SOCKET_PATH + value: '/run/containerd/containerd.sock' + + ## it defines the sequence of chaos execution for multiple target pods + ## supported values: serial, parallel + - name: SEQUENCE + value: 'parallel' + + labels: + name: pod-io-stress + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/runtime-api-usage: "true" + app.kubernetes.io/version: latest + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Give IO disk stress on a node belonging to a deployment +kind: ChaosExperiment +metadata: + name: node-io-stress + labels: + name: node-io-stress + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Cluster + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + # for experiment to perform node status checks + - apiGroups: [""] + resources: ["nodes"] + verbs: ["get","list"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name node-io-stress + command: + - /bin/bash + env: + + - name: TOTAL_CHAOS_DURATION + value: '120' + + ## specify the size as percentage of free space on the file system + ## default value 90 (in percentage) + - name: FILESYSTEM_UTILIZATION_PERCENTAGE + value: '10' + + ## we can specify the size in Gigabyte (Gb) also in place of percentage of free space + ## NOTE: for selecting this option FILESYSTEM_UTILIZATION_PERCENTAGE should be empty + - name: FILESYSTEM_UTILIZATION_BYTES + value: '' + + ## Number of core of CPU + - name: CPU + value: '1' + + ## Total number of workers default value is 4 + - name: NUMBER_OF_WORKERS + value: '4' + + ## Total number of vm workers + - name: VM_WORKERS + value: '1' + + ## enter the comma separated target nodes name + - name: TARGET_NODES + value: '' + + - name: NODE_LABEL + value: '' + + # Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + # provide lib image + - name: LIB_IMAGE + value: 'litmuschaos/go-runner:latest' + + ## percentage of total nodes to target + - name: NODES_AFFECTED_PERC + value: '' + + ## it defines the sequence of chaos execution for multiple target nodes + ## supported values: serial, parallel + - name: SEQUENCE + value: 'parallel' + + labels: + name: node-io-stress + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/version: latest + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Injects network packet loss on pods belonging to an app deployment +kind: ChaosExperiment +metadata: + name: pod-network-loss + labels: + name: pod-network-loss + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Namespaced + permissions: + # Create and monitor the experiment & helper pods + - apiGroups: [""] + resources: ["pods"] + verbs: ["create","delete","get","list","patch","update", "deletecollection"] + # Performs CRUD operations on the events inside chaosengine and chaosresult + - apiGroups: [""] + resources: ["events"] + verbs: ["create","get","list","patch","update"] + # Fetch configmaps details and mount it to the experiment pod (if specified) + - apiGroups: [""] + resources: ["configmaps"] + verbs: ["get","list",] + # Track and get the runner, experiment, and helper pods log + - apiGroups: [""] + resources: ["pods/log"] + verbs: ["get","list","watch"] + # for creating and managing to execute comands inside target container + - apiGroups: [""] + resources: ["pods/exec"] + verbs: ["get","list","create"] + # deriving the parent/owner details of the pod(if parent is anyof {deployment, statefulset, daemonsets}) + - apiGroups: ["apps"] + resources: ["deployments","statefulsets","replicasets", "daemonsets"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: ["apps.openshift.io"] + resources: ["deploymentconfigs"] + verbs: ["list","get"] + # deriving the parent/owner details of the pod(if parent is deploymentConfig) + - apiGroups: [""] + resources: ["replicationcontrollers"] + verbs: ["get","list"] + # deriving the parent/owner details of the pod(if parent is argo-rollouts) + - apiGroups: ["argoproj.io"] + resources: ["rollouts"] + verbs: ["list","get"] + # for configuring and monitor the experiment job by the chaos-runner pod + - apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] + # for creation, status polling and deletion of litmus chaos resources used within a chaos workflow + - apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update","delete"] + image: "litmuschaos/go-runner:latest" + imagePullPolicy: Always + args: + - -c + - ./experiments -name pod-network-loss + command: + - /bin/bash + env: + + - name: TARGET_CONTAINER + value: '' + + # provide lib image + - name: LIB_IMAGE + value: 'litmuschaos/go-runner:latest' + + - name: NETWORK_INTERFACE + value: 'eth0' + + - name: TC_IMAGE + value: 'gaiadocker/iproute2' + + - name: NETWORK_PACKET_LOSS_PERCENTAGE + value: '100' #in PERCENTAGE + + - name: TOTAL_CHAOS_DURATION + value: '60' # in seconds + + # ime period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + ## percentage of total pods to target + - name: PODS_AFFECTED_PERC + value: '' + + - name: TARGET_PODS + value: '' + + # To select pods on specific node(s) + - name: NODE_LABEL + value: '' + + # provide the name of container runtime + # for litmus LIB, it supports docker, containerd, crio + # for pumba LIB, it supports docker only + - name: CONTAINER_RUNTIME + value: 'containerd' + + # provide the destination ips + # chaos injection will be triggered for these destination ips + - name: DESTINATION_IPS + value: '' + + # provide the destination hosts + # chaos injection will be triggered for these destination hosts + - name: DESTINATION_HOSTS + value: '' + + # provide the socket file path + - name: SOCKET_PATH + value: '/run/containerd/containerd.sock' + + ## it defines the sequence of chaos execution for multiple target pods + ## supported values: serial, parallel + - name: SEQUENCE + value: 'parallel' + + labels: + name: pod-network-loss + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/runtime-api-usage: "true" + app.kubernetes.io/version: latest + +--- +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | +======= +>>>>>>> master It injects the chaos inside the pod which modifies the body of the response from the provided application server to the body string provided by the user and reverts after a specified duration kind: ChaosExperiment metadata: @@ -3088,11 +5547,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL diff --git a/charts/generic/pod-cpu-hog/engine.yaml b/charts/generic/pod-cpu-hog/engine.yaml index d8875e7..dfa9bbb 100644 --- a/charts/generic/pod-cpu-hog/engine.yaml +++ b/charts/generic/pod-cpu-hog/engine.yaml @@ -29,8 +29,8 @@ spec: ## provide the cluster runtime - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' diff --git a/charts/generic/pod-cpu-hog/experiment.yaml b/charts/generic/pod-cpu-hog/experiment.yaml index aea4142..b379903 100644 --- a/charts/generic/pod-cpu-hog/experiment.yaml +++ b/charts/generic/pod-cpu-hog/experiment.yaml @@ -96,11 +96,11 @@ spec: ## provide the cluster runtime - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' - name: TARGET_PODS value: '' diff --git a/charts/generic/pod-dns-error/engine.yaml b/charts/generic/pod-dns-error/engine.yaml index 63f4a16..83fd6bb 100644 --- a/charts/generic/pod-dns-error/engine.yaml +++ b/charts/generic/pod-dns-error/engine.yaml @@ -30,11 +30,11 @@ spec: # provide the name of container runtime, it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: "docker" + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: "/var/run/docker.sock" + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/charts/generic/pod-dns-error/experiment.yaml b/charts/generic/pod-dns-error/experiment.yaml index 078c5c1..fc21808 100644 --- a/charts/generic/pod-dns-error/experiment.yaml +++ b/charts/generic/pod-dns-error/experiment.yaml @@ -88,11 +88,11 @@ spec: # provide the name of container runtime, it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: "docker" + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: "/var/run/docker.sock" + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel diff --git a/charts/generic/pod-dns-spoof/engine.yaml b/charts/generic/pod-dns-spoof/engine.yaml index 88f3a24..a468d88 100644 --- a/charts/generic/pod-dns-spoof/engine.yaml +++ b/charts/generic/pod-dns-spoof/engine.yaml @@ -26,11 +26,11 @@ spec: # provide the name of container runtime, it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: "docker" + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: "/var/run/docker.sock" + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/charts/generic/pod-dns-spoof/experiment.yaml b/charts/generic/pod-dns-spoof/experiment.yaml index f860599..0e6cf5a 100644 --- a/charts/generic/pod-dns-spoof/experiment.yaml +++ b/charts/generic/pod-dns-spoof/experiment.yaml @@ -88,11 +88,11 @@ spec: # provide the name of container runtime, it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: "docker" + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: "/var/run/docker.sock" + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel diff --git a/charts/generic/pod-http-latency/engine.yaml b/charts/generic/pod-http-latency/engine.yaml index 9eb8009..83f891e 100644 --- a/charts/generic/pod-http-latency/engine.yaml +++ b/charts/generic/pod-http-latency/engine.yaml @@ -32,11 +32,11 @@ spec: # provide the name of container runtime # it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/charts/generic/pod-http-latency/experiment.yaml b/charts/generic/pod-http-latency/experiment.yaml index e32d3b4..0a4fb57 100644 --- a/charts/generic/pod-http-latency/experiment.yaml +++ b/charts/generic/pod-http-latency/experiment.yaml @@ -108,11 +108,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL diff --git a/charts/generic/pod-http-modify-body/engine.yaml b/charts/generic/pod-http-modify-body/engine.yaml index cdf0688..fa5305d 100644 --- a/charts/generic/pod-http-modify-body/engine.yaml +++ b/charts/generic/pod-http-modify-body/engine.yaml @@ -30,11 +30,11 @@ spec: # provide the name of container runtime # it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/charts/generic/pod-http-modify-body/experiment.yaml b/charts/generic/pod-http-modify-body/experiment.yaml index 0f987c3..81ec27e 100644 --- a/charts/generic/pod-http-modify-body/experiment.yaml +++ b/charts/generic/pod-http-modify-body/experiment.yaml @@ -109,11 +109,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL diff --git a/charts/generic/pod-http-modify-header/engine.yaml b/charts/generic/pod-http-modify-header/engine.yaml index fce7401..84ee278 100644 --- a/charts/generic/pod-http-modify-header/engine.yaml +++ b/charts/generic/pod-http-modify-header/engine.yaml @@ -36,11 +36,11 @@ spec: # provide the name of container runtime # it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/charts/generic/pod-http-modify-header/experiment.yaml b/charts/generic/pod-http-modify-header/experiment.yaml index 084db86..8a9deca 100644 --- a/charts/generic/pod-http-modify-header/experiment.yaml +++ b/charts/generic/pod-http-modify-header/experiment.yaml @@ -113,11 +113,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL diff --git a/charts/generic/pod-http-reset-peer/engine.yaml b/charts/generic/pod-http-reset-peer/engine.yaml index e685a97..a052368 100644 --- a/charts/generic/pod-http-reset-peer/engine.yaml +++ b/charts/generic/pod-http-reset-peer/engine.yaml @@ -36,11 +36,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/charts/generic/pod-http-reset-peer/experiment.yaml b/charts/generic/pod-http-reset-peer/experiment.yaml index 1ec823e..f89099c 100644 --- a/charts/generic/pod-http-reset-peer/experiment.yaml +++ b/charts/generic/pod-http-reset-peer/experiment.yaml @@ -108,11 +108,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL diff --git a/charts/generic/pod-http-status-code/engine.yaml b/charts/generic/pod-http-status-code/engine.yaml index 36f9cfc..95f368e 100644 --- a/charts/generic/pod-http-status-code/engine.yaml +++ b/charts/generic/pod-http-status-code/engine.yaml @@ -41,11 +41,11 @@ spec: # provide the name of container runtime # it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/charts/generic/pod-http-status-code/experiment.yaml b/charts/generic/pod-http-status-code/experiment.yaml index 9470cc9..7162037 100644 --- a/charts/generic/pod-http-status-code/experiment.yaml +++ b/charts/generic/pod-http-status-code/experiment.yaml @@ -115,11 +115,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL diff --git a/charts/generic/pod-io-stress/engine.yaml b/charts/generic/pod-io-stress/engine.yaml index 7a53571..4b49e1d 100644 --- a/charts/generic/pod-io-stress/engine.yaml +++ b/charts/generic/pod-io-stress/engine.yaml @@ -30,8 +30,8 @@ spec: ## provide the cluster runtime - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' diff --git a/charts/generic/pod-io-stress/experiment.yaml b/charts/generic/pod-io-stress/experiment.yaml index 7ce8cb6..ea37036 100644 --- a/charts/generic/pod-io-stress/experiment.yaml +++ b/charts/generic/pod-io-stress/experiment.yaml @@ -110,11 +110,11 @@ spec: ## provide the cluster runtime - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel diff --git a/charts/generic/pod-memory-hog/engine.yaml b/charts/generic/pod-memory-hog/engine.yaml index e5b9c52..d039dee 100644 --- a/charts/generic/pod-memory-hog/engine.yaml +++ b/charts/generic/pod-memory-hog/engine.yaml @@ -29,8 +29,8 @@ spec: ## provide the cluster runtime - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' diff --git a/charts/generic/pod-memory-hog/experiment.yaml b/charts/generic/pod-memory-hog/experiment.yaml index d08e728..2c7afff 100644 --- a/charts/generic/pod-memory-hog/experiment.yaml +++ b/charts/generic/pod-memory-hog/experiment.yaml @@ -96,11 +96,11 @@ spec: ## provide the cluster runtime - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel diff --git a/charts/generic/pod-network-corruption/engine.yaml b/charts/generic/pod-network-corruption/engine.yaml index c8cebb5..63570ea 100644 --- a/charts/generic/pod-network-corruption/engine.yaml +++ b/charts/generic/pod-network-corruption/engine.yaml @@ -24,11 +24,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' - name: NETWORK_PACKET_CORRUPTION_PERCENTAGE value: '100' #in PERCENTAGE diff --git a/charts/generic/pod-network-corruption/experiment.yaml b/charts/generic/pod-network-corruption/experiment.yaml index cd8af95..af626a1 100644 --- a/charts/generic/pod-network-corruption/experiment.yaml +++ b/charts/generic/pod-network-corruption/experiment.yaml @@ -105,7 +105,7 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the destination ips # chaos injection will be triggered for these destination ips @@ -119,7 +119,7 @@ spec: # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel diff --git a/charts/generic/pod-network-duplication/engine.yaml b/charts/generic/pod-network-duplication/engine.yaml index d726f75..7c1faed 100644 --- a/charts/generic/pod-network-duplication/engine.yaml +++ b/charts/generic/pod-network-duplication/engine.yaml @@ -28,11 +28,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/charts/generic/pod-network-duplication/experiment.yaml b/charts/generic/pod-network-duplication/experiment.yaml index a01e7df..21627d0 100644 --- a/charts/generic/pod-network-duplication/experiment.yaml +++ b/charts/generic/pod-network-duplication/experiment.yaml @@ -102,7 +102,7 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the destination ips # chaos injection will be triggered for these destination ips @@ -116,7 +116,7 @@ spec: # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel diff --git a/charts/generic/pod-network-latency/engine.yaml b/charts/generic/pod-network-latency/engine.yaml index 07aa28d..aa4396c 100644 --- a/charts/generic/pod-network-latency/engine.yaml +++ b/charts/generic/pod-network-latency/engine.yaml @@ -30,11 +30,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/charts/generic/pod-network-latency/experiment.yaml b/charts/generic/pod-network-latency/experiment.yaml index 7400644..1159c20 100644 --- a/charts/generic/pod-network-latency/experiment.yaml +++ b/charts/generic/pod-network-latency/experiment.yaml @@ -104,7 +104,7 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the destination ips # chaos injection will be triggered for these destination ips @@ -118,7 +118,7 @@ spec: # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL diff --git a/charts/generic/pod-network-loss/engine.yaml b/charts/generic/pod-network-loss/engine.yaml index 36718dc..96599ae 100644 --- a/charts/generic/pod-network-loss/engine.yaml +++ b/charts/generic/pod-network-loss/engine.yaml @@ -28,11 +28,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/charts/generic/pod-network-loss/experiment.yaml b/charts/generic/pod-network-loss/experiment.yaml index e03565c..aefe99e 100644 --- a/charts/generic/pod-network-loss/experiment.yaml +++ b/charts/generic/pod-network-loss/experiment.yaml @@ -105,7 +105,7 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the destination ips # chaos injection will be triggered for these destination ips @@ -119,7 +119,7 @@ spec: # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel diff --git a/experiments/generic/container-kill/engine.yaml b/experiments/generic/container-kill/engine.yaml index 19ccab1..399084c 100644 --- a/experiments/generic/container-kill/engine.yaml +++ b/experiments/generic/container-kill/engine.yaml @@ -28,11 +28,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' - name: PODS_AFFECTED_PERC value: '' diff --git a/experiments/generic/container-kill/engine_nginx_getstarted.yaml b/experiments/generic/container-kill/engine_nginx_getstarted.yaml index 1f98146..df1430a 100644 --- a/experiments/generic/container-kill/engine_nginx_getstarted.yaml +++ b/experiments/generic/container-kill/engine_nginx_getstarted.yaml @@ -32,11 +32,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' - name: PODS_AFFECTED_PERC value: '' diff --git a/experiments/generic/container-kill/experiment.yaml b/experiments/generic/container-kill/experiment.yaml index 826a56e..bf60b7d 100644 --- a/experiments/generic/container-kill/experiment.yaml +++ b/experiments/generic/container-kill/experiment.yaml @@ -89,13 +89,13 @@ spec: # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # provide the name of container runtime # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the total chaos duration - name: TOTAL_CHAOS_DURATION diff --git a/experiments/generic/experiments.yaml b/experiments/generic/experiments.yaml index 1f0811d..c232721 100644 --- a/experiments/generic/experiments.yaml +++ b/experiments/generic/experiments.yaml @@ -109,7 +109,7 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the destination ips # chaos injection will be triggered for these destination ips @@ -123,7 +123,7 @@ spec: # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel @@ -254,11 +254,11 @@ spec: ## provide the cluster runtime - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel @@ -363,11 +363,11 @@ spec: # provide the name of container runtime, it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: "docker" + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: "/var/run/docker.sock" + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel @@ -590,13 +590,13 @@ spec: # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # provide the name of container runtime # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the total chaos duration - name: TOTAL_CHAOS_DURATION @@ -737,7 +737,7 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the destination ips # chaos injection will be triggered for these destination ips @@ -751,7 +751,7 @@ spec: # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel @@ -1200,11 +1200,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL @@ -1977,11 +1977,11 @@ spec: ## provide the cluster runtime - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' - name: TARGET_PODS value: '' @@ -2111,7 +2111,7 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the destination ips # chaos injection will be triggered for these destination ips @@ -2125,7 +2125,7 @@ spec: # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel @@ -2356,7 +2356,7 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the destination ips # chaos injection will be triggered for these destination ips @@ -2370,7 +2370,7 @@ spec: # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL @@ -2597,11 +2597,11 @@ spec: # provide the name of container runtime, it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: "docker" + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: "/var/run/docker.sock" + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel @@ -2830,11 +2830,11 @@ spec: ## provide the cluster runtime - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel diff --git a/experiments/generic/pod-cpu-hog/engine.yaml b/experiments/generic/pod-cpu-hog/engine.yaml index d8875e7..dfa9bbb 100644 --- a/experiments/generic/pod-cpu-hog/engine.yaml +++ b/experiments/generic/pod-cpu-hog/engine.yaml @@ -29,8 +29,8 @@ spec: ## provide the cluster runtime - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' diff --git a/experiments/generic/pod-cpu-hog/experiment.yaml b/experiments/generic/pod-cpu-hog/experiment.yaml index 45634a5..e49ce0b 100644 --- a/experiments/generic/pod-cpu-hog/experiment.yaml +++ b/experiments/generic/pod-cpu-hog/experiment.yaml @@ -101,11 +101,11 @@ spec: ## provide the cluster runtime - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' - name: TARGET_PODS value: '' diff --git a/experiments/generic/pod-dns-error/engine.yaml b/experiments/generic/pod-dns-error/engine.yaml index 63f4a16..83fd6bb 100644 --- a/experiments/generic/pod-dns-error/engine.yaml +++ b/experiments/generic/pod-dns-error/engine.yaml @@ -30,11 +30,11 @@ spec: # provide the name of container runtime, it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: "docker" + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: "/var/run/docker.sock" + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/experiments/generic/pod-dns-error/experiment.yaml b/experiments/generic/pod-dns-error/experiment.yaml index 078c5c1..fc21808 100644 --- a/experiments/generic/pod-dns-error/experiment.yaml +++ b/experiments/generic/pod-dns-error/experiment.yaml @@ -88,11 +88,11 @@ spec: # provide the name of container runtime, it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: "docker" + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: "/var/run/docker.sock" + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel diff --git a/experiments/generic/pod-dns-spoof/engine.yaml b/experiments/generic/pod-dns-spoof/engine.yaml index 88f3a24..a468d88 100644 --- a/experiments/generic/pod-dns-spoof/engine.yaml +++ b/experiments/generic/pod-dns-spoof/engine.yaml @@ -26,11 +26,11 @@ spec: # provide the name of container runtime, it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: "docker" + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: "/var/run/docker.sock" + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/experiments/generic/pod-dns-spoof/experiment.yaml b/experiments/generic/pod-dns-spoof/experiment.yaml index f860599..0e6cf5a 100644 --- a/experiments/generic/pod-dns-spoof/experiment.yaml +++ b/experiments/generic/pod-dns-spoof/experiment.yaml @@ -88,11 +88,11 @@ spec: # provide the name of container runtime, it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: "docker" + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: "/var/run/docker.sock" + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel diff --git a/experiments/generic/pod-http-latency/engine.yaml b/experiments/generic/pod-http-latency/engine.yaml index bc226d8..ed00d91 100644 --- a/experiments/generic/pod-http-latency/engine.yaml +++ b/experiments/generic/pod-http-latency/engine.yaml @@ -30,11 +30,11 @@ spec: # provide the name of container runtime # it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/experiments/generic/pod-http-latency/experiment.yaml b/experiments/generic/pod-http-latency/experiment.yaml index bcc4b6d..f7ae573 100644 --- a/experiments/generic/pod-http-latency/experiment.yaml +++ b/experiments/generic/pod-http-latency/experiment.yaml @@ -117,11 +117,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL diff --git a/experiments/generic/pod-http-modify-body/engine.yaml b/experiments/generic/pod-http-modify-body/engine.yaml index 1956c53..918ae07 100644 --- a/experiments/generic/pod-http-modify-body/engine.yaml +++ b/experiments/generic/pod-http-modify-body/engine.yaml @@ -30,11 +30,11 @@ spec: # provide the name of container runtime # it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/experiments/generic/pod-http-modify-body/experiment.yaml b/experiments/generic/pod-http-modify-body/experiment.yaml index 4add2bc..13cd635 100644 --- a/experiments/generic/pod-http-modify-body/experiment.yaml +++ b/experiments/generic/pod-http-modify-body/experiment.yaml @@ -129,11 +129,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL diff --git a/experiments/generic/pod-http-modify-header/engine.yaml b/experiments/generic/pod-http-modify-header/engine.yaml index fce7401..84ee278 100644 --- a/experiments/generic/pod-http-modify-header/engine.yaml +++ b/experiments/generic/pod-http-modify-header/engine.yaml @@ -36,11 +36,11 @@ spec: # provide the name of container runtime # it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/experiments/generic/pod-http-modify-header/experiment.yaml b/experiments/generic/pod-http-modify-header/experiment.yaml index 31106dd..77dd74d 100644 --- a/experiments/generic/pod-http-modify-header/experiment.yaml +++ b/experiments/generic/pod-http-modify-header/experiment.yaml @@ -123,11 +123,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL diff --git a/experiments/generic/pod-http-reset-peer/engine.yaml b/experiments/generic/pod-http-reset-peer/engine.yaml index e685a97..a052368 100644 --- a/experiments/generic/pod-http-reset-peer/engine.yaml +++ b/experiments/generic/pod-http-reset-peer/engine.yaml @@ -36,11 +36,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/experiments/generic/pod-http-reset-peer/experiment.yaml b/experiments/generic/pod-http-reset-peer/experiment.yaml index f5f6f83..f497c53 100644 --- a/experiments/generic/pod-http-reset-peer/experiment.yaml +++ b/experiments/generic/pod-http-reset-peer/experiment.yaml @@ -118,11 +118,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL diff --git a/experiments/generic/pod-http-status-code/engine.yaml b/experiments/generic/pod-http-status-code/engine.yaml index 72c1169..1aa1218 100644 --- a/experiments/generic/pod-http-status-code/engine.yaml +++ b/experiments/generic/pod-http-status-code/engine.yaml @@ -44,11 +44,11 @@ spec: # provide the name of container runtime # it supports docker, containerd, crio - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/experiments/generic/pod-http-status-code/experiment.yaml b/experiments/generic/pod-http-status-code/experiment.yaml index 663202b..d649d92 100644 --- a/experiments/generic/pod-http-status-code/experiment.yaml +++ b/experiments/generic/pod-http-status-code/experiment.yaml @@ -140,11 +140,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL diff --git a/experiments/generic/pod-io-stress/engine.yaml b/experiments/generic/pod-io-stress/engine.yaml index 7a53571..4b49e1d 100644 --- a/experiments/generic/pod-io-stress/engine.yaml +++ b/experiments/generic/pod-io-stress/engine.yaml @@ -30,8 +30,8 @@ spec: ## provide the cluster runtime - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' diff --git a/experiments/generic/pod-io-stress/experiment.yaml b/experiments/generic/pod-io-stress/experiment.yaml index 40a4c74..4594342 100644 --- a/experiments/generic/pod-io-stress/experiment.yaml +++ b/experiments/generic/pod-io-stress/experiment.yaml @@ -115,11 +115,11 @@ spec: ## provide the cluster runtime - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel diff --git a/experiments/generic/pod-memory-hog/engine.yaml b/experiments/generic/pod-memory-hog/engine.yaml index e5b9c52..d039dee 100644 --- a/experiments/generic/pod-memory-hog/engine.yaml +++ b/experiments/generic/pod-memory-hog/engine.yaml @@ -29,8 +29,8 @@ spec: ## provide the cluster runtime - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' diff --git a/experiments/generic/pod-memory-hog/experiment.yaml b/experiments/generic/pod-memory-hog/experiment.yaml index 562182f..a8dccab 100644 --- a/experiments/generic/pod-memory-hog/experiment.yaml +++ b/experiments/generic/pod-memory-hog/experiment.yaml @@ -101,11 +101,11 @@ spec: ## provide the cluster runtime - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel diff --git a/experiments/generic/pod-network-corruption/engine.yaml b/experiments/generic/pod-network-corruption/engine.yaml index c8cebb5..63570ea 100644 --- a/experiments/generic/pod-network-corruption/engine.yaml +++ b/experiments/generic/pod-network-corruption/engine.yaml @@ -24,11 +24,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' - name: NETWORK_PACKET_CORRUPTION_PERCENTAGE value: '100' #in PERCENTAGE diff --git a/experiments/generic/pod-network-corruption/experiment.yaml b/experiments/generic/pod-network-corruption/experiment.yaml index 623b58d..9285a54 100644 --- a/experiments/generic/pod-network-corruption/experiment.yaml +++ b/experiments/generic/pod-network-corruption/experiment.yaml @@ -109,7 +109,7 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the destination ips # chaos injection will be triggered for these destination ips @@ -133,7 +133,7 @@ spec: # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel diff --git a/experiments/generic/pod-network-duplication/engine.yaml b/experiments/generic/pod-network-duplication/engine.yaml index d726f75..7c1faed 100644 --- a/experiments/generic/pod-network-duplication/engine.yaml +++ b/experiments/generic/pod-network-duplication/engine.yaml @@ -28,11 +28,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/experiments/generic/pod-network-duplication/experiment.yaml b/experiments/generic/pod-network-duplication/experiment.yaml index b1f78f1..8ca79e3 100644 --- a/experiments/generic/pod-network-duplication/experiment.yaml +++ b/experiments/generic/pod-network-duplication/experiment.yaml @@ -106,7 +106,7 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the destination ips # chaos injection will be triggered for these destination ips @@ -130,7 +130,7 @@ spec: # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel diff --git a/experiments/generic/pod-network-latency/engine.yaml b/experiments/generic/pod-network-latency/engine.yaml index 07aa28d..aa4396c 100644 --- a/experiments/generic/pod-network-latency/engine.yaml +++ b/experiments/generic/pod-network-latency/engine.yaml @@ -30,11 +30,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/experiments/generic/pod-network-latency/experiment.yaml b/experiments/generic/pod-network-latency/experiment.yaml index ebea9f5..4b62332 100644 --- a/experiments/generic/pod-network-latency/experiment.yaml +++ b/experiments/generic/pod-network-latency/experiment.yaml @@ -108,7 +108,7 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the destination ips # chaos injection will be triggered for these destination ips @@ -132,7 +132,7 @@ spec: # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' # To select pods on specific node(s) - name: NODE_LABEL diff --git a/experiments/generic/pod-network-loss/engine.yaml b/experiments/generic/pod-network-loss/engine.yaml index 36718dc..96599ae 100644 --- a/experiments/generic/pod-network-loss/engine.yaml +++ b/experiments/generic/pod-network-loss/engine.yaml @@ -28,11 +28,11 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## percentage of total pods to target - name: PODS_AFFECTED_PERC diff --git a/experiments/generic/pod-network-loss/experiment.yaml b/experiments/generic/pod-network-loss/experiment.yaml index c33f57a..1a3da51 100644 --- a/experiments/generic/pod-network-loss/experiment.yaml +++ b/experiments/generic/pod-network-loss/experiment.yaml @@ -109,7 +109,7 @@ spec: # for litmus LIB, it supports docker, containerd, crio # for pumba LIB, it supports docker only - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' # provide the destination ips # chaos injection will be triggered for these destination ips @@ -133,7 +133,7 @@ spec: # provide the socket file path - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' ## it defines the sequence of chaos execution for multiple target pods ## supported values: serial, parallel diff --git a/workflows/bank-of-anthos/workflow.yaml b/workflows/bank-of-anthos/workflow.yaml index 887ff46..eb03a9a 100644 --- a/workflows/bank-of-anthos/workflow.yaml +++ b/workflows/bank-of-anthos/workflow.yaml @@ -96,9 +96,9 @@ spec: - name: NETWORK_PACKET_LOSS_PERCENTAGE value: '100' - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' container: image: litmuschaos/litmus-checker:latest args: ["-file=/tmp/chaosengine.yaml","-saveName=/tmp/engine-name"] diff --git a/workflows/bank-of-anthos/workflow_cron.yaml b/workflows/bank-of-anthos/workflow_cron.yaml index d8b7455..9fecb77 100644 --- a/workflows/bank-of-anthos/workflow_cron.yaml +++ b/workflows/bank-of-anthos/workflow_cron.yaml @@ -100,9 +100,9 @@ spec: - name: NETWORK_PACKET_LOSS_PERCENTAGE value: '100' - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' container: image: litmuschaos/litmus-checker:latest args: ["-file=/tmp/chaosengine.yaml","-saveName=/tmp/engine-name"] diff --git a/workflows/sock-shop-promProbe/workflow.yaml b/workflows/sock-shop-promProbe/workflow.yaml index 162b5e6..ee0b0d8 100644 --- a/workflows/sock-shop-promProbe/workflow.yaml +++ b/workflows/sock-shop-promProbe/workflow.yaml @@ -334,9 +334,9 @@ spec: - name: NETWORK_PACKET_LOSS_PERCENTAGE value: '100' - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' container: image: litmuschaos/litmus-checker:latest args: ["-file=/tmp/chaosengine.yaml","-saveName=/tmp/engine-name"] diff --git a/workflows/sock-shop-promProbe/workflow_cron.yaml b/workflows/sock-shop-promProbe/workflow_cron.yaml index 1033117..c5fe599 100644 --- a/workflows/sock-shop-promProbe/workflow_cron.yaml +++ b/workflows/sock-shop-promProbe/workflow_cron.yaml @@ -338,9 +338,9 @@ spec: - name: NETWORK_PACKET_LOSS_PERCENTAGE value: '100' - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' container: image: litmuschaos/litmus-checker:latest args: ["-file=/tmp/chaosengine.yaml","-saveName=/tmp/engine-name"] diff --git a/workflows/sock-shop/workflow.yaml b/workflows/sock-shop/workflow.yaml index 722f9f9..85e397b 100644 --- a/workflows/sock-shop/workflow.yaml +++ b/workflows/sock-shop/workflow.yaml @@ -337,9 +337,9 @@ spec: - name: NETWORK_PACKET_LOSS_PERCENTAGE value: '100' - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' container: image: litmuschaos/litmus-checker:latest args: ["-file=/tmp/chaosengine.yaml","-saveName=/tmp/engine-name"] diff --git a/workflows/sock-shop/workflow_cron.yaml b/workflows/sock-shop/workflow_cron.yaml index d39f00e..a2406d5 100644 --- a/workflows/sock-shop/workflow_cron.yaml +++ b/workflows/sock-shop/workflow_cron.yaml @@ -341,9 +341,9 @@ spec: - name: NETWORK_PACKET_LOSS_PERCENTAGE value: '100' - name: CONTAINER_RUNTIME - value: 'docker' + value: 'containerd' - name: SOCKET_PATH - value: '/var/run/docker.sock' + value: '/run/containerd/containerd.sock' container: image: litmuschaos/litmus-checker:latest args: ["-file=/tmp/chaosengine.yaml","-saveName=/tmp/engine-name"]