ProxyConfiguration resource configuration reference
This page provides reference information for the ProxyConfigurations resource, which defines proxy behavior for traffic within the service mesh. The resource specifies both bootstrap and dynamic configurations for proxies.
This custom resource definition (CRD) describes a GAMMA resource that requires the v2 catalog API. It is not compatible with the v1 catalog API. For more information about GAMMA resources, refer to the Kubernetes Gateway API documentation.
Configuration model
The following list outlines field hierarchy, language-specific data types, and requirements in a ProxyConfiguration CRD. Click on a property name to view additional details, including default values.
apiVersion
: string | required | must be set tomesh.consul.hashicorp.com/v2beta1
kind
: string | required | must be set toProxyConfiguration
metadata
: object | requiredspec
: object | requiredworkloads
: mapbootstrapConfig
: mapdogstatsdUrl
: stringoverrideJsonTpl
: stringprometheusBindAddr
: stringreadyBindAddr
: stringstaticClustersJson
: stringstaticListenersJson
: stringstatsBindAddr
: stringstatsConfigJson
: stringstatsFlushInterval
: stringstatsSinksJson
: stringstatsTags
: array of stringsstatsdUrl
: stringtelemetryCollectorBindSocketDir
: stringtracingConfigJson
: string
dynamicConfig
: mapaccessLogs
: mapenabled
: boolean |false
disableListenerLogs
: boolean |false
jsonFormat
: stringpath
: stringtextFormat
: stringtype
: string
envoyExtensions
: maparguments
: mapconsulVersion
: stringenvoyVersion
: stringname
: stringrequired
: boolean |false
exposeConfig
: mapexposePaths
: maplistenerPort
: integerlocalPathPort
: integerpath
: stringprotocol
: string
inboundConnections
: mapbalanceInboundConnections
: stringmaxInboundConnections
: integer
listenerTracingJson
: stringlocalClusterJson
: stringlocalConnection
: mapconnectTimeout
: mapnanos
: integerseconds
: integerrequestTimeout
: mapnanos
: integerseconds
: integer
meshGatewayMode
: stringmode
: stringmutualTLSMode
: stringpublicListenerJson
: stringtransparentProxy
: mapdialedDirectly
: boolean |false
outboundListenerPort
: integer |15001
Complete configuration
The complete configuration follows the configuration model. Use tabs for each markup language you expect pracitioners to use.
Specification
This section provides details about the fields you can configure in the ProxyConfiguration custom resource definition (CRD).
apiVersion
Specifies the version of the Consul API for integrating with Kubernetes. The value must be mesh.consul.hashicorp.com/v2beta1
.
Values
- Default: None
- This field is required.
- String value that must be set to
mesh.consul.hashicorp.com/v2beta1
.
kind
Specifies the type of CRD to implement. Must be set to ProxyConfiguration
.
Values
- Default: None
- This field is required.
- Data type: String value that must be set to
ProxyConfiguration
.
metadata
Map that contains an arbitrary name for the CRD and the namespace it applies to.
Values
- Default: None
- Data type: Map
metadata.name
Specifies a name for the CRD. The name is metadata that you can use to reference the resource when performing Consul operations, such as using the consul resource
command. Refer to consul resource
for more information.
Values
- Default: None
- This field is required.
- Data type: String
metadata.namespace
Enterprise
Specifies the namespace that the service resolver applies to. Refer to namespaces for more information.
Values
- Default: None
- Data type: String
spec
Map that contains the details about the ProxyConfiguration
CRD. The apiVersion
, kind
, and metadata
fields are siblings of the spec field. All other configurations are children.
When using this CRD, the spec
field must align with GAMMAs resource. Refer to HTTPRoute in the Kubernetes documentation.
Values
- Default: None
- This field is required.
- Data type: Map
spec
Values
- Default: None
- Data type: Map
Examples
If you have more than one example to show, create an Examples section (general block) and introduce the examples per the style guide.
Specific use case
Introduce examples clearly and help readers understand the connections
between the example snippet and the configuration element you are trying to
explain. Use phrases such as "In the following example, the elem
performs
some action on a service named service-name
".