A TCP proxy to simulate network and system conditions for chaos and resiliency testing.
By default the chart will install toxiproxy with blank configuration. You can add toxics to the running configuration using the API.
For large configurations it is easier to store your toxics in a JSON file, in a ConfigMap and pass this to the chart to be used by toxiproxy:
kubectl create configmap my-toxiproxy-config --from-file path/to/your/toxiproxy.jsonAnd then install the chart passing the name of the ConfigMap as a value:
helm install toxiproxy deliveryhero/toxiproxy --set toxiproxyConfig=my-toxiproxy-configHomepage: https://github.com/Shopify/toxiproxy
Add Delivery Hero public chart repo:
helm repo add deliveryhero https://charts.deliveryhero.io/A simple install with default values:
helm install deliveryhero/toxiproxyTo install the chart with the release name my-release:
helm install my-release deliveryhero/toxiproxyTo install with some set values:
helm install my-release deliveryhero/toxiproxy --set values_key1=value1 --set values_key2=value2To install with custom values file:
helm install my-release deliveryhero/toxiproxy -f values.yaml| Key | Type | Default | Description |
|---|---|---|---|
| affinity | object | {} |
|
| args | string | nil |
|
| consumer.name | string | "example" |
|
| deploymentAnnotations | object | {} |
|
| environment | list | [] |
|
| extraLabels | object | {} |
|
| frontend.enabled | bool | false |
|
| frontend.ingress.annotations | object | {} |
|
| frontend.ingress.className | string | "" |
|
| frontend.ingress.hosts[0].host | string | "chart-example-ui.local" |
|
| frontend.ingress.hosts[0].paths[0].path | string | "/" |
|
| frontend.ingress.hosts[0].paths[0].pathType | string | "ImplementationSpecific" |
|
| frontend.ingress.tls | list | [] |
|
| frontend.repository | string | "buckle/toxiproxy-frontend" |
|
| frontend.resources | object | {} |
|
| fullnameOverride | string | "" |
|
| image.pullPolicy | string | "IfNotPresent" |
|
| image.repository | string | "ghcr.io/shopify/toxiproxy" |
|
| image.tag | string | "2.7.0" |
|
| imagePullSecrets | list | [] |
|
| ingress.annotations | object | {} |
|
| ingress.className | string | "" |
|
| ingress.enabled | bool | true |
|
| ingress.hosts[0].host | string | "chart-example.local" |
|
| ingress.hosts[0].paths[0].path | string | "/" |
|
| ingress.hosts[0].paths[0].pathType | string | "ImplementationSpecific" |
|
| ingress.tls | list | [] |
|
| init.image.repository | string | "busybox" |
the docker repository and image to be used for the init container. |
| init.image.tag | string | "latest" |
the docker image tag for the init container image |
| nameOverride | string | "" |
|
| nodeSelector."kubernetes.io/arch" | string | "amd64" |
|
| nodeSelector."kubernetes.io/os" | string | "linux" |
|
| pdb.enabled | bool | false |
Whether to create a PodDisruptionBudget |
| podAnnotations | object | {} |
|
| podSecurityContext | object | {} |
|
| replicaCount | int | 1 |
|
| resources | object | {} |
|
| securityContext | object | {} |
|
| service.configJsonPath | string | "/home/toxiproxy/proxies/config.json" |
|
| service.listeningAddress | string | "0.0.0.0" |
|
| service.listeningPort | int | 8474 |
|
| service.port | int | 80 |
|
| service.proxies.ports | string | nil |
|
| service.type | string | "ClusterIP" |
|
| serviceAccount.create | bool | true |
|
| serviceAccount.name | string | nil |
|
| tolerations | list | [] |
|
| toxiproxyConfig | string | "" |
| Name | Url | |
|---|---|---|
| nreymundo | no-reply@deliveryhero.com |