Outlier detection
Outlier detection for inbound traffic to backend service
Configuration
apiVersion: kuma.io/v1alpha1
kind: MeshCircuitBreaker
metadata:
name: backend-inbound-outlier-detection
namespace: kuma-demo
labels:
kuma.io/mesh: default
spec:
targetRef:
kind: Dataplane
labels:
app: web
rules:
- default:
outlierDetection:
interval: 5s
baseEjectionTime: 30s
maxEjectionPercent: 20
splitExternalAndLocalErrors: true
detectors:
totalFailures:
consecutive: 10
gatewayFailures:
consecutive: 10
localOriginFailures:
consecutive: 10
successRate:
minimumHosts: 5
requestVolume: 10
standardDeviationFactor: 1.9
failurePercentage:
requestVolume: 10
minimumHosts: 5
threshold: 85
type: MeshCircuitBreaker
name: backend-inbound-outlier-detection
mesh: default
spec:
targetRef:
kind: Dataplane
labels:
app: web
rules:
- default:
outlierDetection:
interval: 5s
baseEjectionTime: 30s
maxEjectionPercent: 20
splitExternalAndLocalErrors: true
detectors:
totalFailures:
consecutive: 10
gatewayFailures:
consecutive: 10
localOriginFailures:
consecutive: 10
successRate:
minimumHosts: 5
requestVolume: 10
standardDeviationFactor: 1.9
failurePercentage:
requestVolume: 10
minimumHosts: 5
threshold: 85
Please adjust konnect_mesh_control_plane.my_meshcontrolplane.id and konnect_mesh.my_mesh.name according to your current configuration.
resource "konnect_mesh_circuit_breaker" "backend_inbound_outlier_detection" {
provider = konnect-beta
type = "MeshCircuitBreaker"
name = "backend-inbound-outlier-detection"
spec = {
target_ref = {
kind = "Dataplane"
labels = {
app = "web"
}
}
rules = [
{
default = {
outlier_detection = {
interval = "5s"
base_ejection_time = "30s"
max_ejection_percent = "20"
split_external_and_local_errors = "true"
detectors = {
total_failures = {
consecutive = "10"
}
gateway_failures = {
consecutive = "10"
}
local_origin_failures = {
consecutive = "10"
}
success_rate = {
minimum_hosts = "5"
request_volume = "10"
standard_deviation_factor = "1.9"
}
failure_percentage = {
request_volume = "10"
minimum_hosts = "5"
threshold = "85"
}
}
}
}
}
]
}
labels = {
"kuma.io/mesh" = konnect_mesh.my_mesh.name
}
cp_id = konnect_mesh_control_plane.my_meshcontrolplane.id
mesh = konnect_mesh.my_mesh.name
}