2.9 KiB
layout | page_title | sidebar_current | description |
---|---|---|---|
consul | Consul: consul_prepared_query | docs-consul-resource-prepared-query | Allows Terraform to manage a Consul prepared query |
consul_prepared_query
Allows Terraform to manage a Consul prepared query.
Managing prepared queries is done using Consul's REST API. This resource is useful to provide a consistent and declarative way of managing prepared queries in your Consul cluster using Terraform.
Example Usage
resource "consul_prepared_query" "service-near-self" {
datacenter = "nyc1"
token = "abcd"
stored_token = "wxyz"
name = ""
only_passing = true
near = "_agent"
template {
type = "name_prefix_match"
regexp = "^(.*)-near-self$"
}
service = "$${match(1)}"
failover {
nearest_n = 3
datacenters = ["dc2", "dc3", "dc4"]
}
dns {
ttl = "5m"
}
}
Argument Reference
The following arguments are supported:
-
datacenter
- (Optional) The datacenter to use. This overrides the datacenter in the provider setup and the agent's default datacenter. -
token
- (Optional) The ACL token to use when saving the prepared query. This overrides the token that the agent provides by default. -
stored_token
- (Optional) The ACL token to store with the prepared query. This token will be used by default whenever the query is executed. -
name
- (Required) The name of the prepared query. Used to identify the prepared query during requests. Can be specified as an empty string to configure the query as a catch-all. -
service
- (Required) The name of the service to query. -
only_passing
- (Optional) Whentrue
, the prepared query will only return nodes with passing health checks in the result. -
near
- (Optional) Allows specifying the name of a node to sort results near using Consul's distance sorting and network coordinates. The magic_agent
value can be used to always sort nearest the node servicing the request. -
failover
- (Optional) Options for controlling behavior when no healthy nodes are available in the local DC.-
nearest_n
- (Optional) Return results from this many datacenters, sorted in ascending order of estimated RTT. -
datacenters
- (Optional) Remote datacenters to return results from.
-
-
dns
- (Optional) Settings for controlling the DNS response details.ttl
- (Optional) The TTL to send when returning DNS results.
-
template
- (Optional) Query templating options. This is used to make a single prepared query respond to many different requests.-
type
- (Required) The type of template matching to perform. Currently onlyname_prefix_match
is supported. -
regexp
- (Required) The regular expression to match with. When usingname_prefix_match
, this regex is applied against the query name.
-
Attributes Reference
The following attributes are exported:
id
- The ID of the prepared query, generated by Consul.