Introduction
This section introduces you to resilience probes, its importance, types, and generic properties.
Before you begin
What is a resilience probe?
Resilience probes are health-checkers, that is, they monitor your application's health before, during and after a chaos experiment. Depending on the type of probe, probes can:
- Run
cmd
commands for innumerable validations, - Run Kubernetes commands, send HTTP requests, check for a label or field selector missing and assert if the resource is absent or not,
- Execute PromQL queries, perform conditional valdation on QPS or probe success percentages,
- Validate your error budget (SLO probe),
- Connect with the APM tool and assert metrics (Datadog probe).
Depending on your requirement, probes can do a lot more than what is discussed earlier.
Why is it important?
- Shareable: Probes create a global instance of probes, that is, a shared entity that can be used across multiple faults.
- Reusability: You can create the validation instance first and use it across different experiments.
- It avoids repeated creation of same probes for similar requirements.
This is also in accordance with how chaos engineering pans out:
- Plan the hypothesis.
- Measure the validation criteria to check against the SLA.
Types of resilience probes
HCE facilitates 6 types of resilience probes listed below. Click each probe to navigate to details such as probe property, definition, schema, authentication, methods, and so on.
Generic run properties for all probes
Listed below are the generic runProperties
of all probes.
Property | Required | Data type |
---|---|---|
probeTimeout | Yes | string with +d[ms][s][m][h] format |
interval | Yes | string with +d[ms][s][m][h] format |
retry | Only available for Kubernetes (optional) | |
attempt | Yes | positive integer |
probePollingInterval | string with +d[ms][s][m][h] format | |
intialDelay | string with +d[ms][s][m][h] format | |
stopOnFailure | bool | |
verbosity | Only available for Kubernetes (optional) | string with "info" or "debug" info |
Enable resilience probes
Currently, resilience probes is behind the feature flag CHAOS_PROBE_ENABLED
. Contact Harness support to enable it.