Consul
Control Plane Request Limit configuration reference
This topic describes the configuration options for the control-plane-request-limit
configuration entry. You can only write the control-plane-request-limit
configuration entry to the default
partition, but the configuration entry applies to all client requests that target any partition.
Enterprise
This feature requires Consul Enterprise. Refer to the feature compatibility matrix for additional information.
Configuration model
The following list outlines field hierarchy, language-specific data types, and requirements in a control plane request limit configuration entry. Click on a property name to view additional details, including default values.
kind
: string | required | must be set tocontrol-plane-request-limit
mode
: string | required | default ispermissive
name
: string | requiredread_rate
: number |100
write_rate
: number |100
kv
: map | no defaultread_rate
: number |100
write_rate
: number |100
acl
: map | no defaultread_rate
: number |100
write_rate
: number |100
catalog
: mapread_rate
: number | default is100
write_rate
: number | default is100
Complete configuration
When every field is defined, a control plane request limit configuration entry has the following form:
Kind = "control-plane-request-limit"
Name = "<name-for-the-entry>"
Mode = "permissive"
ReadRate = 100
WriteRate = 100
KV = {
ReadRate = 100
WriteRate = 100
}
ACL = {
ReadRate = 100
WriteRate = 100
}
Catalog = {
ReadRate = 100
WriteRate = 100
}
Specification
This section provides details about the fields you can configure in the control plane request limit configuration entry.
kind
Specifies the type of configuration entry to implement. Must be set tocontrol-plane-request-limit
Values
- Default: none
- This field is required.
- Data type: String value that must be set to
control-plane-request-limit
.
mode
Specifies an action to take if the rate of requests exceeds the limit.
Values
- Default: None
- This field is required.
- One of the following string values:
permissive
: The server continues to allow requests and records an error in the logs. This is the default value formode
.enforcing
: The server stops accepting requests and records an error in the logs.disabled
: Limits are not enforced or tracked.
name
Specifies the name of the configuration entry.
Values
- Default: none
- This field is required.
- Data type: string
read_rate
Specifies the maximum number of read requests per second that the agent allows.
Values
- Default: No limit.
- Data type: number
write_rate
Specifies the maximum number of write requests per second that the agent allows.
Values
- Default: No limit.
- Data type: number
kv
Specifies the maximum number of read and write requests to the Consul key-value store.
Values
- Default: none
- Data type is a map containing the following parameters:
kv.read_rate
Specifies the maximum number of read requests per second allowed to the Consul key-value store.
Values
- Default: No limit.
- Data type: number
kv.write_rate
Specifies the maximum number of write requests per second allowed to the Consul key-value store.
Values
- Default: No limit.
- Data type: number
acl
Specifies the maximum number of read and write ACL requests to the Consul server.
acl.read_rate
S Specifies the maximum number of ACL read requests per second allowed to the Consul server.
Values
- Default: No limit.
- Data type: number
acl.write_rate
Specifies the maximum number of ACL write requests per second allowed to the Consul server.
Values
- Default: No limit.
- Data type: number
catalog
Specifies the maximum number of read and write requests to the Consul catalog.
catalog.read_rate
Specifies the maximum number of read requests per second allowed to the Consul catalog.
Values
- Default: No limit.
- Data type: number
catalog.write_rate
Specifies the maximum number of write requests per second allowed to the Consul catalog.
Values
- Default: No limit.
- Data type: number