Service Protection Based on PromQL Query
Configuration
Blueprint name: policies/service-protection/promql
Parameters
policy
| Parameter | policy.components |
| Description | List of additional circuit components. |
| Type | Array of Object (aperture.spec.v1.Component) |
| Default Value | Expand |
| Parameter | policy.evaluation_interval |
| Description | The interval between successive evaluations of the Circuit. |
| Type | string |
| Default Value | 10s |
| Parameter | policy.policy_name |
| Description | Name of the policy. |
| Type | string |
| Default Value | __REQUIRED_FIELD__ |
| Parameter | policy.promql_query |
| Description | PromQL query. |
| Type | string |
| Default Value | __REQUIRED_FIELD__ |
| Parameter | policy.resources |
| Description | Additional resources. |
| Type | Object (aperture.spec.v1.Resources) |
| Default Value | Expand |
| Parameter | policy.setpoint |
| Description | Setpoint. |
| Type | Number (double) |
| Default Value | __REQUIRED_FIELD__ |
policy.service_protection_core
| Parameter | policy.service_protection_core.adaptive_load_scheduler |
| Description | Parameters for Adaptive Load Scheduler. |
| Type | Object (aperture.spec.v1.AdaptiveLoadSchedulerParameters) |
| Default Value | Expand |
| Parameter | policy.service_protection_core.dry_run |
| Description | Default configuration for setting dry run mode on Load Scheduler. In dry run mode, the Load Scheduler acts as a passthrough and does not throttle flows. This config can be updated at runtime without restarting the policy. |
| Type | Boolean |
| Default Value | false |
| Parameter | policy.service_protection_core.overload_confirmations |
| Description | List of overload confirmation criteria. Load scheduler can throttle flows when all of the specified overload confirmation criteria are met. |
| Type | Array of Object (overload_confirmation) |
| Default Value | Expand |
dashboard
| Parameter | dashboard.extra_filters |
| Description | Additional filters to pass to each query to Grafana datasource. |
| Type | Object (map[string]string) |
| Default Value | Expand |
| Parameter | dashboard.refresh_interval |
| Description | Refresh interval for dashboard panels. |
| Type | string |
| Default Value | 5s |
| Parameter | dashboard.time_from |
| Description | Time from of dashboard. |
| Type | string |
| Default Value | now-15m |
| Parameter | dashboard.time_to |
| Description | Time to of dashboard. |
| Type | string |
| Default Value | now |
| Parameter | dashboard.title |
| Description | Name of the main dashboard. |
| Type | string |
| Default Value | Aperture Service Protection |
dashboard.datasource
| Parameter | dashboard.datasource.filter_regex |
| Description | Datasource filter regex. |
| Type | string |
| Default Value | |
| Parameter | dashboard.datasource.name |
| Description | Datasource name. |
| Type | string |
| Default Value | $datasource |
Schemas
overload_confirmation
| Parameter | operator |
| Description | The operator for the overload confirmation criteria. oneof: `gt | lt | gte | lte | eq | neq` |
| Type | string |
| Default Value | |
| Parameter | query_string |
| Description | The Prometheus query to be run. Must return a scalar or a vector with a single element. |
| Type | string |
| Default Value | |
| Parameter | threshold |
| Description | The threshold for the overload confirmation criteria. |
| Type | Number (double) |
| Default Value | |
Dynamic Configuration
note
The following configuration parameters can be dynamically configured at runtime, without reloading the policy.
Parameters
| Parameter | dry_run |
| Description | Dynamic configuration for setting dry run mode at runtime without restarting this policy. In dry run mode the scheduler acts as pass through to all flow and does not queue flows. It is useful for observing the behavior of load scheduler without disrupting any real traffic. |
| Type | Boolean |
| Default Value | __REQUIRED_FIELD__ |