Files
litmus-hub/charts/openebs/experiments.yaml
2020-06-11 12:21:19 +00:00

1033 lines
22 KiB
YAML

---
---
apiVersion: litmuschaos.io/v1alpha1
description:
message: |
Kill the cstor target/Jiva controller container and check if gets created again
kind: ChaosExperiment
metadata:
labels:
litmuschaos.io/name: openebs
name: openebs-target-container-failure
version: 0.1.13
spec:
definition:
scope: Cluster
permissions:
- apiGroups:
- ""
- "apps"
- "batch"
- "litmuschaos.io"
- "storage.k8s.io"
resources:
- "jobs"
- "pods"
- "events"
- "pods/exec"
- "pods/log"
- "configmaps"
- "secrets"
- "persistentvolumeclaims"
- "storageclasses"
- "persistentvolumes"
- "chaosengines"
- "chaosexperiments"
- "chaosresults"
verbs:
- "create"
- "delete"
- "get"
- "list"
- "patch"
- "update"
image: "litmuschaos/ansible-runner:latest"
imagePullPolicy: Always
args:
- -c
- ansible-playbook ./experiments/openebs/openebs-target-container-failure/openebs_target_container_failure_ansible_logic.yml -i /etc/ansible/hosts -vv; exit 0
command:
- /bin/bash
env:
- name: ANSIBLE_STDOUT_CALLBACK
value: 'default'
- name: OPENEBS_NAMESPACE
value: 'openebs'
- name: APP_PVC
value: ''
# LIB_IMAGE can be - gaiaadm/pumba:0.6.5, gprasath/crictl:ci
# For pumba image use : gaiaadm/pumba:0.6.5
# For containerd image use : gprasath/crictl:ci
- name: LIB_IMAGE
value: 'gaiaadm/pumba:0.6.5'
# Specify the container runtime used , to pick the relevant chaos util
- name: CONTAINER_RUNTIME
value: 'docker'
# TARGET_CONTAINER values: cstor-volume-mgmt , cstor-istgt
# For cstor-volume-istgt container kill use : cstor-istgt
# For volume-mgmt-kill container use : cstor-volume-mgmt
- name: TARGET_CONTAINER
value: 'cstor-volume-mgmt'
- name: FORCE
value: 'true'
- name: LIVENESS_APP_LABEL
value: ''
- name: LIVENESS_APP_NAMESPACE
value: ''
- name: DATA_PERSISTENCE
value: ''
- name: DEPLOY_TYPE
value: 'deployment'
# provide the chaos interval
- name: CHAOS_INTERVAL
value: '10'
# provide the total chaos duration
- name: TOTAL_CHAOS_DURATION
value: '20'
- name: SOAK_TIME
value: '60'
labels:
name: openebs-target-container-failure
#configmaps:
#- name: openebs-target-container-failure
# mountPath: /mnt
---
---
apiVersion: litmuschaos.io/v1alpha1
description:
message: |
OpenEBS Pool Disk Loss contains chaos to disrupt state of infra resources. Experiments can inject disk loss against openEBS pool.
kind: ChaosExperiment
metadata:
labels:
litmuschaos.io/name: openebs
name: openebs-pool-disk-loss
version: 0.1.3
spec:
definition:
scope: Cluster
permissions:
- apiGroups:
- ""
- "apps"
- "litmuschaos.io"
- "batch"
- "extensions"
- "storage.k8s.io"
- "openebs.io"
resources:
- "pods"
- "jobs"
- "pods/log"
- "events"
- "pods/exec"
- "cstorpools"
- "configmaps"
- "secrets"
- "storageclasses"
- "persistentvolumes"
- "persistentvolumeclaims"
- "cstorvolumereplicas"
- "chaosexperiments"
- "chaosresults"
- "chaosengines"
verbs:
- "create"
- "list"
- "get"
- "patch"
- "update"
- "delete"
image: "litmuschaos/ansible-runner:latest"
imagePullPolicy: Always
args:
- -c
- ansible-playbook ./experiments/openebs/openebs-pool-disk-loss/openebs_pool_disk_loss_ansible_logic.yml -i /etc/ansible/hosts -vv; exit 0
command:
- /bin/bash
env:
- name: ANSIBLE_STDOUT_CALLBACK
value: 'default'
- name: TOTAL_CHAOS_DURATION
value: '60'
# Period to wait before injection of chaos in sec
- name: RAMP_TIME
value: ''
# GKE and AWS supported
- name: CLOUD_PLATFORM
value: 'GKE'
- name: PROJECT_ID
value: ''
- name: NODE_NAME
value: ''
- name: DISK_NAME
value: ''
- name: ZONE_NAME
value: ''
- name: DEVICE_NAME
value: ''
- name: LIVENESS_APP_LABEL
value: ''
- name: LIVENESS_APP_NAMESPACE
value: ''
- name: DATA_PERSISTENCE
value: ''
- name: OPENEBS_NAMESPACE
value: 'openebs'
labels:
name: openebs-pool-disk-loss
configmaps:
- name: openebs-pool-disk-loss
mountPath: /mnt/
secrets:
- name: cloud-secret
mountPath: /tmp/
---
---
apiVersion: litmuschaos.io/v1alpha1
description:
message: |
Kill the cstor target/Jiva controller pod and check if gets created again
kind: ChaosExperiment
metadata:
labels:
litmuschaos.io/name: openebs
name: openebs-target-pod-failure
version: 0.1.11
spec:
definition:
scope: Cluster
permissions:
- apiGroups:
- ""
- "extensions"
- "apps"
- "batch"
- "litmuschaos.io"
- "storage.k8s.io"
resources:
- "deployments"
- "jobs"
- "events"
- "pods"
- "pods/log"
- "pods/exec"
- "configmaps"
- "secrets"
- "services"
- "chaosengines"
- "chaosexperiments"
- "chaosresults"
- "persistentvolumeclaims"
- "storageclasses"
- "persistentvolumes"
verbs:
- "create"
- "get"
- "delete"
- "list"
- "patch"
- "update"
- apiGroups:
- ""
resources:
- "nodes"
verbs:
- "get"
- "list"
image: "litmuschaos/ansible-runner:latest"
imagePullPolicy: Always
args:
- -c
- ansible-playbook ./experiments/openebs/openebs-target-pod-failure/openebs_target_pod_failure_ansible_logic.yml -i /etc/ansible/hosts -vv; exit 0
command:
- /bin/bash
env:
- name: ANSIBLE_STDOUT_CALLBACK
value: 'default'
- name: OPENEBS_NAMESPACE
value: 'openebs'
- name: APP_PVC
value: ''
- name: FORCE
value: 'true'
- name: LIVENESS_APP_LABEL
value: ''
- name: LIVENESS_APP_NAMESPACE
value: ''
- name: DATA_PERSISTENCE
value: ''
- name: TOTAL_CHAOS_DURATION
value: '60'
# provide the kill count
- name: KILL_COUNT
value: ''
- name: CHAOS_INTERVAL
value: '15'
- name: DEPLOY_TYPE
value: 'deployment'
labels:
name: openebs-target-pod-failure
#configmaps:
#- name: openebs-target-pod-failure
# mountPath: /mnt
---
---
apiVersion: litmuschaos.io/v1alpha1
description:
message: |
Kill all openebs control plane pod and check if gets scheduled again
kind: ChaosExperiment
metadata:
labels:
litmuschaos.io/name: openebs
name: openebs-control-plane-chaos
version: 0.1.4
spec:
definition:
scope: Namespaced
permissions:
- apiGroups:
- ""
- "litmuschaos.io"
- "batch"
- "apps"
resources:
- "pods"
- "pods/log"
- "deployments"
- "events"
- "jobs"
- "configmaps"
- "chaosengines"
- "chaosexperiments"
- "chaosresults"
verbs:
- "create"
- "list"
- "get"
- "patch"
- "update"
- "delete"
- apiGroups:
- ""
resources:
- "nodes"
verbs:
- "get"
- "list"
image: "litmuschaos/ansible-runner:latest"
imagePullPolicy: Always
args:
- -c
- ansible-playbook ./experiments/openebs/openebs-control-plane-chaos/openebs_control_plane_chaos_ansible_logic.yml -i /etc/ansible/hosts -vv; exit 0
command:
- /bin/bash
env:
- name: ANSIBLE_STDOUT_CALLBACK
value: 'default'
- name: OPENEBS_NAMESPACE
value: 'openebs'
## Period to wait before injection of chaos
- name: RAMP_TIME
value: ''
- name: FORCE
value: ''
## env var that describes the library used to execute the chaos
## default: litmus. Supported values: litmus, powerfulseal
- name: LIB
value: ''
labels:
name: openebs-control-plane-chaos
---
apiVersion: litmuschaos.io/v1alpha1
description:
message: |
Network delay to target pod belonging to a deployment/statefulset/daemonset
kind: ChaosExperiment
metadata:
labels:
litmuschaos.io/name: openebs
name: openebs-target-network-delay
version: 0.1.12
spec:
definition:
scope: Cluster
permissions:
- apiGroups:
- ""
- "extensions"
- "apps"
- "batch"
- "litmuschaos.io"
- "storage.k8s.io"
resources:
- "jobs"
- "pods"
- "services"
- "events"
- "pods/exec"
- "pods/log"
- "configmaps"
- "secrets"
- "persistentvolumeclaims"
- "storageclasses"
- "persistentvolumes"
- "chaosengines"
- "chaosexperiments"
- "chaosresults"
verbs:
- "create"
- "get"
- "delete"
- "list"
- "patch"
- "update"
image: "litmuschaos/ansible-runner:latest"
imagePullPolicy: Always
args:
- -c
- ansible-playbook ./experiments/openebs/openebs-target-network-delay/openebs_target_network_delay_ansible_logic.yml -i /etc/ansible/hosts -vv; exit 0
command:
- /bin/bash
env:
- name: ANSIBLE_STDOUT_CALLBACK
value: 'default'
- name: OPENEBS_NAMESPACE
value: 'openebs'
- name: APP_PVC
value: ''
# only pumba supported
# For pumba image use : gaiaadm/pumba:0.6.5
- name: LIB_IMAGE
value: 'gaiaadm/pumba:0.6.5'
- name: NETWORK_DELAY
value: '60000' # in milliseconds
- name: TOTAL_CHAOS_DURATION
value: '60' # in seconds
- name: LIVENESS_APP_LABEL
value: ''
- name: LIVENESS_APP_NAMESPACE
value: ''
- name: DATA_PERSISTENCE
value: ''
labels:
name: openebs-target-network-delay
#configmaps:
#- name: openebs-target-network-delay
# mountPath: /mnt
---
apiVersion: litmuschaos.io/v1alpha1
description:
message: |
Network loss to target pod belonging to a OpenEBS PVC
kind: ChaosExperiment
metadata:
labels:
litmuschaos.io/name: openebs
name: openebs-target-network-loss
version: 0.1.13
spec:
definition:
scope: Cluster
permissions:
- apiGroups:
- ""
- "extensions"
- "apps"
- "batch"
- "litmuschaos.io"
- "storage.k8s.io"
resources:
- "jobs"
- "pods"
- "events"
- "services"
- "pods/log"
- "pods/exec"
- "configmaps"
- "secrets"
- "persistentvolumeclaims"
- "storageclasses"
- "persistentvolumes"
- "chaosengines"
- "chaosexperiments"
- "chaosresults"
verbs:
- "create"
- "get"
- "delete"
- "list"
- "patch"
- "update"
image: "litmuschaos/ansible-runner:latest"
imagePullPolicy: Always
args:
- -c
- ansible-playbook ./experiments/openebs/openebs-target-network-loss/openebs_target_network_loss_ansible_logic.yml -i /etc/ansible/hosts -vv; exit 0
command:
- /bin/bash
env:
- name: ANSIBLE_STDOUT_CALLBACK
value: 'default'
- name: OPENEBS_NAMESPACE
value: 'openebs'
- name: APP_PVC
value: ''
# only pumba supported
# For pumba image use : gaiaadm/pumba:0.6.5
- name: LIB_IMAGE
value: 'gaiaadm/pumba:0.6.5'
- name: NETWORK_PACKET_LOSS_PERCENTAGE
value: '100' # in percentage
- name: TOTAL_CHAOS_DURATION
value: '120' # in seconds
- name: LIVENESS_APP_LABEL
value: ''
- name: LIVENESS_APP_NAMESPACE
value: ''
- name: DATA_PERSISTENCE
value: ''
labels:
name: openebs-target-network-loss
#configmaps:
#- name: openebs-target-network-loss
# mountPath: /mnt
---
---
apiVersion: litmuschaos.io/v1alpha1
description:
message: |
Kill the OpenEBS NFS provisioner container and check if pods consuming the NFS PVs continue to be available and volumes are writable (RWM mode)
kind: ChaosExperiment
metadata:
labels:
litmuschaos.io/name: openebs
name: openebs-nfs-provisioner-kill
version: 0.1.2
spec:
definition:
scope: Cluster
permissions:
- apiGroups:
- ""
- "apps"
- "litmuschaos.io"
- "batch"
- "extensions"
- "storage.k8s.io"
resources:
- "pods"
- "pods/exec"
- "pods/log"
- "deployments"
- "events"
- "jobs"
- "configmaps"
- "services"
- "persistentvolumeclaims"
- "storageclasses"
- "persistentvolumes"
- "chaosexperiments"
- "chaosresults"
- "chaosengines"
verbs:
- "create"
- "list"
- "get"
- "patch"
- "update"
- "delete"
- apiGroups:
- ""
resources:
- "nodes"
verbs:
- "get"
- "list"
image: "litmuschaos/ansible-runner:latest"
imagePullPolicy: Always
args:
- -c
- ansible-playbook ./experiments/openebs/openebs-nfs-provisioner-kill/openebs_nfs_provisioner_kill_ansible_logic.yml -i /etc/ansible/hosts -vv; exit 0
command:
- /bin/bash
env:
- name: ANSIBLE_STDOUT_CALLBACK
value: 'default'
# NFS default container
- name: TARGET_CONTAINER
value: 'nfs-provisioner'
# Period to wait before injection of chaos in sec
- name: RAMP_TIME
value: ''
# It supports pumba and containerd
- name: LIB
value: 'pumba'
# LIB_IMAGE can be - gaiaadm/pumba:0.6.5, gprasath/crictl:ci
# For pumba image use: gaiaadm/pumba:0.6.5
# For containerd image use: gprasath/crictl:ci
- name: LIB_IMAGE
value: 'gaiaadm/pumba:0.6.5'
# provide the chaos interval
- name: CHAOS_INTERVAL
value: '10'
# provide the total chaos duration
- name: TOTAL_CHAOS_DURATION
value: '20'
labels:
name: openebs-nfs-provisioner-kill
configmaps:
- name: openebs-nfs-provisioner-kill
mountPath: /mnt/
---
apiVersion: litmuschaos.io/v1alpha1
description:
message: |
Network delay to pool pod belonging to a OpenEBS PVC
This experiment is using pumba lib for network chaos
kind: ChaosExperiment
metadata:
labels:
litmuschaos.io/name: openebs
name: openebs-pool-network-delay
version: 0.1.6
spec:
definition:
scope: Cluster
permissions:
- apiGroups:
- ""
- "apps"
- "litmuschaos.io"
- "batch"
- "extensions"
- "storage.k8s.io"
- "openebs.io"
resources:
- "pods"
- "pods/exec"
- "jobs"
- "pods/log"
- "events"
- "configmaps"
- "services"
- "persistentvolumeclaims"
- "storageclasses"
- "persistentvolumes"
- "chaosengines"
- "chaosexperiments"
- "chaosresults"
- "cstorpools"
- "cstorvolumereplicas"
- "replicasets"
verbs:
- "create"
- "get"
- "list"
- "patch"
- "update"
- "delete"
image: "litmuschaos/ansible-runner:latest"
imagePullPolicy: Always
args:
- -c
- ansible-playbook ./experiments/openebs/openebs-pool-network-delay/openebs_pool_network_delay_ansible_logic.yml -i /etc/ansible/hosts -vv; exit 0
command:
- /bin/bash
env:
- name: ANSIBLE_STDOUT_CALLBACK
value: 'default'
- name: OPENEBS_NAMESPACE
value: 'openebs'
# only pumba supported
# For pumba image use : gaiaadm/pumba:0.6.5
- name: LIB_IMAGE
value: 'gaiaadm/pumba:0.6.5'
# in milliseconds
- name: NETWORK_DELAY
value: '60000'
- name: TOTAL_CHAOS_DURATION
value: '60' # in seconds
- name: LIVENESS_APP_LABEL
value: ''
- name: LIVENESS_APP_NAMESPACE
value: ''
- name: DATA_PERSISTENCE
value: ''
labels:
name: openebs-pool-network-delay
---
---
apiVersion: litmuschaos.io/v1alpha1
description:
message: |
Kill the pool pod and check if gets scheduled again
kind: ChaosExperiment
metadata:
labels:
litmuschaos.io/name: openebs
name: openebs-pool-pod-failure
version: 0.1.8
spec:
definition:
scope: Cluster
permissions:
- apiGroups:
- ""
- "extensions"
- "apps"
- "batch"
- "litmuschaos.io"
- "openebs.io"
- "storage.k8s.io"
resources:
- "deployments"
- "replicasets"
- "jobs"
- "pods/log"
- "events"
- "pods"
- "configmaps"
- "secrets"
- "storageclasses"
- "persistentvolumeclaims"
- "cstorvolumereplicas"
- "chaosengines"
- "chaosexperiments"
- "chaosresults"
verbs:
- "create"
- "get"
- "delete"
- "list"
- "patch"
- "update"
- apiGroups:
- ""
resources:
- "nodes"
verbs:
- "get"
- "list"
image: "litmuschaos/ansible-runner:latest"
imagePullPolicy: Always
args:
- -c
- ansible-playbook ./experiments/openebs/openebs-pool-pod-failure/openebs_pool_pod_failure_ansible_logic.yml -i /etc/ansible/hosts -vv; exit 0
command:
- /bin/bash
env:
- name: ANSIBLE_STDOUT_CALLBACK
value: default
- name: OPENEBS_NS
value: 'openebs'
- name: APP_PVC
value: ''
- name: LIVENESS_APP_LABEL
value: ''
- name: LIVENESS_APP_NAMESPACE
value: ''
- name: CHAOS_ITERATIONS
value: '2'
# provide the kill count
- name: KILL_COUNT
value: ''
- name: DATA_PERSISTENCE
value: ''
labels:
name: openebs-pool-pod-failure
#configmaps:
#- name: openebs-pool-pod-failure
# mountPath: /mnt
---
---
apiVersion: litmuschaos.io/v1alpha1
description:
message: |
Kill the pool container and check if gets scheduled again
kind: ChaosExperiment
metadata:
labels:
litmuschaos.io/name: openebs
name: openebs-pool-container-failure
version: 0.1.13
spec:
definition:
scope: Cluster
permissions:
- apiGroups:
- ""
- "extensions"
- "apps"
- "batch"
- "litmuschaos.io"
- "openebs.io"
- "storage.k8s.io"
resources:
- "replicasets"
- "events"
- "jobs"
- "pods"
- "pods/log"
- "pods/exec"
- "configmaps"
- "secrets"
- "persistentvolumeclaims"
- "cstorvolumereplicas"
- "chaosengines"
- "chaosexperiments"
- "chaosresults"
verbs:
- "create"
- "get"
- "delete"
- "list"
- "patch"
- "update"
image: "litmuschaos/ansible-runner:latest"
imagePullPolicy: Always
args:
- -c
- ansible-playbook ./experiments/openebs/openebs-pool-container-failure/openebs_pool_container_failure_ansible_logic.yml -i /etc/ansible/hosts -vv; exit 0
command:
- /bin/bash
env:
- name: ANSIBLE_STDOUT_CALLBACK
value: 'default'
- name: OPENEBS_NS
value: 'openebs'
- name: APP_PVC
value: ''
- name: LIVENESS_APP_LABEL
value: ''
# only pumba supported
# For pumba image use : gaiaadm/pumba:0.6.5
- name: LIB_IMAGE
value: 'gaiaadm/pumba:0.6.5'
- name: LIVENESS_APP_NAMESPACE
value: ''
# provide the chaos interval
- name: CHAOS_INTERVAL
value: '10'
# provide the total chaos duration
- name: TOTAL_CHAOS_DURATION
value: '20'
- name: DATA_PERSISTENCE
value: ''
- name: CHAOS_ITERATIONS
value: '2'
labels:
name: openebs-pool-container-failure
#configmaps:
#- name: openebs-pool-container-failure
# mountPath: /mnt
---
apiVersion: litmuschaos.io/v1alpha1
description:
message: |
Network loss to pool pod belonging to a OpenEBS PVC
kind: ChaosExperiment
metadata:
labels:
litmuschaos.io/name: openebs
name: openebs-pool-network-loss
version: 0.1.6
spec:
definition:
scope: Cluster
permissions:
- apiGroups:
- ""
- "apps"
- "litmuschaos.io"
- "batch"
- "extensions"
- "storage.k8s.io"
- "openebs.io"
resources:
- "pods"
- "pods/log"
- "pods/exec"
- "events"
- "jobs"
- "configmaps"
- "services"
- "persistentvolumeclaims"
- "storageclasses"
- "persistentvolumeclaims"
- "persistentvolumes"
- "chaosengines"
- "chaosexperiments"
- "chaosresults"
- "cstorpools"
- "cstorvolumereplicas"
- "replicasets"
verbs:
- "create"
- "get"
- "delete"
- "list"
- "patch"
- "update"
image: "litmuschaos/ansible-runner:latest"
imagePullPolicy: Always
args:
- -c
- ansible-playbook ./experiments/openebs/openebs-pool-network-loss/openebs_pool_network_loss_ansible_logic.yml -i /etc/ansible/hosts -vv; exit 0
command:
- /bin/bash
env:
- name: ANSIBLE_STDOUT_CALLBACK
value: 'default'
- name: OPENEBS_NAMESPACE
value: 'openebs'
# only pumba supported
# For pumba image use : gaiaadm/pumba:0.6.5
- name: LIB_IMAGE
value: 'gaiaadm/pumba:0.6.5'
- name: NETWORK_PACKET_LOSS_PERCENTAGE
value: '100' # in percentage
- name: TOTAL_CHAOS_DURATION
value: '120' # in seconds
- name: LIVENESS_APP_LABEL
value: ''
- name: LIVENESS_APP_NAMESPACE
value: ''
- name: DATA_PERSISTENCE
value: ''
labels:
name: openebs-pool-network-loss
---