diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 0ec8892..dffe361 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -10,8 +10,6 @@ Chaos Charts are a groups of categorized chaos experiments, represented as custo
- Generic: It contains chaos to disrupt state of kubernetes resources. i.e, pod-delete
- OpenEBS: It contains chaos to disrupt state of OpenEBS control/date plane components. i.e, openebs-target-failure
-- Cassandra: It contains chaos to disrupt state of Cassandra Applications. i.e, cassandra-pod-delete
-- Kafka: It contains chaos to disrupt state of Kafka Applications. i.e, kafka-broker-pod-delete
- Coredns: It contains chaos to disrupt state of Coredns pod. i.e, coredns-pod-delete
- Kube-AWS: It contains chaos to disrupt state of AWS resources running part of the kubernetes cluster. i.e, ebs-loss
- Kube-Components: It contains chaos to disrupt the state of kubernetes components. i.e, k8-kube-proxy.
diff --git a/README.md b/README.md
index 7758d75..a0cc89a 100644
--- a/README.md
+++ b/README.md
@@ -151,16 +151,6 @@ While Chaos Experiments under the Generic category offer the ability to induce c
Injects faults in OpenEBS tool |
OpenEBS experiments |
-
- Kafka Experiments |
- Inject faults in kafka application |
- kafka experiments |
-
-
- Cassandra Experiments |
- Inject faults in cassandra application |
- cassandra experiments |
-
### Platform Chaos
diff --git a/charts/cassandra/cassandra-pod-delete/cassandra-pod-delete.chartserviceversion.yaml b/charts/cassandra/cassandra-pod-delete/cassandra-pod-delete.chartserviceversion.yaml
deleted file mode 100644
index 87aa48b..0000000
--- a/charts/cassandra/cassandra-pod-delete/cassandra-pod-delete.chartserviceversion.yaml
+++ /dev/null
@@ -1,47 +0,0 @@
-apiVersion: litmuchaos.io/v1alpha1
-kind: ChartServiceVersion
-metadata:
- createdAt: 2020-04-14T10:28:08Z
- name: cassandra-pod-delete
- version: 0.1.3
- annotations:
- categories: Cassandra
- vendor: CNCF
- support: https://cassandra-slack.herokuapp.com
-spec:
- displayName: cassandra-pod-delete
- categoryDescription: |
- This experiment causes (forced/graceful) pod failure of random replicas of an cassandra statefulset.
- It tests statefulset sanity (replica availability & uninterrupted service) and recovery workflows of the cassandra pod
- keywords:
- - Kubernetes
- - K8S
- - Cassandra
- - Pod
- platforms:
- - GKE
- - Konvoy
- - Packet(Kubeadm)
- - Minikube
- - EKS
- maturity: alpha
- maintainers:
- - name: Shubham Chaudhary
- email: shubham.chaudhary@mayadata.io
- minKubeVersion: 1.12.0
- provider:
- name: Mayadata
- labels:
- app.kubernetes.io/component: chartserviceversion
- app.kubernetes.io/version: latest
- links:
- - name: Source Code
- url: https://github.com/litmuschaos/litmus-go/tree/master/experiments/cassandra/pod-delete
- - name: Documentation
- url: https://litmuschaos.github.io/litmus/experiments/categories/cassandra/cassandra-pod-delete/
- - name: Video
- url:
- icon:
- - url:
- mediatype: ""
- chaosexpcrdlink: https://raw.githubusercontent.com/litmuschaos/chaos-charts/master/charts/cassandra/cassandra-pod-delete/experiment.yaml
diff --git a/charts/cassandra/cassandra-pod-delete/engine.yaml b/charts/cassandra/cassandra-pod-delete/engine.yaml
deleted file mode 100644
index 37850b8..0000000
--- a/charts/cassandra/cassandra-pod-delete/engine.yaml
+++ /dev/null
@@ -1,55 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-kind: ChaosEngine
-metadata:
- name: cassandra-chaos
- namespace: default
-spec:
- appinfo:
- appns: 'default'
- applabel: 'app=cassandra'
- appkind: 'statefulset'
- # It can be active/stop
- engineState: 'active'
- #ex. values: ns1:name=percona,ns2:run=nginx
- auxiliaryAppInfo: ''
- chaosServiceAccount: cassandra-pod-delete-sa
- experiments:
- - name: cassandra-pod-delete
- spec:
- components:
- env:
- # set chaos duration (in sec) as desired
- - name: TOTAL_CHAOS_DURATION
- value: '15'
-
- # set chaos interval (in sec) as desired
- - name: CHAOS_INTERVAL
- value: '15'
-
- # pod failures without '--force' & default terminationGracePeriodSeconds
- - name: FORCE
- value: 'false'
-
- # provide cassandra service name
- # default service: cassandra
- - name: CASSANDRA_SVC_NAME
- value: 'cassandra'
-
- # provide the keyspace replication factor
- - name: KEYSPACE_REPLICATION_FACTOR
- value: '3'
-
- # provide cassandra port
- # default port: 9042
- - name: CASSANDRA_PORT
- value: '9042'
-
- # SET THE CASSANDRA_LIVENESS_CHECK
- # IT CAN BE `enable` OR `disable`
- - name: CASSANDRA_LIVENESS_CHECK
- value: ''
-
- ## percentage of total pods to target
- - name: PODS_AFFECTED_PERC
- value: ''
-
\ No newline at end of file
diff --git a/charts/cassandra/cassandra-pod-delete/experiment.yaml b/charts/cassandra/cassandra-pod-delete/experiment.yaml
deleted file mode 100644
index b46f06b..0000000
--- a/charts/cassandra/cassandra-pod-delete/experiment.yaml
+++ /dev/null
@@ -1,116 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-description:
- message: |
- Deletes a pod belonging to a casandra statefulset
-kind: ChaosExperiment
-metadata:
- name: cassandra-pod-delete
- labels:
- name: cassandra-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"]
- # Create and manage the liveness and target application services
- - apiGroups: [""]
- resources: ["services"]
- verbs: ["create","delete","get","list", "deletecollection"]
- # Fetch configmaps & secrets details and mount it to the experiment pod (if specified)
- - apiGroups: [""]
- resources: ["secrets","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 deriving the parent/owner details of the pod
- - apiGroups: ["apps"]
- resources: ["deployments","statefulsets"]
- 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 cassandra-pod-delete
- command:
- - /bin/bash
- env:
-
- # provide cassandra service name
- # default service: cassandra
- - name: CASSANDRA_SVC_NAME
- value: ''
-
- # provide the keyspace replication factor
- - name: KEYSPACE_REPLICATION_FACTOR
- value: ''
-
- # provide cassandra port
- # default port: 9042
- - name: CASSANDRA_PORT
- value: '9042'
-
- # provide liveness deployement port
- # default port: 8088, It only supports 8088 port
- - name: LIVENESS_SVC_PORT
- value: '8088'
-
- # provide cassandra liveness image
- - name: CASSANDRA_LIVENESS_IMAGE
- value: 'litmuschaos/cassandra-client:latest'
-
- - name: TOTAL_CHAOS_DURATION
- value: '15'
-
- ## percentage of total pods to target
- - name: PODS_AFFECTED_PERC
- value: ''
-
- - name: CHAOS_INTERVAL
- value: '15'
-
- # SET THE CASSANDRA_LIVENESS_CHECK
- # IT CAN BE `enable` OR `disable`
- - name: CASSANDRA_LIVENESS_CHECK
- value: ''
-
- ## Period to wait before and after injection of chaos
- - name: RAMP_TIME
- value: ''
-
- - name: FORCE
- value: ''
-
- ## it defines the sequence of chaos execution for multiple target pods
- ## supported values: serial, parallel
- - name: SEQUENCE
- value: 'parallel'
-
- labels:
- name: cassandra-pod-delete
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: experiment-job
- app.kubernetes.io/version: latest
diff --git a/charts/cassandra/cassandra-pod-delete/rbac.yaml b/charts/cassandra/cassandra-pod-delete/rbac.yaml
deleted file mode 100644
index 7295950..0000000
--- a/charts/cassandra/cassandra-pod-delete/rbac.yaml
+++ /dev/null
@@ -1,73 +0,0 @@
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: cassandra-pod-delete-sa
- namespace: default
- labels:
- name: cassandra-pod-delete-sa
- app.kubernetes.io/part-of: litmus
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: cassandra-pod-delete-sa
- namespace: default
- labels:
- name: cassandra-pod-delete-sa
- app.kubernetes.io/part-of: litmus
-rules:
- # 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"]
- # Create and manage the liveness and target application services
- - apiGroups: [""]
- resources: ["services"]
- verbs: ["create","delete","get","list", "deletecollection"]
- # Fetch configmaps & secrets details and mount it to the experiment pod (if specified)
- - apiGroups: [""]
- resources: ["secrets","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 deriving the parent/owner details of the pod
- - apiGroups: ["apps"]
- resources: ["deployments","statefulsets"]
- 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"]
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: cassandra-pod-delete-sa
- namespace: default
- labels:
- name: cassandra-pod-delete-sa
- app.kubernetes.io/part-of: litmus
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: cassandra-pod-delete-sa
-subjects:
-- kind: ServiceAccount
- name: cassandra-pod-delete-sa
- namespace: default
-
diff --git a/charts/cassandra/cassandra.chartserviceversion.yaml b/charts/cassandra/cassandra.chartserviceversion.yaml
deleted file mode 100644
index eb2fb95..0000000
--- a/charts/cassandra/cassandra.chartserviceversion.yaml
+++ /dev/null
@@ -1,41 +0,0 @@
-apiVersion: litmuchaos.io/v1alpha1
-kind: ChartServiceVersion
-metadata:
- createdAt: 2020-04-14T10:28:08Z
- name: cassandra
- version: 0.1.3
- annotations:
- categories: Cassandra
- chartDescription: Injects cassandra kubernetes chaos
-spec:
- displayName: Cassandra Chaos
- categoryDescription: >
- Cassandra is a free and open-source, distributed, wide column store, NoSQL database management system designed to handle
- large amounts of data across many commodity servers, providing high availability with no single point of failure.
- It will install all the experiments which can be used to inject chaos into cassandra applications.
- experiments:
- - cassandra-pod-delete
- keywords:
- - Kubernetes
- - K8S
- - Pod
- - Cassandra
- maintainers:
- - name: ksatchit
- email: karthik.s@mayadata.io
- minKubeVersion: 1.12.0
- provider:
- name: Mayadata
- links:
- - name: Cassandra Website
- url: http://cassandra.apache.org/
- - name: Source Code
- url: https://github.com/apache/cassandra
- - name: Cassandra Slack
- url: https://cassandra-slack.herokuapp.com
- - name: Documentation
- url: http://cassandra.apache.org/doc/latest/
- icon:
- - url: https://raw.githubusercontent.com/litmuschaos/chaos-charts/master/charts/cassandra/icons/cassandra.png
- mediatype: image/png
- chaosexpcrdlink: https://raw.githubusercontent.com/litmuschaos/chaos-charts/master/charts/cassandra/experiments.yaml
diff --git a/charts/cassandra/cassandra.package.yaml b/charts/cassandra/cassandra.package.yaml
deleted file mode 100644
index aeab8f3..0000000
--- a/charts/cassandra/cassandra.package.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-packageName: cassandra
-experiments:
- - name: cassandra-pod-delete
- CSV: cassandra-pod-delete.chartserviceversion.yaml
- desc: "cassandra-pod-delete"
diff --git a/charts/cassandra/experiments.yaml b/charts/cassandra/experiments.yaml
deleted file mode 100644
index 4c694ab..0000000
--- a/charts/cassandra/experiments.yaml
+++ /dev/null
@@ -1,118 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-description:
- message: |
- Deletes a pod belonging to a casandra statefulset
-kind: ChaosExperiment
-metadata:
- name: cassandra-pod-delete
- labels:
- name: cassandra-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"]
- # Create and manage the liveness and target application services
- - apiGroups: [""]
- resources: ["services"]
- verbs: ["create","delete","get","list", "deletecollection"]
- # Fetch configmaps & secrets details and mount it to the experiment pod (if specified)
- - apiGroups: [""]
- resources: ["secrets","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 deriving the parent/owner details of the pod
- - apiGroups: ["apps"]
- resources: ["deployments","statefulsets"]
- 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 cassandra-pod-delete
- command:
- - /bin/bash
- env:
-
- # provide cassandra service name
- # default service: cassandra
- - name: CASSANDRA_SVC_NAME
- value: ''
-
- # provide the keyspace replication factor
- - name: KEYSPACE_REPLICATION_FACTOR
- value: ''
-
- # provide cassandra port
- # default port: 9042
- - name: CASSANDRA_PORT
- value: '9042'
-
- # provide liveness deployement port
- # default port: 8088, It only supports 8088 port
- - name: LIVENESS_SVC_PORT
- value: '8088'
-
- # provide cassandra liveness image
- - name: CASSANDRA_LIVENESS_IMAGE
- value: 'litmuschaos/cassandra-client:latest'
-
- - name: TOTAL_CHAOS_DURATION
- value: '15'
-
- ## percentage of total pods to target
- - name: PODS_AFFECTED_PERC
- value: ''
-
- - name: CHAOS_INTERVAL
- value: '15'
-
- # SET THE CASSANDRA_LIVENESS_CHECK
- # IT CAN BE `enable` OR `disable`
- - name: CASSANDRA_LIVENESS_CHECK
- value: ''
-
- ## Period to wait before and after injection of chaos
- - name: RAMP_TIME
- value: ''
-
- - name: FORCE
- value: ''
-
- ## it defines the sequence of chaos execution for multiple target pods
- ## supported values: serial, parallel
- - name: SEQUENCE
- value: 'parallel'
-
- labels:
- name: cassandra-pod-delete
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: experiment-job
- app.kubernetes.io/version: latest
-
----
diff --git a/charts/cassandra/icons/cassandra-pod-delete.png b/charts/cassandra/icons/cassandra-pod-delete.png
deleted file mode 100644
index 16aa7b4..0000000
Binary files a/charts/cassandra/icons/cassandra-pod-delete.png and /dev/null differ
diff --git a/charts/cassandra/icons/cassandra.png b/charts/cassandra/icons/cassandra.png
deleted file mode 100644
index 3568818..0000000
Binary files a/charts/cassandra/icons/cassandra.png and /dev/null differ
diff --git a/charts/kafka/experiments.yaml b/charts/kafka/experiments.yaml
deleted file mode 100644
index 5906a23..0000000
--- a/charts/kafka/experiments.yaml
+++ /dev/null
@@ -1,244 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-description:
- message: |
- Deleting a kafka broker pod
-kind: ChaosExperiment
-metadata:
- name: kafka-broker-pod-failure
- labels:
- name: kafka-broker-pod-failure
- 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: ["secrets","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 deriving the parent/owner details of the pod
- - apiGroups: ["apps"]
- resources: ["deployments","statefulsets"]
- 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 kafka-broker-pod-failure
- command:
- - /bin/bash
- env:
-
- - name: KAFKA_KIND
- value: 'statefulset'
-
- - name: KAFKA_LIVENESS_STREAM
- value: 'enable'
-
- - name: KAFKA_LIVENESS_IMAGE
- value: 'litmuschaos/kafka-client:latest'
-
- # Recommended timeout for EKS platform: 60000 ms
- - name: KAFKA_CONSUMER_TIMEOUT
- value: '30000' #in ms
-
- - name: TOTAL_CHAOS_DURATION
- value: '15'
-
- - name: CHAOS_INTERVAL
- value: '5'
-
- ## it defines the sequence of chaos execution for multiple target pods
- ## supported values: serial, parallel
- - name: SEQUENCE
- value: 'parallel'
-
- - name: FORCE
- value: 'true'
-
- - name: KAFKA_INSTANCE_NAME
- value: ''
-
- - name: KAFKA_NAMESPACE
- value: ''
-
- - name: KAFKA_LABEL
- value: ''
-
- - name: KAFKA_BROKER
- value: ''
-
- - name: KAFKA_REPLICATION_FACTOR
- value: ''
-
- - name: KAFKA_SERVICE
- value: ''
-
- - name: KAFKA_PORT
- value: ''
-
- - name: ZOOKEEPER_NAMESPACE
- value: ''
-
- - name: ZOOKEEPER_LABEL
- value: ''
-
- - name: ZOOKEEPER_SERVICE
- value: ''
-
- - name: ZOOKEEPER_PORT
- value: ''
-
- labels:
- name: kafka-broker-pod-failure
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: experiment-job
- app.kubernetes.io/version: latest
-
----
-apiVersion: litmuschaos.io/v1alpha1
-description:
- message: |
- Detaching a persistent disk from a node/instance for kafka.
-kind: ChaosExperiment
-metadata:
- name: kafka-broker-disk-failure
- labels:
- name: kafka-broker-disk-failure
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: chaosexperiment
- app.kubernetes.io/version: latest
-spec:
- definition:
- scope: Cluster
- permissions:
- - apiGroups:
- - ""
- - "apps"
- - "batch"
- - "litmuschaos.io"
- resources:
- - "statefulsets"
- - "secrets"
- - "jobs"
- - "pods/log"
- - "events"
- - "pods"
- - "pods/exec"
- - "chaosengines"
- - "chaosexperiments"
- - "chaosresults"
- verbs:
- - "create"
- - "delete"
- - "get"
- - "list"
- - "patch"
- image: "litmuschaos/ansible-runner:latest"
- imagePullPolicy: Always
- args:
- - -c
- - ansible-playbook ./experiments/kafka/kafka-broker-disk-failure/kafka-broker-disk-failure-ansible-logic.yml -i /etc/ansible/hosts -vv; exit 0
- command:
- - /bin/bash
- env:
- - name: ANSIBLE_STDOUT_CALLBACK
- value: 'default'
-
- - name: KAFKA_KIND
- value: 'statefulset'
-
- - name: KAFKA_LIVENESS_STREAM
- value: 'enabled'
-
- - name: KAFKA_LIVENESS_IMAGE
- value: 'litmuschaos/kafka-client:ci'
-
- - name: KAFKA_CONSUMER_TIMEOUT
- value: '30000'
-
- - name: TOTAL_CHAOS_DURATION
- value: '15'
-
- - name: PROJECT_ID
- value: ''
-
- - name: DISK_NAME
- value: ''
-
- - name: ZONE_NAME
- value: ''
-
- # GKE and AWS supported
- - name: CLOUD_PLATFORM
- value: 'GKE'
-
- - name: KAFKA_NAMESPACE
- value: ''
-
- - name: KAFKA_LABEL
- value: ''
-
- - name: KAFKA_BROKER
- value: ''
-
- - name: KAFKA_INSTANCE_NAME
- value: ''
-
- - name: KAFKA_REPLICATION_FACTOR
- value: ''
-
- - name: KAFKA_SERVICE
- value: ''
-
- - name: KAFKA_PORT
- value: ''
-
- - name: ZOOKEEPER_NAMESPACE
- value: ''
-
- - name: ZOOKEEPER_LABEL
- value: ''
-
- - name: ZOOKEEPER_SERVICE
- value: ''
-
- - name: ZOOKEEPER_PORT
- value: ''
- labels:
- name: kafka-broker-disk-failure
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: experiment-job
- app.kubernetes.io/version: latest
- secrets:
- - name: kafka-broker-disk-failure
- mountPath: /tmp/
-
-
----
diff --git a/charts/kafka/icons/kafka-broker-disk-failure.png b/charts/kafka/icons/kafka-broker-disk-failure.png
deleted file mode 100644
index 08321df..0000000
Binary files a/charts/kafka/icons/kafka-broker-disk-failure.png and /dev/null differ
diff --git a/charts/kafka/icons/kafka-broker-pod-failure.png b/charts/kafka/icons/kafka-broker-pod-failure.png
deleted file mode 100644
index 08321df..0000000
Binary files a/charts/kafka/icons/kafka-broker-pod-failure.png and /dev/null differ
diff --git a/charts/kafka/icons/kafka.png b/charts/kafka/icons/kafka.png
deleted file mode 100644
index 08321df..0000000
Binary files a/charts/kafka/icons/kafka.png and /dev/null differ
diff --git a/charts/kafka/kafka-broker-disk-failure/engine.yaml b/charts/kafka/kafka-broker-disk-failure/engine.yaml
deleted file mode 100644
index 56b1690..0000000
--- a/charts/kafka/kafka-broker-disk-failure/engine.yaml
+++ /dev/null
@@ -1,81 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-kind: ChaosEngine
-metadata:
- name: kafka-chaos
- namespace: default
-spec:
- # It can be active/stop
- engineState: 'active'
- #ex. values: ns1:name=percona,ns2:run=nginx
- auxiliaryAppInfo: ''
- appinfo:
- appns: 'default'
- applabel: 'app=cp-kafka'
- appkind: 'statefulset'
- chaosServiceAccount: kafka-broker-disk-failure-sa
- experiments:
- - name: kafka-broker-disk-failure
- spec:
- components:
- env:
- # set chaos duration (in sec) as desired
- - name: TOTAL_CHAOS_DURATION
- value: '60'
-
- # choose based on available kafka broker replicas
- - name: KAFKA_REPLICATION_FACTOR
- value: '3'
-
- # get via 'kubectl get pods --show-labels -n '
- - name: KAFKA_LABEL
- value: 'app=cp-kafka'
-
- - name: KAFKA_NAMESPACE
- value: 'default'
-
- # get via 'kubectl get svc -n '
- - name: KAFKA_SERVICE
- value: 'kafka-cp-kafka-headless'
-
- # get via 'kubectl get svc -n '
- - name: KAFKA_PORT
- value: '9092'
-
- # in milliseconds
- - name: KAFKA_CONSUMER_TIMEOUT
- value: '70000'
-
- # ensure to set the instance name if using KUDO operator
- - name: KAFKA_INSTANCE_NAME
- value: ''
-
- - name: ZOOKEEPER_NAMESPACE
- value: 'default'
-
- # get via 'kubectl get pods --show-labels -n '
- - name: ZOOKEEPER_LABEL
- value: 'app=cp-zookeeper'
-
- # get via 'kubectl get svc -n
- - name: ZOOKEEPER_SERVICE
- value: 'kafka-cp-zookeeper-headless'
-
- # get via 'kubectl get svc -n
- - name: ZOOKEEPER_PORT
- value: '2181'
-
- # get from google cloud console or 'gcloud projects list'
- - name: PROJECT_ID
- value: 'argon-tractor-237811'
-
- # attached to (in use by) node where 'kafka-0' is scheduled
- - name: DISK_NAME
- value: 'disk-1'
-
- - name: ZONE_NAME
- value: 'us-central1-a'
-
- # Uses 'disk-1' attached to the node on which it is scheduled
- - name: KAFKA_BROKER
- value: 'kafka-0'
-
\ No newline at end of file
diff --git a/charts/kafka/kafka-broker-disk-failure/experiment.yaml b/charts/kafka/kafka-broker-disk-failure/experiment.yaml
deleted file mode 100644
index b354d4e..0000000
--- a/charts/kafka/kafka-broker-disk-failure/experiment.yaml
+++ /dev/null
@@ -1,118 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-description:
- message: |
- Detaching a persistent disk from a node/instance for kafka.
-kind: ChaosExperiment
-metadata:
- name: kafka-broker-disk-failure
- labels:
- name: kafka-broker-disk-failure
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: chaosexperiment
- app.kubernetes.io/version: latest
-spec:
- definition:
- scope: Cluster
- permissions:
- - apiGroups:
- - ""
- - "apps"
- - "batch"
- - "litmuschaos.io"
- resources:
- - "statefulsets"
- - "secrets"
- - "jobs"
- - "pods/log"
- - "events"
- - "pods"
- - "pods/exec"
- - "chaosengines"
- - "chaosexperiments"
- - "chaosresults"
- verbs:
- - "create"
- - "delete"
- - "get"
- - "list"
- - "patch"
- image: "litmuschaos/ansible-runner:latest"
- imagePullPolicy: Always
- args:
- - -c
- - ansible-playbook ./experiments/kafka/kafka-broker-disk-failure/kafka-broker-disk-failure-ansible-logic.yml -i /etc/ansible/hosts -vv; exit 0
- command:
- - /bin/bash
- env:
- - name: ANSIBLE_STDOUT_CALLBACK
- value: 'default'
-
- - name: KAFKA_KIND
- value: 'statefulset'
-
- - name: KAFKA_LIVENESS_STREAM
- value: 'enabled'
-
- - name: KAFKA_LIVENESS_IMAGE
- value: 'litmuschaos/kafka-client:ci'
-
- - name: KAFKA_CONSUMER_TIMEOUT
- value: '30000'
-
- - name: TOTAL_CHAOS_DURATION
- value: '15'
-
- - name: PROJECT_ID
- value: ''
-
- - name: DISK_NAME
- value: ''
-
- - name: ZONE_NAME
- value: ''
-
- # GKE and AWS supported
- - name: CLOUD_PLATFORM
- value: 'GKE'
-
- - name: KAFKA_NAMESPACE
- value: ''
-
- - name: KAFKA_LABEL
- value: ''
-
- - name: KAFKA_BROKER
- value: ''
-
- - name: KAFKA_INSTANCE_NAME
- value: ''
-
- - name: KAFKA_REPLICATION_FACTOR
- value: ''
-
- - name: KAFKA_SERVICE
- value: ''
-
- - name: KAFKA_PORT
- value: ''
-
- - name: ZOOKEEPER_NAMESPACE
- value: ''
-
- - name: ZOOKEEPER_LABEL
- value: ''
-
- - name: ZOOKEEPER_SERVICE
- value: ''
-
- - name: ZOOKEEPER_PORT
- value: ''
- labels:
- name: kafka-broker-disk-failure
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: experiment-job
- app.kubernetes.io/version: latest
- secrets:
- - name: kafka-broker-disk-failure
- mountPath: /tmp/
-
diff --git a/charts/kafka/kafka-broker-disk-failure/kafka-broker-disk-failure.chartserviceversion.yaml b/charts/kafka/kafka-broker-disk-failure/kafka-broker-disk-failure.chartserviceversion.yaml
deleted file mode 100644
index 1984037..0000000
--- a/charts/kafka/kafka-broker-disk-failure/kafka-broker-disk-failure.chartserviceversion.yaml
+++ /dev/null
@@ -1,42 +0,0 @@
-apiVersion: litmuchaos.io/v1alpha1
-kind: ChartServiceVersion
-metadata:
- createdAt: 2019-11-15T10:28:08Z
- name: kafka-broker-disk-failure
- annotations:
- categories: Kafka
- vendor: Mayadata
- support: https://app.slack.com/client/T09NY5SBT/CNXNB0ZTN
-spec:
- displayName: kafka-broker-disk-failure
- categoryDescription: |
- Detaching a persistent disk from a node/instance for kafka
- keywords:
- - Kubernetes
- - K8S
- - Disk
- - Kafka
- platforms:
- - GKE
- - konvoy
- maturity: alpha
- maintainers:
- - name: ksatchit
- email: karthik.s@mayadata.io
- minKubeVersion: 1.12.0
- provider:
- name: Mayadata
- labels:
- app.kubernetes.io/component: chartserviceversion
- app.kubernetes.io/version: latest
- links:
- - name: Source Code
- url: https://github.com/litmuschaos/litmus-ansible/tree/master/experiments/kafka/kafka-broker-disk-failure
- - name: Documentation
- url: https://v1-docs.litmuschaos.io/docs/kafka-broker-disk-failure/
- - name: Video
- url:
- icon:
- - url:
- mediatype: ""
- chaosexpcrdlink: https://raw.githubusercontent.com/litmuschaos/chaos-charts/master/charts/kafka/kafka-broker-disk-failure/experiment.yaml
diff --git a/charts/kafka/kafka-broker-disk-failure/rbac.yaml b/charts/kafka/kafka-broker-disk-failure/rbac.yaml
deleted file mode 100644
index 6d685b7..0000000
--- a/charts/kafka/kafka-broker-disk-failure/rbac.yaml
+++ /dev/null
@@ -1,38 +0,0 @@
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kafka-broker-disk-failure-sa
- namespace: default
- labels:
- name: kafka-broker-disk-failure-sa
- app.kubernetes.io/part-of: litmus
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: kafka-broker-disk-failure-sa
- labels:
- name: kafka-broker-disk-failure-sa
- app.kubernetes.io/part-of: litmus
-rules:
-- apiGroups: ["","litmuschaos.io","batch","apps"]
- resources: ["pods","jobs","pods/log","events","pods/exec","statefulsets","secrets","chaosengines","chaosexperiments","chaosresults"]
- verbs: ["create","list","get","patch","delete"]
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kafka-broker-disk-failure-sa
- labels:
- name: kafka-broker-disk-failure-sa
- app.kubernetes.io/part-of: litmus
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kafka-broker-disk-failure-sa
-subjects:
-- kind: ServiceAccount
- name: kafka-broker-disk-failure-sa
- namespace: default
-
diff --git a/charts/kafka/kafka-broker-pod-failure/engine.yaml b/charts/kafka/kafka-broker-pod-failure/engine.yaml
deleted file mode 100644
index 5a8b305..0000000
--- a/charts/kafka/kafka-broker-pod-failure/engine.yaml
+++ /dev/null
@@ -1,74 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-kind: ChaosEngine
-metadata:
- name: kafka-chaos
- namespace: default
-spec:
- # It can be active/stop
- engineState: 'active'
- #ex. values: ns1:name=percona,ns2:run=nginx
- auxiliaryAppInfo: ''
- appinfo:
- appns: 'default'
- applabel: 'app=cp-kafka'
- appkind: 'statefulset'
- chaosServiceAccount: kafka-broker-pod-failure-sa
- experiments:
- - name: kafka-broker-pod-failure
- spec:
- components:
- env:
- # set chaos duration (in sec) as desired
- - name: TOTAL_CHAOS_DURATION
- value: '60'
-
- # choose based on available kafka broker replicas
- - name: KAFKA_REPLICATION_FACTOR
- value: '3'
-
- # get via 'kubectl get pods --show-labels -n '
- - name: KAFKA_LABEL
- value: 'app=cp-kafka'
-
- - name: KAFKA_NAMESPACE
- value: 'default'
-
- # get via 'kubectl get svc -n '
- - name: KAFKA_SERVICE
- value: 'kafka-cp-kafka-headless'
-
- # get via 'kubectl get svc -n '
- - name: KAFKA_PORT
- value: '9092'
-
- # Recommended timeout for EKS platform: 60000 ms
- - name: KAFKA_CONSUMER_TIMEOUT
- value: '30000' # in milliseconds
-
- # ensure to set the instance name if using KUDO operator
- - name: KAFKA_INSTANCE_NAME
- value: ''
-
- - name: ZOOKEEPER_NAMESPACE
- value: 'default'
-
- # get via 'kubectl get pods --show-labels -n '
- - name: ZOOKEEPER_LABEL
- value: 'app=cp-zookeeper'
-
- # get via 'kubectl get svc -n
- - name: ZOOKEEPER_SERVICE
- value: 'kafka-cp-zookeeper-headless'
-
- # get via 'kubectl get svc -n
- - name: ZOOKEEPER_PORT
- value: '2181'
-
- # set chaos interval (in sec) as desired
- - name: CHAOS_INTERVAL
- value: '20'
-
- # pod failures without '--force' & default terminationGracePeriodSeconds
- - name: FORCE
- value: 'false'
-
\ No newline at end of file
diff --git a/charts/kafka/kafka-broker-pod-failure/experiment.yaml b/charts/kafka/kafka-broker-pod-failure/experiment.yaml
deleted file mode 100644
index 5df535e..0000000
--- a/charts/kafka/kafka-broker-pod-failure/experiment.yaml
+++ /dev/null
@@ -1,122 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-description:
- message: |
- Deleting a kafka broker pod
-kind: ChaosExperiment
-metadata:
- name: kafka-broker-pod-failure
- labels:
- name: kafka-broker-pod-failure
- 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: ["secrets","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 deriving the parent/owner details of the pod
- - apiGroups: ["apps"]
- resources: ["deployments","statefulsets"]
- 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 kafka-broker-pod-failure
- command:
- - /bin/bash
- env:
-
- - name: KAFKA_KIND
- value: 'statefulset'
-
- - name: KAFKA_LIVENESS_STREAM
- value: 'enable'
-
- - name: KAFKA_LIVENESS_IMAGE
- value: 'litmuschaos/kafka-client:latest'
-
- # Recommended timeout for EKS platform: 60000 ms
- - name: KAFKA_CONSUMER_TIMEOUT
- value: '30000' #in ms
-
- - name: TOTAL_CHAOS_DURATION
- value: '15'
-
- - name: CHAOS_INTERVAL
- value: '5'
-
- ## it defines the sequence of chaos execution for multiple target pods
- ## supported values: serial, parallel
- - name: SEQUENCE
- value: 'parallel'
-
- - name: FORCE
- value: 'true'
-
- - name: KAFKA_INSTANCE_NAME
- value: ''
-
- - name: KAFKA_NAMESPACE
- value: ''
-
- - name: KAFKA_LABEL
- value: ''
-
- - name: KAFKA_BROKER
- value: ''
-
- - name: KAFKA_REPLICATION_FACTOR
- value: ''
-
- - name: KAFKA_SERVICE
- value: ''
-
- - name: KAFKA_PORT
- value: ''
-
- - name: ZOOKEEPER_NAMESPACE
- value: ''
-
- - name: ZOOKEEPER_LABEL
- value: ''
-
- - name: ZOOKEEPER_SERVICE
- value: ''
-
- - name: ZOOKEEPER_PORT
- value: ''
-
- labels:
- name: kafka-broker-pod-failure
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: experiment-job
- app.kubernetes.io/version: latest
diff --git a/charts/kafka/kafka-broker-pod-failure/kafka-broker-pod-failure.chartserviceversion.yaml b/charts/kafka/kafka-broker-pod-failure/kafka-broker-pod-failure.chartserviceversion.yaml
deleted file mode 100644
index e3702e0..0000000
--- a/charts/kafka/kafka-broker-pod-failure/kafka-broker-pod-failure.chartserviceversion.yaml
+++ /dev/null
@@ -1,45 +0,0 @@
-apiVersion: litmuchaos.io/v1alpha1
-kind: ChartServiceVersion
-metadata:
- createdAt: 2019-11-15T10:28:08Z
- name: kafka-broker-pod-failure
- version: 0.1.6
- annotations:
- categories: Kafka
- vendor: Mayadata
- repository: https://github.com/litmuschaos/chaos-charts
- support: https://app.slack.com/client/T09NY5SBT/CNXNB0ZTN
-spec:
- displayName: kafka-broker-pod-failure
- categoryDescription: |
- This chaos experiment kills (random or specified) kafka broker pods
- keywords:
- - Kubernetes
- - K8S
- - Pod
- - Kafka
- platforms:
- - GKE
- - EKS
- - konvoy
- maturity: alpha
- maintainers:
- - name: ksatchit
- email: karthik.s@mayadata.io
- minKubeVersion: 1.12.0
- provider:
- name: Mayadata
- labels:
- app.kubernetes.io/component: chartserviceversion
- app.kubernetes.io/version: latest
- links:
- - name: Source Code
- url: https://github.com/litmuschaos/litmus-go/tree/master/experiments/kafka/kafka-broker-pod-failure
- - name: Documentation
- url: https://litmuschaos.github.io/litmus/experiments/categories/kafka/kafka-broker-pod-failure/
- - name: Video
- url:
- icon:
- - url:
- mediatype: ""
- chaosexpcrdlink: https://raw.githubusercontent.com/litmuschaos/chaos-charts/master/charts/kafka/kafka-broker-pod-failure/experiment.yaml
diff --git a/charts/kafka/kafka-broker-pod-failure/rbac.yaml b/charts/kafka/kafka-broker-pod-failure/rbac.yaml
deleted file mode 100644
index 64fd1db..0000000
--- a/charts/kafka/kafka-broker-pod-failure/rbac.yaml
+++ /dev/null
@@ -1,67 +0,0 @@
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kafka-broker-pod-failure-sa
- namespace: default
- labels:
- name: kafka-broker-pod-failure-sa
- app.kubernetes.io/part-of: litmus
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: kafka-broker-pod-failure-sa
- labels:
- name: kafka-broker-pod-failure-sa
- app.kubernetes.io/part-of: litmus
-rules:
- # 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: ["secrets","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 deriving the parent/owner details of the pod
- - apiGroups: ["apps"]
- resources: ["deployments","statefulsets"]
- 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"]
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kafka-broker-pod-failure-sa
- labels:
- name: kafka-broker-pod-failure-sa
- app.kubernetes.io/part-of: litmus
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kafka-broker-pod-failure-sa
-subjects:
-- kind: ServiceAccount
- name: kafka-broker-pod-failure-sa
- namespace: default
-
diff --git a/charts/kafka/kafka.chartserviceversion.yaml b/charts/kafka/kafka.chartserviceversion.yaml
deleted file mode 100644
index ddf1aff..0000000
--- a/charts/kafka/kafka.chartserviceversion.yaml
+++ /dev/null
@@ -1,39 +0,0 @@
-apiVersion: litmuchaos.io/v1alpha1
-kind: ChartServiceVersion
-metadata:
- createdAt: 2019-11-13T10:28:08Z
- name: kafka
- version: 0.1.4
- annotations:
- categories: Kafka
- chartDescription: Injects chaos on kafka components
-spec:
- displayName: Kafka Chaos
- categoryDescription: >
- Kafka is used for building real-time data pipelines and streaming apps. It is horizontally scalable, fault-tolerant, fast,
- and runs in production in thousands of companies
- experiments:
- - kafka-broker-pod-failure
- keywords:
- - Kubernetes
- - K8S
- - Kafka
- - Disk
- - Pod
- maintainers:
- - name: ksatchit
- email: karthik.s@mayadata.io
- minKubeVersion: 1.12.0
- provider:
- name: Mayadata
- links:
- - name: Kafka Website
- url: http://kafka.apache.org/
- - name: Source Code
- url: https://github.com/litmuschaos/litmus/tree/master/experiments/kafka
- - name: Community Slack
- url: https://app.slack.com/client/T09NY5SBT/CNXNB0ZTN
- icon:
- - url:
- mediatype:
- chaosexpcrdlink: https://raw.githubusercontent.com/litmuschaos/chaos-charts/master/charts/kafka/experiments.yaml
diff --git a/charts/kafka/kafka.package.yaml b/charts/kafka/kafka.package.yaml
deleted file mode 100644
index e4c401d..0000000
--- a/charts/kafka/kafka.package.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-packageName: kafka
-experiments:
- - name: kafka-broker-pod-failure
- CSV: kafka-broker-pod-failure.chartserviceversion.yaml
- desc: "kafka-broker-pod-failure"
- - name: kafka-broker-disk-failure
- CSV: kafka-broker-disk-failure.chartserviceversion.yaml
- desc: "kafka-broker-disk-failure"
diff --git a/experiments/cassandra/cassandra-pod-delete/cassandra-pod-delete.chartserviceversion.yaml b/experiments/cassandra/cassandra-pod-delete/cassandra-pod-delete.chartserviceversion.yaml
deleted file mode 100644
index 87aa48b..0000000
--- a/experiments/cassandra/cassandra-pod-delete/cassandra-pod-delete.chartserviceversion.yaml
+++ /dev/null
@@ -1,47 +0,0 @@
-apiVersion: litmuchaos.io/v1alpha1
-kind: ChartServiceVersion
-metadata:
- createdAt: 2020-04-14T10:28:08Z
- name: cassandra-pod-delete
- version: 0.1.3
- annotations:
- categories: Cassandra
- vendor: CNCF
- support: https://cassandra-slack.herokuapp.com
-spec:
- displayName: cassandra-pod-delete
- categoryDescription: |
- This experiment causes (forced/graceful) pod failure of random replicas of an cassandra statefulset.
- It tests statefulset sanity (replica availability & uninterrupted service) and recovery workflows of the cassandra pod
- keywords:
- - Kubernetes
- - K8S
- - Cassandra
- - Pod
- platforms:
- - GKE
- - Konvoy
- - Packet(Kubeadm)
- - Minikube
- - EKS
- maturity: alpha
- maintainers:
- - name: Shubham Chaudhary
- email: shubham.chaudhary@mayadata.io
- minKubeVersion: 1.12.0
- provider:
- name: Mayadata
- labels:
- app.kubernetes.io/component: chartserviceversion
- app.kubernetes.io/version: latest
- links:
- - name: Source Code
- url: https://github.com/litmuschaos/litmus-go/tree/master/experiments/cassandra/pod-delete
- - name: Documentation
- url: https://litmuschaos.github.io/litmus/experiments/categories/cassandra/cassandra-pod-delete/
- - name: Video
- url:
- icon:
- - url:
- mediatype: ""
- chaosexpcrdlink: https://raw.githubusercontent.com/litmuschaos/chaos-charts/master/charts/cassandra/cassandra-pod-delete/experiment.yaml
diff --git a/experiments/cassandra/cassandra-pod-delete/engine.yaml b/experiments/cassandra/cassandra-pod-delete/engine.yaml
deleted file mode 100644
index 37850b8..0000000
--- a/experiments/cassandra/cassandra-pod-delete/engine.yaml
+++ /dev/null
@@ -1,55 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-kind: ChaosEngine
-metadata:
- name: cassandra-chaos
- namespace: default
-spec:
- appinfo:
- appns: 'default'
- applabel: 'app=cassandra'
- appkind: 'statefulset'
- # It can be active/stop
- engineState: 'active'
- #ex. values: ns1:name=percona,ns2:run=nginx
- auxiliaryAppInfo: ''
- chaosServiceAccount: cassandra-pod-delete-sa
- experiments:
- - name: cassandra-pod-delete
- spec:
- components:
- env:
- # set chaos duration (in sec) as desired
- - name: TOTAL_CHAOS_DURATION
- value: '15'
-
- # set chaos interval (in sec) as desired
- - name: CHAOS_INTERVAL
- value: '15'
-
- # pod failures without '--force' & default terminationGracePeriodSeconds
- - name: FORCE
- value: 'false'
-
- # provide cassandra service name
- # default service: cassandra
- - name: CASSANDRA_SVC_NAME
- value: 'cassandra'
-
- # provide the keyspace replication factor
- - name: KEYSPACE_REPLICATION_FACTOR
- value: '3'
-
- # provide cassandra port
- # default port: 9042
- - name: CASSANDRA_PORT
- value: '9042'
-
- # SET THE CASSANDRA_LIVENESS_CHECK
- # IT CAN BE `enable` OR `disable`
- - name: CASSANDRA_LIVENESS_CHECK
- value: ''
-
- ## percentage of total pods to target
- - name: PODS_AFFECTED_PERC
- value: ''
-
\ No newline at end of file
diff --git a/experiments/cassandra/cassandra-pod-delete/experiment.yaml b/experiments/cassandra/cassandra-pod-delete/experiment.yaml
deleted file mode 100644
index f400435..0000000
--- a/experiments/cassandra/cassandra-pod-delete/experiment.yaml
+++ /dev/null
@@ -1,121 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-description:
- message: |
- Deletes a pod belonging to a casandra statefulset
-kind: ChaosExperiment
-metadata:
- name: cassandra-pod-delete
- labels:
- name: cassandra-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"]
- # Create and manage the liveness and target application services
- - apiGroups: [""]
- resources: ["services"]
- verbs: ["create","delete","get","list", "deletecollection"]
- # Fetch configmaps & secrets details and mount it to the experiment pod (if specified)
- - apiGroups: [""]
- resources: ["secrets","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 deriving the parent/owner details of the pod
- - apiGroups: ["apps"]
- resources: ["deployments","statefulsets"]
- 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 cassandra-pod-delete
- command:
- - /bin/bash
- env:
-
- # provide cassandra service name
- # default service: cassandra
- - name: CASSANDRA_SVC_NAME
- value: ''
-
- # provide the keyspace replication factor
- - name: KEYSPACE_REPLICATION_FACTOR
- value: ''
-
- # provide cassandra port
- # default port: 9042
- - name: CASSANDRA_PORT
- value: '9042'
-
- # provide liveness deployement port
- # default port: 8088, It only supports 8088 port
- - name: LIVENESS_SVC_PORT
- value: '8088'
-
- # provide cassandra liveness image
- - name: CASSANDRA_LIVENESS_IMAGE
- value: 'litmuschaos/cassandra-client:latest'
-
- - name: TOTAL_CHAOS_DURATION
- value: '15'
-
- ## percentage of total pods to target
- - name: PODS_AFFECTED_PERC
- value: ''
-
- - name: CHAOS_INTERVAL
- value: '15'
-
- # SET THE CASSANDRA_LIVENESS_CHECK
- # IT CAN BE `enable` OR `disable`
- - name: CASSANDRA_LIVENESS_CHECK
- value: ''
-
- ## Period to wait before and after injection of chaos
- - name: RAMP_TIME
- value: ''
-
- - name: FORCE
- value: ''
-
- ## it defines the sequence of chaos execution for multiple target pods
- ## supported values: serial, parallel
- - name: SEQUENCE
- value: 'parallel'
-
- ## env var that describes the library used to execute the chaos
- ## default: litmus. Supported values: litmus
- - name: LIB
- value: 'litmus'
-
- labels:
- name: cassandra-pod-delete
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: experiment-job
- app.kubernetes.io/version: latest
diff --git a/experiments/cassandra/cassandra-pod-delete/rbac.yaml b/experiments/cassandra/cassandra-pod-delete/rbac.yaml
deleted file mode 100644
index 7295950..0000000
--- a/experiments/cassandra/cassandra-pod-delete/rbac.yaml
+++ /dev/null
@@ -1,73 +0,0 @@
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: cassandra-pod-delete-sa
- namespace: default
- labels:
- name: cassandra-pod-delete-sa
- app.kubernetes.io/part-of: litmus
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: cassandra-pod-delete-sa
- namespace: default
- labels:
- name: cassandra-pod-delete-sa
- app.kubernetes.io/part-of: litmus
-rules:
- # 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"]
- # Create and manage the liveness and target application services
- - apiGroups: [""]
- resources: ["services"]
- verbs: ["create","delete","get","list", "deletecollection"]
- # Fetch configmaps & secrets details and mount it to the experiment pod (if specified)
- - apiGroups: [""]
- resources: ["secrets","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 deriving the parent/owner details of the pod
- - apiGroups: ["apps"]
- resources: ["deployments","statefulsets"]
- 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"]
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: cassandra-pod-delete-sa
- namespace: default
- labels:
- name: cassandra-pod-delete-sa
- app.kubernetes.io/part-of: litmus
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: cassandra-pod-delete-sa
-subjects:
-- kind: ServiceAccount
- name: cassandra-pod-delete-sa
- namespace: default
-
diff --git a/experiments/cassandra/cassandra.chartserviceversion.yaml b/experiments/cassandra/cassandra.chartserviceversion.yaml
deleted file mode 100644
index 2227e10..0000000
--- a/experiments/cassandra/cassandra.chartserviceversion.yaml
+++ /dev/null
@@ -1,42 +0,0 @@
-apiVersion: litmuchaos.io/v1alpha1
-kind: ChartServiceVersion
-metadata:
- createdAt: 2020-04-14T10:28:08Z
- name: cassandra
- version: 0.1.3
- annotations:
- categories: Cassandra
- chartDescription: Injects cassandra kubernetes chaos
-spec:
- displayName: Cassandra Chaos
- categoryDescription: >
- Cassandra is a free and open-source, distributed, wide column store, NoSQL database management system designed to handle
- large amounts of data across many commodity servers, providing high availability with no single point of failure.
- It will install all the experiments which can be used to inject chaos into cassandra applications.
- experiments:
- - name: cassandra-pod-delete
- description: ""
- keywords:
- - Kubernetes
- - K8S
- - Pod
- - Cassandra
- maintainers:
- - name: ksatchit
- email: karthik.s@mayadata.io
- minKubeVersion: 1.12.0
- provider:
- name: Mayadata
- links:
- - name: Cassandra Website
- url: http://cassandra.apache.org/
- - name: Source Code
- url: https://github.com/apache/cassandra
- - name: Cassandra Slack
- url: https://cassandra-slack.herokuapp.com
- - name: Documentation
- url: http://cassandra.apache.org/doc/latest/
- icon:
- - url: https://raw.githubusercontent.com/litmuschaos/chaos-charts/master/charts/cassandra/icons/cassandra.png
- mediatype: image/png
- chaosexpcrdlink: https://raw.githubusercontent.com/litmuschaos/chaos-charts/master/charts/cassandra/experiments.yaml
diff --git a/experiments/cassandra/cassandra.package.yaml b/experiments/cassandra/cassandra.package.yaml
deleted file mode 100644
index aeab8f3..0000000
--- a/experiments/cassandra/cassandra.package.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-packageName: cassandra
-experiments:
- - name: cassandra-pod-delete
- CSV: cassandra-pod-delete.chartserviceversion.yaml
- desc: "cassandra-pod-delete"
diff --git a/experiments/cassandra/experiments.yaml b/experiments/cassandra/experiments.yaml
deleted file mode 100644
index 0dbe50a..0000000
--- a/experiments/cassandra/experiments.yaml
+++ /dev/null
@@ -1,123 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-description:
- message: |
- Deletes a pod belonging to a casandra statefulset
-kind: ChaosExperiment
-metadata:
- name: cassandra-pod-delete
- labels:
- name: cassandra-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"]
- # Create and manage the liveness and target application services
- - apiGroups: [""]
- resources: ["services"]
- verbs: ["create","delete","get","list", "deletecollection"]
- # Fetch configmaps & secrets details and mount it to the experiment pod (if specified)
- - apiGroups: [""]
- resources: ["secrets","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 deriving the parent/owner details of the pod
- - apiGroups: ["apps"]
- resources: ["deployments","statefulsets"]
- 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 cassandra-pod-delete
- command:
- - /bin/bash
- env:
-
- # provide cassandra service name
- # default service: cassandra
- - name: CASSANDRA_SVC_NAME
- value: ''
-
- # provide the keyspace replication factor
- - name: KEYSPACE_REPLICATION_FACTOR
- value: ''
-
- # provide cassandra port
- # default port: 9042
- - name: CASSANDRA_PORT
- value: '9042'
-
- # provide liveness deployement port
- # default port: 8088, It only supports 8088 port
- - name: LIVENESS_SVC_PORT
- value: '8088'
-
- # provide cassandra liveness image
- - name: CASSANDRA_LIVENESS_IMAGE
- value: 'litmuschaos/cassandra-client:latest'
-
- - name: TOTAL_CHAOS_DURATION
- value: '15'
-
- ## percentage of total pods to target
- - name: PODS_AFFECTED_PERC
- value: ''
-
- - name: CHAOS_INTERVAL
- value: '15'
-
- # SET THE CASSANDRA_LIVENESS_CHECK
- # IT CAN BE `enable` OR `disable`
- - name: CASSANDRA_LIVENESS_CHECK
- value: ''
-
- ## Period to wait before and after injection of chaos
- - name: RAMP_TIME
- value: ''
-
- - name: FORCE
- value: ''
-
- ## it defines the sequence of chaos execution for multiple target pods
- ## supported values: serial, parallel
- - name: SEQUENCE
- value: 'parallel'
-
- ## env var that describes the library used to execute the chaos
- ## default: litmus. Supported values: litmus
- - name: LIB
- value: 'litmus'
-
- labels:
- name: cassandra-pod-delete
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: experiment-job
- app.kubernetes.io/version: latest
-
----
diff --git a/experiments/cassandra/icons/cassandra-pod-delete.png b/experiments/cassandra/icons/cassandra-pod-delete.png
deleted file mode 100644
index 16aa7b4..0000000
Binary files a/experiments/cassandra/icons/cassandra-pod-delete.png and /dev/null differ
diff --git a/experiments/cassandra/icons/cassandra.png b/experiments/cassandra/icons/cassandra.png
deleted file mode 100644
index 3568818..0000000
Binary files a/experiments/cassandra/icons/cassandra.png and /dev/null differ
diff --git a/experiments/kafka/experiments.yaml b/experiments/kafka/experiments.yaml
deleted file mode 100644
index 893dc2b..0000000
--- a/experiments/kafka/experiments.yaml
+++ /dev/null
@@ -1,249 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-description:
- message: |
- Detaching a persistent disk from a node/instance for kafka.
-kind: ChaosExperiment
-metadata:
- name: kafka-broker-disk-failure
- labels:
- name: kafka-broker-disk-failure
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: chaosexperiment
- app.kubernetes.io/version: latest
-spec:
- definition:
- scope: Cluster
- permissions:
- - apiGroups:
- - ""
- - "apps"
- - "batch"
- - "litmuschaos.io"
- resources:
- - "statefulsets"
- - "secrets"
- - "jobs"
- - "pods/log"
- - "events"
- - "pods"
- - "pods/exec"
- - "chaosengines"
- - "chaosexperiments"
- - "chaosresults"
- verbs:
- - "create"
- - "delete"
- - "get"
- - "list"
- - "patch"
- image: "litmuschaos/ansible-runner:latest"
- imagePullPolicy: Always
- args:
- - -c
- - ansible-playbook ./experiments/kafka/kafka-broker-disk-failure/kafka-broker-disk-failure-ansible-logic.yml -i /etc/ansible/hosts -vv; exit 0
- command:
- - /bin/bash
- env:
- - name: ANSIBLE_STDOUT_CALLBACK
- value: 'default'
-
- - name: KAFKA_KIND
- value: 'statefulset'
-
- - name: KAFKA_LIVENESS_STREAM
- value: 'enabled'
-
- - name: KAFKA_LIVENESS_IMAGE
- value: 'litmuschaos/kafka-client:ci'
-
- - name: KAFKA_CONSUMER_TIMEOUT
- value: '30000'
-
- - name: TOTAL_CHAOS_DURATION
- value: '15'
-
- - name: PROJECT_ID
- value: ''
-
- - name: DISK_NAME
- value: ''
-
- - name: ZONE_NAME
- value: ''
-
- # GKE and AWS supported
- - name: CLOUD_PLATFORM
- value: 'GKE'
-
- - name: KAFKA_NAMESPACE
- value: ''
-
- - name: KAFKA_LABEL
- value: ''
-
- - name: KAFKA_BROKER
- value: ''
-
- - name: KAFKA_INSTANCE_NAME
- value: ''
-
- - name: KAFKA_REPLICATION_FACTOR
- value: ''
-
- - name: KAFKA_SERVICE
- value: ''
-
- - name: KAFKA_PORT
- value: ''
-
- - name: ZOOKEEPER_NAMESPACE
- value: ''
-
- - name: ZOOKEEPER_LABEL
- value: ''
-
- - name: ZOOKEEPER_SERVICE
- value: ''
-
- - name: ZOOKEEPER_PORT
- value: ''
- labels:
- name: kafka-broker-disk-failure
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: experiment-job
- app.kubernetes.io/version: latest
- secrets:
- - name: kafka-broker-disk-failure
- mountPath: /tmp/
-
-
----
-apiVersion: litmuschaos.io/v1alpha1
-description:
- message: |
- Deleting a kafka broker pod
-kind: ChaosExperiment
-metadata:
- name: kafka-broker-pod-failure
- labels:
- name: kafka-broker-pod-failure
- 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: ["secrets","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 deriving the parent/owner details of the pod
- - apiGroups: ["apps"]
- resources: ["deployments","statefulsets"]
- 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 kafka-broker-pod-failure
- command:
- - /bin/bash
- env:
-
- - name: KAFKA_KIND
- value: 'statefulset'
-
- - name: KAFKA_LIVENESS_STREAM
- value: 'enable'
-
- - name: KAFKA_LIVENESS_IMAGE
- value: 'litmuschaos/kafka-client:latest'
-
- # Recommended timeout for EKS platform: 60000 ms
- - name: KAFKA_CONSUMER_TIMEOUT
- value: '30000' #in ms
-
- - name: TOTAL_CHAOS_DURATION
- value: '15'
-
- - name: CHAOS_INTERVAL
- value: '5'
-
- ## it defines the sequence of chaos execution for multiple target pods
- ## supported values: serial, parallel
- - name: SEQUENCE
- value: 'parallel'
-
- - name: FORCE
- value: 'true'
-
- - name: KAFKA_INSTANCE_NAME
- value: ''
-
- - name: KAFKA_NAMESPACE
- value: ''
-
- - name: KAFKA_LABEL
- value: ''
-
- - name: KAFKA_BROKER
- value: ''
-
- - name: KAFKA_REPLICATION_FACTOR
- value: ''
-
- - name: KAFKA_SERVICE
- value: ''
-
- - name: KAFKA_PORT
- value: ''
-
- - name: ZOOKEEPER_NAMESPACE
- value: ''
-
- - name: ZOOKEEPER_LABEL
- value: ''
-
- - name: ZOOKEEPER_SERVICE
- value: ''
-
- - name: ZOOKEEPER_PORT
- value: ''
-
- ## env var that describes the library used to execute the chaos
- ## default: litmus. Supported values: litmus
- - name: LIB
- value: 'litmus'
-
- labels:
- name: kafka-broker-pod-failure
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: experiment-job
- app.kubernetes.io/version: latest
-
----
diff --git a/experiments/kafka/icons/kafka-broker-disk-failure.png b/experiments/kafka/icons/kafka-broker-disk-failure.png
deleted file mode 100644
index 08321df..0000000
Binary files a/experiments/kafka/icons/kafka-broker-disk-failure.png and /dev/null differ
diff --git a/experiments/kafka/icons/kafka-broker-pod-failure.png b/experiments/kafka/icons/kafka-broker-pod-failure.png
deleted file mode 100644
index 08321df..0000000
Binary files a/experiments/kafka/icons/kafka-broker-pod-failure.png and /dev/null differ
diff --git a/experiments/kafka/icons/kafka.png b/experiments/kafka/icons/kafka.png
deleted file mode 100644
index 08321df..0000000
Binary files a/experiments/kafka/icons/kafka.png and /dev/null differ
diff --git a/experiments/kafka/kafka-broker-disk-failure/engine.yaml b/experiments/kafka/kafka-broker-disk-failure/engine.yaml
deleted file mode 100644
index 56b1690..0000000
--- a/experiments/kafka/kafka-broker-disk-failure/engine.yaml
+++ /dev/null
@@ -1,81 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-kind: ChaosEngine
-metadata:
- name: kafka-chaos
- namespace: default
-spec:
- # It can be active/stop
- engineState: 'active'
- #ex. values: ns1:name=percona,ns2:run=nginx
- auxiliaryAppInfo: ''
- appinfo:
- appns: 'default'
- applabel: 'app=cp-kafka'
- appkind: 'statefulset'
- chaosServiceAccount: kafka-broker-disk-failure-sa
- experiments:
- - name: kafka-broker-disk-failure
- spec:
- components:
- env:
- # set chaos duration (in sec) as desired
- - name: TOTAL_CHAOS_DURATION
- value: '60'
-
- # choose based on available kafka broker replicas
- - name: KAFKA_REPLICATION_FACTOR
- value: '3'
-
- # get via 'kubectl get pods --show-labels -n '
- - name: KAFKA_LABEL
- value: 'app=cp-kafka'
-
- - name: KAFKA_NAMESPACE
- value: 'default'
-
- # get via 'kubectl get svc -n '
- - name: KAFKA_SERVICE
- value: 'kafka-cp-kafka-headless'
-
- # get via 'kubectl get svc -n '
- - name: KAFKA_PORT
- value: '9092'
-
- # in milliseconds
- - name: KAFKA_CONSUMER_TIMEOUT
- value: '70000'
-
- # ensure to set the instance name if using KUDO operator
- - name: KAFKA_INSTANCE_NAME
- value: ''
-
- - name: ZOOKEEPER_NAMESPACE
- value: 'default'
-
- # get via 'kubectl get pods --show-labels -n '
- - name: ZOOKEEPER_LABEL
- value: 'app=cp-zookeeper'
-
- # get via 'kubectl get svc -n
- - name: ZOOKEEPER_SERVICE
- value: 'kafka-cp-zookeeper-headless'
-
- # get via 'kubectl get svc -n
- - name: ZOOKEEPER_PORT
- value: '2181'
-
- # get from google cloud console or 'gcloud projects list'
- - name: PROJECT_ID
- value: 'argon-tractor-237811'
-
- # attached to (in use by) node where 'kafka-0' is scheduled
- - name: DISK_NAME
- value: 'disk-1'
-
- - name: ZONE_NAME
- value: 'us-central1-a'
-
- # Uses 'disk-1' attached to the node on which it is scheduled
- - name: KAFKA_BROKER
- value: 'kafka-0'
-
\ No newline at end of file
diff --git a/experiments/kafka/kafka-broker-disk-failure/experiment.yaml b/experiments/kafka/kafka-broker-disk-failure/experiment.yaml
deleted file mode 100644
index b354d4e..0000000
--- a/experiments/kafka/kafka-broker-disk-failure/experiment.yaml
+++ /dev/null
@@ -1,118 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-description:
- message: |
- Detaching a persistent disk from a node/instance for kafka.
-kind: ChaosExperiment
-metadata:
- name: kafka-broker-disk-failure
- labels:
- name: kafka-broker-disk-failure
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: chaosexperiment
- app.kubernetes.io/version: latest
-spec:
- definition:
- scope: Cluster
- permissions:
- - apiGroups:
- - ""
- - "apps"
- - "batch"
- - "litmuschaos.io"
- resources:
- - "statefulsets"
- - "secrets"
- - "jobs"
- - "pods/log"
- - "events"
- - "pods"
- - "pods/exec"
- - "chaosengines"
- - "chaosexperiments"
- - "chaosresults"
- verbs:
- - "create"
- - "delete"
- - "get"
- - "list"
- - "patch"
- image: "litmuschaos/ansible-runner:latest"
- imagePullPolicy: Always
- args:
- - -c
- - ansible-playbook ./experiments/kafka/kafka-broker-disk-failure/kafka-broker-disk-failure-ansible-logic.yml -i /etc/ansible/hosts -vv; exit 0
- command:
- - /bin/bash
- env:
- - name: ANSIBLE_STDOUT_CALLBACK
- value: 'default'
-
- - name: KAFKA_KIND
- value: 'statefulset'
-
- - name: KAFKA_LIVENESS_STREAM
- value: 'enabled'
-
- - name: KAFKA_LIVENESS_IMAGE
- value: 'litmuschaos/kafka-client:ci'
-
- - name: KAFKA_CONSUMER_TIMEOUT
- value: '30000'
-
- - name: TOTAL_CHAOS_DURATION
- value: '15'
-
- - name: PROJECT_ID
- value: ''
-
- - name: DISK_NAME
- value: ''
-
- - name: ZONE_NAME
- value: ''
-
- # GKE and AWS supported
- - name: CLOUD_PLATFORM
- value: 'GKE'
-
- - name: KAFKA_NAMESPACE
- value: ''
-
- - name: KAFKA_LABEL
- value: ''
-
- - name: KAFKA_BROKER
- value: ''
-
- - name: KAFKA_INSTANCE_NAME
- value: ''
-
- - name: KAFKA_REPLICATION_FACTOR
- value: ''
-
- - name: KAFKA_SERVICE
- value: ''
-
- - name: KAFKA_PORT
- value: ''
-
- - name: ZOOKEEPER_NAMESPACE
- value: ''
-
- - name: ZOOKEEPER_LABEL
- value: ''
-
- - name: ZOOKEEPER_SERVICE
- value: ''
-
- - name: ZOOKEEPER_PORT
- value: ''
- labels:
- name: kafka-broker-disk-failure
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: experiment-job
- app.kubernetes.io/version: latest
- secrets:
- - name: kafka-broker-disk-failure
- mountPath: /tmp/
-
diff --git a/experiments/kafka/kafka-broker-disk-failure/kafka-broker-disk-failure.chartserviceversion.yaml b/experiments/kafka/kafka-broker-disk-failure/kafka-broker-disk-failure.chartserviceversion.yaml
deleted file mode 100644
index 1984037..0000000
--- a/experiments/kafka/kafka-broker-disk-failure/kafka-broker-disk-failure.chartserviceversion.yaml
+++ /dev/null
@@ -1,42 +0,0 @@
-apiVersion: litmuchaos.io/v1alpha1
-kind: ChartServiceVersion
-metadata:
- createdAt: 2019-11-15T10:28:08Z
- name: kafka-broker-disk-failure
- annotations:
- categories: Kafka
- vendor: Mayadata
- support: https://app.slack.com/client/T09NY5SBT/CNXNB0ZTN
-spec:
- displayName: kafka-broker-disk-failure
- categoryDescription: |
- Detaching a persistent disk from a node/instance for kafka
- keywords:
- - Kubernetes
- - K8S
- - Disk
- - Kafka
- platforms:
- - GKE
- - konvoy
- maturity: alpha
- maintainers:
- - name: ksatchit
- email: karthik.s@mayadata.io
- minKubeVersion: 1.12.0
- provider:
- name: Mayadata
- labels:
- app.kubernetes.io/component: chartserviceversion
- app.kubernetes.io/version: latest
- links:
- - name: Source Code
- url: https://github.com/litmuschaos/litmus-ansible/tree/master/experiments/kafka/kafka-broker-disk-failure
- - name: Documentation
- url: https://v1-docs.litmuschaos.io/docs/kafka-broker-disk-failure/
- - name: Video
- url:
- icon:
- - url:
- mediatype: ""
- chaosexpcrdlink: https://raw.githubusercontent.com/litmuschaos/chaos-charts/master/charts/kafka/kafka-broker-disk-failure/experiment.yaml
diff --git a/experiments/kafka/kafka-broker-disk-failure/rbac.yaml b/experiments/kafka/kafka-broker-disk-failure/rbac.yaml
deleted file mode 100644
index 6d685b7..0000000
--- a/experiments/kafka/kafka-broker-disk-failure/rbac.yaml
+++ /dev/null
@@ -1,38 +0,0 @@
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kafka-broker-disk-failure-sa
- namespace: default
- labels:
- name: kafka-broker-disk-failure-sa
- app.kubernetes.io/part-of: litmus
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: kafka-broker-disk-failure-sa
- labels:
- name: kafka-broker-disk-failure-sa
- app.kubernetes.io/part-of: litmus
-rules:
-- apiGroups: ["","litmuschaos.io","batch","apps"]
- resources: ["pods","jobs","pods/log","events","pods/exec","statefulsets","secrets","chaosengines","chaosexperiments","chaosresults"]
- verbs: ["create","list","get","patch","delete"]
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kafka-broker-disk-failure-sa
- labels:
- name: kafka-broker-disk-failure-sa
- app.kubernetes.io/part-of: litmus
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kafka-broker-disk-failure-sa
-subjects:
-- kind: ServiceAccount
- name: kafka-broker-disk-failure-sa
- namespace: default
-
diff --git a/experiments/kafka/kafka-broker-pod-failure/engine.yaml b/experiments/kafka/kafka-broker-pod-failure/engine.yaml
deleted file mode 100644
index 5a8b305..0000000
--- a/experiments/kafka/kafka-broker-pod-failure/engine.yaml
+++ /dev/null
@@ -1,74 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-kind: ChaosEngine
-metadata:
- name: kafka-chaos
- namespace: default
-spec:
- # It can be active/stop
- engineState: 'active'
- #ex. values: ns1:name=percona,ns2:run=nginx
- auxiliaryAppInfo: ''
- appinfo:
- appns: 'default'
- applabel: 'app=cp-kafka'
- appkind: 'statefulset'
- chaosServiceAccount: kafka-broker-pod-failure-sa
- experiments:
- - name: kafka-broker-pod-failure
- spec:
- components:
- env:
- # set chaos duration (in sec) as desired
- - name: TOTAL_CHAOS_DURATION
- value: '60'
-
- # choose based on available kafka broker replicas
- - name: KAFKA_REPLICATION_FACTOR
- value: '3'
-
- # get via 'kubectl get pods --show-labels -n '
- - name: KAFKA_LABEL
- value: 'app=cp-kafka'
-
- - name: KAFKA_NAMESPACE
- value: 'default'
-
- # get via 'kubectl get svc -n '
- - name: KAFKA_SERVICE
- value: 'kafka-cp-kafka-headless'
-
- # get via 'kubectl get svc -n '
- - name: KAFKA_PORT
- value: '9092'
-
- # Recommended timeout for EKS platform: 60000 ms
- - name: KAFKA_CONSUMER_TIMEOUT
- value: '30000' # in milliseconds
-
- # ensure to set the instance name if using KUDO operator
- - name: KAFKA_INSTANCE_NAME
- value: ''
-
- - name: ZOOKEEPER_NAMESPACE
- value: 'default'
-
- # get via 'kubectl get pods --show-labels -n '
- - name: ZOOKEEPER_LABEL
- value: 'app=cp-zookeeper'
-
- # get via 'kubectl get svc -n
- - name: ZOOKEEPER_SERVICE
- value: 'kafka-cp-zookeeper-headless'
-
- # get via 'kubectl get svc -n
- - name: ZOOKEEPER_PORT
- value: '2181'
-
- # set chaos interval (in sec) as desired
- - name: CHAOS_INTERVAL
- value: '20'
-
- # pod failures without '--force' & default terminationGracePeriodSeconds
- - name: FORCE
- value: 'false'
-
\ No newline at end of file
diff --git a/experiments/kafka/kafka-broker-pod-failure/experiment.yaml b/experiments/kafka/kafka-broker-pod-failure/experiment.yaml
deleted file mode 100644
index 5fae21d..0000000
--- a/experiments/kafka/kafka-broker-pod-failure/experiment.yaml
+++ /dev/null
@@ -1,127 +0,0 @@
-apiVersion: litmuschaos.io/v1alpha1
-description:
- message: |
- Deleting a kafka broker pod
-kind: ChaosExperiment
-metadata:
- name: kafka-broker-pod-failure
- labels:
- name: kafka-broker-pod-failure
- 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: ["secrets","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 deriving the parent/owner details of the pod
- - apiGroups: ["apps"]
- resources: ["deployments","statefulsets"]
- 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 kafka-broker-pod-failure
- command:
- - /bin/bash
- env:
-
- - name: KAFKA_KIND
- value: 'statefulset'
-
- - name: KAFKA_LIVENESS_STREAM
- value: 'enable'
-
- - name: KAFKA_LIVENESS_IMAGE
- value: 'litmuschaos/kafka-client:latest'
-
- # Recommended timeout for EKS platform: 60000 ms
- - name: KAFKA_CONSUMER_TIMEOUT
- value: '30000' #in ms
-
- - name: TOTAL_CHAOS_DURATION
- value: '15'
-
- - name: CHAOS_INTERVAL
- value: '5'
-
- ## it defines the sequence of chaos execution for multiple target pods
- ## supported values: serial, parallel
- - name: SEQUENCE
- value: 'parallel'
-
- - name: FORCE
- value: 'true'
-
- - name: KAFKA_INSTANCE_NAME
- value: ''
-
- - name: KAFKA_NAMESPACE
- value: ''
-
- - name: KAFKA_LABEL
- value: ''
-
- - name: KAFKA_BROKER
- value: ''
-
- - name: KAFKA_REPLICATION_FACTOR
- value: ''
-
- - name: KAFKA_SERVICE
- value: ''
-
- - name: KAFKA_PORT
- value: ''
-
- - name: ZOOKEEPER_NAMESPACE
- value: ''
-
- - name: ZOOKEEPER_LABEL
- value: ''
-
- - name: ZOOKEEPER_SERVICE
- value: ''
-
- - name: ZOOKEEPER_PORT
- value: ''
-
- ## env var that describes the library used to execute the chaos
- ## default: litmus. Supported values: litmus
- - name: LIB
- value: 'litmus'
-
- labels:
- name: kafka-broker-pod-failure
- app.kubernetes.io/part-of: litmus
- app.kubernetes.io/component: experiment-job
- app.kubernetes.io/version: latest
diff --git a/experiments/kafka/kafka-broker-pod-failure/kafka-broker-pod-failure.chartserviceversion.yaml b/experiments/kafka/kafka-broker-pod-failure/kafka-broker-pod-failure.chartserviceversion.yaml
deleted file mode 100644
index e3702e0..0000000
--- a/experiments/kafka/kafka-broker-pod-failure/kafka-broker-pod-failure.chartserviceversion.yaml
+++ /dev/null
@@ -1,45 +0,0 @@
-apiVersion: litmuchaos.io/v1alpha1
-kind: ChartServiceVersion
-metadata:
- createdAt: 2019-11-15T10:28:08Z
- name: kafka-broker-pod-failure
- version: 0.1.6
- annotations:
- categories: Kafka
- vendor: Mayadata
- repository: https://github.com/litmuschaos/chaos-charts
- support: https://app.slack.com/client/T09NY5SBT/CNXNB0ZTN
-spec:
- displayName: kafka-broker-pod-failure
- categoryDescription: |
- This chaos experiment kills (random or specified) kafka broker pods
- keywords:
- - Kubernetes
- - K8S
- - Pod
- - Kafka
- platforms:
- - GKE
- - EKS
- - konvoy
- maturity: alpha
- maintainers:
- - name: ksatchit
- email: karthik.s@mayadata.io
- minKubeVersion: 1.12.0
- provider:
- name: Mayadata
- labels:
- app.kubernetes.io/component: chartserviceversion
- app.kubernetes.io/version: latest
- links:
- - name: Source Code
- url: https://github.com/litmuschaos/litmus-go/tree/master/experiments/kafka/kafka-broker-pod-failure
- - name: Documentation
- url: https://litmuschaos.github.io/litmus/experiments/categories/kafka/kafka-broker-pod-failure/
- - name: Video
- url:
- icon:
- - url:
- mediatype: ""
- chaosexpcrdlink: https://raw.githubusercontent.com/litmuschaos/chaos-charts/master/charts/kafka/kafka-broker-pod-failure/experiment.yaml
diff --git a/experiments/kafka/kafka-broker-pod-failure/rbac.yaml b/experiments/kafka/kafka-broker-pod-failure/rbac.yaml
deleted file mode 100644
index 64fd1db..0000000
--- a/experiments/kafka/kafka-broker-pod-failure/rbac.yaml
+++ /dev/null
@@ -1,67 +0,0 @@
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kafka-broker-pod-failure-sa
- namespace: default
- labels:
- name: kafka-broker-pod-failure-sa
- app.kubernetes.io/part-of: litmus
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: kafka-broker-pod-failure-sa
- labels:
- name: kafka-broker-pod-failure-sa
- app.kubernetes.io/part-of: litmus
-rules:
- # 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: ["secrets","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 deriving the parent/owner details of the pod
- - apiGroups: ["apps"]
- resources: ["deployments","statefulsets"]
- 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"]
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: kafka-broker-pod-failure-sa
- labels:
- name: kafka-broker-pod-failure-sa
- app.kubernetes.io/part-of: litmus
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kafka-broker-pod-failure-sa
-subjects:
-- kind: ServiceAccount
- name: kafka-broker-pod-failure-sa
- namespace: default
-
diff --git a/experiments/kafka/kafka.chartserviceversion.yaml b/experiments/kafka/kafka.chartserviceversion.yaml
deleted file mode 100644
index 8293a4a..0000000
--- a/experiments/kafka/kafka.chartserviceversion.yaml
+++ /dev/null
@@ -1,40 +0,0 @@
-apiVersion: litmuchaos.io/v1alpha1
-kind: ChartServiceVersion
-metadata:
- createdAt: 2019-11-13T10:28:08Z
- name: kafka
- version: 0.1.4
- annotations:
- categories: Kafka
- chartDescription: Injects chaos on kafka components
-spec:
- displayName: Kafka Chaos
- categoryDescription: >
- Kafka is used for building real-time data pipelines and streaming apps. It is horizontally scalable, fault-tolerant, fast,
- and runs in production in thousands of companies
- experiments:
- - name: kafka-broker-pod-failure
- description: ""
- keywords:
- - Kubernetes
- - K8S
- - Kafka
- - Disk
- - Pod
- maintainers:
- - name: ksatchit
- email: karthik.s@mayadata.io
- minKubeVersion: 1.12.0
- provider:
- name: Mayadata
- links:
- - name: Kafka Website
- url: http://kafka.apache.org/
- - name: Source Code
- url: https://github.com/litmuschaos/litmus/tree/master/experiments/kafka
- - name: Community Slack
- url: https://app.slack.com/client/T09NY5SBT/CNXNB0ZTN
- icon:
- - url:
- mediatype:
- chaosexpcrdlink: https://raw.githubusercontent.com/litmuschaos/chaos-charts/master/charts/kafka/experiments.yaml
diff --git a/experiments/kafka/kafka.package.yaml b/experiments/kafka/kafka.package.yaml
deleted file mode 100644
index e4c401d..0000000
--- a/experiments/kafka/kafka.package.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-packageName: kafka
-experiments:
- - name: kafka-broker-pod-failure
- CSV: kafka-broker-pod-failure.chartserviceversion.yaml
- desc: "kafka-broker-pod-failure"
- - name: kafka-broker-disk-failure
- CSV: kafka-broker-disk-failure.chartserviceversion.yaml
- desc: "kafka-broker-disk-failure"