(feat): Add pod-network-corruption chart (#90)
Signed-off-by: shubhamchaudhary <shubham.chaudhary@mayadata.io> Co-authored-by: Chandan Kumar <chandan.kumar@mayadata.io>
This commit is contained in:
committed by
Chandan Kumar
parent
ac6b7af589
commit
b0baeb3b8b
@@ -18,13 +18,15 @@ spec:
|
|||||||
- pod-cpu-hog
|
- pod-cpu-hog
|
||||||
- pod-network-latency
|
- pod-network-latency
|
||||||
- drain-node
|
- drain-node
|
||||||
|
- pod-network-corruption
|
||||||
|
|
||||||
keywords:
|
keywords:
|
||||||
- Kubernetes
|
- Kubernetes
|
||||||
- Container
|
- Container
|
||||||
- node
|
- Node
|
||||||
- pod
|
- Pod
|
||||||
- disk
|
- Disk
|
||||||
|
- Network
|
||||||
maintainers:
|
maintainers:
|
||||||
- name: ksatchit
|
- name: ksatchit
|
||||||
email: karthik.s@mayadata.io
|
email: karthik.s@mayadata.io
|
||||||
|
@@ -27,3 +27,6 @@ experiments:
|
|||||||
- name: drain-node
|
- name: drain-node
|
||||||
CSV: drain-node.chartserviceversion.yaml
|
CSV: drain-node.chartserviceversion.yaml
|
||||||
desc: "drain-node"
|
desc: "drain-node"
|
||||||
|
- name: pod-network-corruption
|
||||||
|
CSV: pod-network-corruption.chartserviceversion.yaml
|
||||||
|
desc: "pod-network-corruption"
|
||||||
|
BIN
charts/generic/icons/pod-network-corruption.png
Normal file
BIN
charts/generic/icons/pod-network-corruption.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.5 KiB |
58
charts/generic/pod-network-corruption/experiment.yaml
Normal file
58
charts/generic/pod-network-corruption/experiment.yaml
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
apiVersion: litmuschaos.io/v1alpha1
|
||||||
|
description:
|
||||||
|
message: |
|
||||||
|
Inject network packet corruption into application pod
|
||||||
|
kind: ChaosExperiment
|
||||||
|
metadata:
|
||||||
|
name: pod-network-corruption
|
||||||
|
version: 0.1.0
|
||||||
|
spec:
|
||||||
|
definition:
|
||||||
|
scope: Namespaced
|
||||||
|
permissions:
|
||||||
|
- apiGroups:
|
||||||
|
- ""
|
||||||
|
- "batch"
|
||||||
|
- "litmuschaos.io"
|
||||||
|
resources:
|
||||||
|
- "jobs"
|
||||||
|
- "pods"
|
||||||
|
- "chaosengines"
|
||||||
|
- "chaosexperiments"
|
||||||
|
- "chaosresults"
|
||||||
|
verbs:
|
||||||
|
- "create"
|
||||||
|
- "delete"
|
||||||
|
- "list"
|
||||||
|
- "patch"
|
||||||
|
- "get"
|
||||||
|
image: "litmuschaos/ansible-runner:ci"
|
||||||
|
args:
|
||||||
|
- -c
|
||||||
|
- ansible-playbook ./experiments/generic/pod_network_corruption/pod_network_corruption_ansible_logic.yml -i /etc/ansible/hosts -vv; exit 0
|
||||||
|
command:
|
||||||
|
- /bin/bash
|
||||||
|
env:
|
||||||
|
- name: ANSIBLE_STDOUT_CALLBACK
|
||||||
|
value: 'default'
|
||||||
|
|
||||||
|
- name: TARGET_CONTAINER
|
||||||
|
value: ''
|
||||||
|
|
||||||
|
# provide lib image
|
||||||
|
- name: LIB_IMAGE
|
||||||
|
value: 'gaiaadm/pumba:0.6.5'
|
||||||
|
|
||||||
|
- name: NETWORK_INTERFACE
|
||||||
|
value: 'eth0'
|
||||||
|
|
||||||
|
- name: NETWORK_PACKET_CORRUPTION_PERCENTAGE
|
||||||
|
value: '100' #in PERCENTAGE
|
||||||
|
|
||||||
|
- name: TOTAL_CHAOS_DURATION
|
||||||
|
value: '60000' #in ms
|
||||||
|
|
||||||
|
- name: LIB
|
||||||
|
value: 'pumba'
|
||||||
|
labels:
|
||||||
|
name: pod-network-corruption
|
@@ -0,0 +1,39 @@
|
|||||||
|
apiVersion: litmuchaos.io/v1alpha1
|
||||||
|
kind: ChartServiceVersion
|
||||||
|
metadata:
|
||||||
|
name: pod-network-corruption
|
||||||
|
version: 0.1.0
|
||||||
|
annotations:
|
||||||
|
categories: Kubernetes
|
||||||
|
vendor: CNCF
|
||||||
|
support: https://slack.kubernetes.io/
|
||||||
|
spec:
|
||||||
|
displayName: pod-network-corruption
|
||||||
|
categoryDescription: |
|
||||||
|
Pod-network-corruption contains chaos to disrupt network connectivity to kubernetes pods. Experiments can inject percentage packet corruption on the app replica pods.
|
||||||
|
- Causes packet corruption of application replica by injecting packet corruption using pumba.
|
||||||
|
- The application pod should be healthy once chaos is stopped. Service-requests should be served (say, via alternate replicas) despite chaos.
|
||||||
|
keywords:
|
||||||
|
- Kubernetes
|
||||||
|
- Network
|
||||||
|
- Corruption
|
||||||
|
platforms:
|
||||||
|
- GKE
|
||||||
|
maturity: alpha
|
||||||
|
maintainers:
|
||||||
|
- name: Shubham Chaudhary
|
||||||
|
email: shubham.chaudhary@mayadata.io
|
||||||
|
minKubeVersion: 1.12.0
|
||||||
|
provider:
|
||||||
|
name: Mayadata
|
||||||
|
links:
|
||||||
|
- name: Kubernetes Website
|
||||||
|
url: https://kubernetes.io
|
||||||
|
- name: Source Code
|
||||||
|
url: https://github.com/kubernetes/kubernetes
|
||||||
|
- name: Docs
|
||||||
|
url: https://docs.litmuschaos.io/docs/pod-network-corruption/
|
||||||
|
icon:
|
||||||
|
- base64data: ""
|
||||||
|
mediatype: ""
|
||||||
|
chaosexpcrdlink: https://raw.githubusercontent.com/litmuschaos/chaos-charts/master/charts/generic/pod-network-corruption/experiment.yaml
|
Reference in New Issue
Block a user