From 8d3c5eb57ed322717b76af16a4a5d0bd045c6491 Mon Sep 17 00:00:00 2001 From: Neelanjan Manna Date: Thu, 15 Jul 2021 13:01:47 +0530 Subject: [PATCH] GCP VM Disk Loss Charts (#483) * Added charts for GCP vm-disk-loss experiments Signed-off-by: neelanjan00 --- charts/gcp/gcp-vm-disk-loss/engine.yaml | 42 ++++++++ charts/gcp/gcp-vm-disk-loss/experiment.yaml | 93 ++++++++++++++++++ .../gcp-vm-disk-loss.chartserviceversion.yaml | 34 +++++++ charts/gcp/gcp-vm-disk-loss/rbac.yaml | 46 +++++++++ .../gcp/gcp-vm-instance-stop/experiment.yaml | 2 +- ...-vm-instance-stop.chartserviceversion.yaml | 2 +- charts/gcp/gcp.chartserviceversion.yaml | 4 +- charts/gcp/gcp.package.yaml | 3 + charts/gcp/icons/gcp-vm-disk-loss.png | Bin 0 -> 40149 bytes 9 files changed, 223 insertions(+), 3 deletions(-) create mode 100644 charts/gcp/gcp-vm-disk-loss/engine.yaml create mode 100644 charts/gcp/gcp-vm-disk-loss/experiment.yaml create mode 100644 charts/gcp/gcp-vm-disk-loss/gcp-vm-disk-loss.chartserviceversion.yaml create mode 100644 charts/gcp/gcp-vm-disk-loss/rbac.yaml create mode 100644 charts/gcp/icons/gcp-vm-disk-loss.png diff --git a/charts/gcp/gcp-vm-disk-loss/engine.yaml b/charts/gcp/gcp-vm-disk-loss/engine.yaml new file mode 100644 index 0000000..dfa3acf --- /dev/null +++ b/charts/gcp/gcp-vm-disk-loss/engine.yaml @@ -0,0 +1,42 @@ +apiVersion: litmuschaos.io/v1alpha1 +kind: ChaosEngine +metadata: + name: gcp-disk-chaos + namespace: default +spec: + # It can be active/stop + engineState: 'active' + chaosServiceAccount: gcp-vm-disk-loss-sa + experiments: + - name: gcp-vm-disk-loss + spec: + components: + env: + # set chaos duration (in sec) as desired + - name: TOTAL_CHAOS_DURATION + value: '30' + + # set chaos interval (in sec) as desired + - name: CHAOS_INTERVAL + value: '30' + + # set the GCP project id + - name: GCP_PROJECT_ID + value: '' + + # set the disk volume name(s) as comma seperated values + # eg. volume1,volume2,... + - name: DISK_VOLUME_NAMES + value: '' + + # set the disk zone(s) as comma seperated values in the corresponding + # order of DISK_VOLUME_NAME + # eg. zone1,zone2,... + - name: DISK_ZONES + value: '' + + # set the device name(s) as comma seperated values in the corresponding + # order of DISK_VOLUME_NAME + # eg. device1,device2,... + - name: DEVICE_NAMES + value: '' diff --git a/charts/gcp/gcp-vm-disk-loss/experiment.yaml b/charts/gcp/gcp-vm-disk-loss/experiment.yaml new file mode 100644 index 0000000..d6e0a29 --- /dev/null +++ b/charts/gcp/gcp-vm-disk-loss/experiment.yaml @@ -0,0 +1,93 @@ +apiVersion: litmuschaos.io/v1alpha1 +description: + message: | + Causes loss of a non-boot storage persistent disk from a GCP VM instance for a specified duration of time +kind: ChaosExperiment +metadata: + name: gcp-vm-disk-loss + labels: + name: gcp-vm-disk-loss + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: chaosexperiment + app.kubernetes.io/version: latest +spec: + definition: + scope: Cluster + permissions: + - apiGroups: + - "" + - "batch" + - "litmuschaos.io" + resources: + - "jobs" + - "pods" + - "pods/log" + - "events" + - "secrets" + - "pods/exec" + - "chaosengines" + - "chaosexperiments" + - "chaosresults" + verbs: + - "create" + - "list" + - "get" + - "patch" + - "update" + - "delete" + - "deletecollection" + image: "litmuschaos/go-runner:ci" + imagePullPolicy: Always + args: + - -c + - ./experiments -name gcp-vm-disk-loss + command: + - /bin/bash + env: + + - name: TOTAL_CHAOS_DURATION + value: '30' + + - name: CHAOS_INTERVAL + value: '30' + + - name: LIB + value: 'litmus' + + # Period to wait before and after injection of chaos in sec + - name: RAMP_TIME + value: '' + + # parallel or serial; determines how chaos is injected + - name: SEQUENCE + value: 'parallel' + + # set the GCP project id + - name: GCP_PROJECT_ID + value: '' + + # set the disk volume name(s) as comma seperated values + # eg. volume1,volume2,... + - name: DISK_VOLUME_NAMES + value: '' + + # set the disk zone(s) as comma seperated values in the corresponding + # order of DISK_VOLUME_NAME + # eg. zone1,zone2,... + - name: DISK_ZONES + value: '' + + # set the device name(s) as comma seperated values in the corresponding + # order of DISK_VOLUME_NAME + # eg. device1,device2,... + - name: DEVICE_NAMES + value: '' + + labels: + name: gcp-vm-disk-loss + app.kubernetes.io/part-of: litmus + app.kubernetes.io/component: experiment-job + app.kubernetes.io/version: latest + secrets: + - name: cloud-secret + mountPath: /tmp/ diff --git a/charts/gcp/gcp-vm-disk-loss/gcp-vm-disk-loss.chartserviceversion.yaml b/charts/gcp/gcp-vm-disk-loss/gcp-vm-disk-loss.chartserviceversion.yaml new file mode 100644 index 0000000..d7b70e9 --- /dev/null +++ b/charts/gcp/gcp-vm-disk-loss/gcp-vm-disk-loss.chartserviceversion.yaml @@ -0,0 +1,34 @@ +apiVersion: litmuchaos.io/v1alpha1 +kind: ChartServiceVersion +metadata: + name: gcp-vm-disk-loss + version: 0.1.0 + annotations: + categories: gcp +spec: + displayName: gcp-vm-disk-loss + categoryDescription: > + Causes loss of a non-boot storage persistent disk from a GCP VM instance for a specified duration of time + keywords: + - "persistent-disks" + - "kubernetes" + - "gcp" + platforms: + - "GCP" + maturity: alpha + maintainers: + - name: neelanjan00 + email: neelanjan@chaosnative.com + minKubeVersion: 1.12.0 + provider: + name: ChaosNative + labels: + app.kubernetes.io/component: chartserviceversion + app.kubernetes.io/version: latest + links: + - name: Documentation + url: https://docs.litmuschaos.io/docs/getstarted/ + icon: + - url: + mediatype: "" + chaosexpcrdlink: https://raw.githubusercontent.com/litmuschaos/chaos-charts/master/charts/gcp/gcp-vm-disk-loss/experiment.yaml diff --git a/charts/gcp/gcp-vm-disk-loss/rbac.yaml b/charts/gcp/gcp-vm-disk-loss/rbac.yaml new file mode 100644 index 0000000..286fe0e --- /dev/null +++ b/charts/gcp/gcp-vm-disk-loss/rbac.yaml @@ -0,0 +1,46 @@ +--- +apiVersion: v1 +kind: ServiceAccount +metadata: + name: gcp-vm-disk-loss-sa + namespace: default + labels: + name: gcp-vm-disk-loss-sa + app.kubernetes.io/part-of: litmus +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: gcp-vm-disk-loss-sa + labels: + name: gcp-vm-disk-loss-sa + app.kubernetes.io/part-of: litmus +rules: +- apiGroups: [""] + resources: ["pods","events","secrets"] + verbs: ["create","list","get","patch","update","delete","deletecollection"] +- apiGroups: [""] + resources: ["pods/exec","pods/log"] + verbs: ["create","list","get"] +- apiGroups: ["batch"] + resources: ["jobs"] + verbs: ["create","list","get","delete","deletecollection"] +- apiGroups: ["litmuschaos.io"] + resources: ["chaosengines","chaosexperiments","chaosresults"] + verbs: ["create","list","get","patch","update"] +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: gcp-vm-disk-loss-sa + labels: + name: gcp-vm-disk-loss-sa + app.kubernetes.io/part-of: litmus +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: gcp-vm-disk-loss-sa +subjects: +- kind: ServiceAccount + name: gcp-vm-disk-loss-sa + namespace: default \ No newline at end of file diff --git a/charts/gcp/gcp-vm-instance-stop/experiment.yaml b/charts/gcp/gcp-vm-instance-stop/experiment.yaml index 77ff5c3..791c989 100644 --- a/charts/gcp/gcp-vm-instance-stop/experiment.yaml +++ b/charts/gcp/gcp-vm-instance-stop/experiment.yaml @@ -63,7 +63,7 @@ spec: # period to wait before and after injection of chaos in sec - name: RAMP_TIME - value: '0' + value: '' # enable or disable; shall be enabled if the target instance is a part of an auto scaling group. - name: AUTO_SCALING_GROUP diff --git a/charts/gcp/gcp-vm-instance-stop/gcp-vm-instance-stop.chartserviceversion.yaml b/charts/gcp/gcp-vm-instance-stop/gcp-vm-instance-stop.chartserviceversion.yaml index 977aee4..7916c3d 100644 --- a/charts/gcp/gcp-vm-instance-stop/gcp-vm-instance-stop.chartserviceversion.yaml +++ b/charts/gcp/gcp-vm-instance-stop/gcp-vm-instance-stop.chartserviceversion.yaml @@ -14,7 +14,7 @@ spec: - "kubernetes" - "gcp" platforms: - - "GKE" + - "GCP" maturity: alpha maintainers: - name: neelanjan00 diff --git a/charts/gcp/gcp.chartserviceversion.yaml b/charts/gcp/gcp.chartserviceversion.yaml index 7f1909a..9620465 100644 --- a/charts/gcp/gcp.chartserviceversion.yaml +++ b/charts/gcp/gcp.chartserviceversion.yaml @@ -11,10 +11,12 @@ spec: GCP contains chaos to disrupt state of gcp resources running part of the gcp services experiments: - gcp-vm-instance-stop + - gcp-vm-disk-loss keywords: - "pods" - "kubernetes" - - "gcp" + - "disk" + - "gcp" maintainers: - name: neelanjan00 email: neelanjan@chaosnative.com diff --git a/charts/gcp/gcp.package.yaml b/charts/gcp/gcp.package.yaml index 3b93ea9..eea3155 100644 --- a/charts/gcp/gcp.package.yaml +++ b/charts/gcp/gcp.package.yaml @@ -3,3 +3,6 @@ experiments: - name: gcp-vm-instance-stop CSV: gcp-vm-instance-stop.chartserviceversion.yaml desc: "gcp-vm-instance-stop" + - name: gcp-vm-disk-loss + CSV: gcp-vm-disk-loss.chartserviceversion.yaml + desc: "gcp-vm-disk-loss" diff --git a/charts/gcp/icons/gcp-vm-disk-loss.png b/charts/gcp/icons/gcp-vm-disk-loss.png new file mode 100644 index 0000000000000000000000000000000000000000..1b1b94c522b45561914527f96acb40d2b0b635df GIT binary patch literal 40149 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

-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 literal 0 HcmV?d00001