This experiment Scale the application replicas and test the node autoscaling on cluster. Check pod scaler docs for more info. To know more and get started with chaos-actions visit github-chaos-actions.
A Sample workflow to run pod autoscaler experiment:
.github/workflows/main.yml
name: CI
on:
push:
branches: [ master ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Running pod autoscaler chaos experiment
uses: litmuschaos/github-chaos-actions@v0.4.0
env:
KUBE_CONFIG_DATA: ${{ secrets.KUBE_CONFIG_DATA }}
##If litmus is not installed
INSTALL_LITMUS: true
##Give application info under chaos
APP_NS: default
APP_LABEL: run=nginx
APP_KIND: deployment
EXPERIMENT_NAME: pod-autoscaler
##Custom images can also be used
EXPERIMENT_IMAGE: litmuschaos/go-runner
EXPERIMENT_IMAGE_TAG: latest
IMAGE_PULL_POLICY: Always
TOTAL_CHAOS_DURATION: 60
##Select true if you want to uninstall litmus after chaos
LITMUS_CLEANUP: trueThe application pod for pod-autoscaler will be identified with the app info variables.
Supported Chaos Action Tunables
| Variables | Description | Specify In Chaos Action | Default Value |
|---|---|---|---|
| EXPERIMENT_NAME | For Running pod autoscaler experiment keep it pod-autoscaler | Mandatory | No default value |
| CHAOS_INTERVAL | Time interval b/w two successive pod failures (in sec) | Optional | Default value is 5s |
| TOTAL_CHAOS_DURATION | The time duration for chaos injection (seconds) | Optional | Defaults to 15s, NOTE: Overall run duration of the experiment may exceed the TOTAL_CHAOS_DURATION by a few min |
| APP_NS | Provide namespace of application under chaos | Optional | Default value is default |
| APP_LABEL | Provide application label of application under chaos. | Optional | Default value is run=nginx |
| APP_KIND | Provide the kind of application | Optional | Default value is deployment |
| INSTALL_LITMUS | Keep it true to install litmus if litmus is not already installed. | Optional | Default value is not set to true |
| LITMUS_CLEANUP | Keep it true to uninstall litmus after chaos | Optional | Default value is not set to true |
| EXPERIMENT_IMAGE | We can provide custom image for running chaos experiment | Optional | Default value is litmuschaos/go-runner |
| EXPERIMENT_IMAGE_TAG | We can set the image tag while using custom image for the chaos experiment | Optional | Default value is latest |
| IMAGE_PULL_POLICY | We can set the image pull policy while using custom image for running chaos experiment | Optional | Default value is Always |