Documentation ¶
Index ¶
- Variables
- type DnsCacheConfig
- func (*DnsCacheConfig) Descriptor() ([]byte, []int)
- func (m *DnsCacheConfig) GetDnsFailureRefreshRate() *v2.Cluster_RefreshRate
- func (m *DnsCacheConfig) GetDnsLookupFamily() v2.Cluster_DnsLookupFamily
- func (m *DnsCacheConfig) GetDnsRefreshRate() *types.Duration
- func (m *DnsCacheConfig) GetHostTtl() *types.Duration
- func (m *DnsCacheConfig) GetMaxHosts() *types.UInt32Value
- func (m *DnsCacheConfig) GetName() string
- func (m *DnsCacheConfig) Marshal() (dAtA []byte, err error)
- func (m *DnsCacheConfig) MarshalTo(dAtA []byte) (int, error)
- func (m *DnsCacheConfig) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*DnsCacheConfig) ProtoMessage()
- func (m *DnsCacheConfig) Reset()
- func (m *DnsCacheConfig) Size() (n int)
- func (m *DnsCacheConfig) String() string
- func (m *DnsCacheConfig) Unmarshal(dAtA []byte) error
- func (m *DnsCacheConfig) Validate() error
- func (m *DnsCacheConfig) XXX_DiscardUnknown()
- func (m *DnsCacheConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *DnsCacheConfig) XXX_Merge(src proto.Message)
- func (m *DnsCacheConfig) XXX_Size() int
- func (m *DnsCacheConfig) XXX_Unmarshal(b []byte) error
- type DnsCacheConfigValidationError
- func (e DnsCacheConfigValidationError) Cause() error
- func (e DnsCacheConfigValidationError) Error() string
- func (e DnsCacheConfigValidationError) ErrorName() string
- func (e DnsCacheConfigValidationError) Field() string
- func (e DnsCacheConfigValidationError) Key() bool
- func (e DnsCacheConfigValidationError) Reason() string
Constants ¶
This section is empty.
Variables ¶
Functions ¶
This section is empty.
Types ¶
type DnsCacheConfig ¶
type DnsCacheConfig struct { // The name of the cache. Multiple named caches allow independent dynamic forward proxy // configurations to operate within a single Envoy process using different configurations. All // configurations with the same name *must* otherwise have the same settings when referenced // from different configuration components. Configuration will fail to load if this is not // the case. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // The DNS lookup family to use during resolution. // // [#comment:TODO(mattklein123): Figure out how to support IPv4/IPv6 "happy eyeballs" mode. The // way this might work is a new lookup family which returns both IPv4 and IPv6 addresses, and // then configures a host to have a primary and fall back address. With this, we could very // likely build a "happy eyeballs" connection pool which would race the primary / fall back // address and return the one that wins. This same method could potentially also be used for // QUIC to TCP fall back.] DnsLookupFamily v2.Cluster_DnsLookupFamily `` /* 151-byte string literal not displayed */ // The DNS refresh rate for currently cached DNS hosts. If not specified defaults to 60s. // // .. note: // // The returned DNS TTL is not currently used to alter the refresh rate. This feature will be // added in a future change. // // .. note: // // The refresh rate is rounded to the closest millisecond, and must be at least 1ms. DnsRefreshRate *types.Duration `protobuf:"bytes,3,opt,name=dns_refresh_rate,json=dnsRefreshRate,proto3" json:"dns_refresh_rate,omitempty"` // The TTL for hosts that are unused. Hosts that have not been used in the configured time // interval will be purged. If not specified defaults to 5m. // // .. note: // // The TTL is only checked at the time of DNS refresh, as specified by *dns_refresh_rate*. This // means that if the configured TTL is shorter than the refresh rate the host may not be removed // immediately. // // .. note: // // The TTL has no relation to DNS TTL and is only used to control Envoy's resource usage. HostTtl *types.Duration `protobuf:"bytes,4,opt,name=host_ttl,json=hostTtl,proto3" json:"host_ttl,omitempty"` // The maximum number of hosts that the cache will hold. If not specified defaults to 1024. // // .. note: // // The implementation is approximate and enforced independently on each worker thread, thus // it is possible for the maximum hosts in the cache to go slightly above the configured // value depending on timing. This is similar to how other circuit breakers work. MaxHosts *types.UInt32Value `protobuf:"bytes,5,opt,name=max_hosts,json=maxHosts,proto3" json:"max_hosts,omitempty"` // If the DNS failure refresh rate is specified, // this is used as the cache's DNS refresh rate when DNS requests are failing. If this setting is // not specified, the failure refresh rate defaults to the dns_refresh_rate. DnsFailureRefreshRate *v2.Cluster_RefreshRate `` /* 128-byte string literal not displayed */ XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
Configuration for the dynamic forward proxy DNS cache. See the :ref:`architecture overview <arch_overview_http_dynamic_forward_proxy>` for more information. [#next-free-field: 7]
func (*DnsCacheConfig) Descriptor ¶
func (*DnsCacheConfig) Descriptor() ([]byte, []int)
func (*DnsCacheConfig) GetDnsFailureRefreshRate ¶ added in v1.5.0
func (m *DnsCacheConfig) GetDnsFailureRefreshRate() *v2.Cluster_RefreshRate
func (*DnsCacheConfig) GetDnsLookupFamily ¶
func (m *DnsCacheConfig) GetDnsLookupFamily() v2.Cluster_DnsLookupFamily
func (*DnsCacheConfig) GetDnsRefreshRate ¶
func (m *DnsCacheConfig) GetDnsRefreshRate() *types.Duration
func (*DnsCacheConfig) GetHostTtl ¶
func (m *DnsCacheConfig) GetHostTtl() *types.Duration
func (*DnsCacheConfig) GetMaxHosts ¶
func (m *DnsCacheConfig) GetMaxHosts() *types.UInt32Value
func (*DnsCacheConfig) GetName ¶
func (m *DnsCacheConfig) GetName() string
func (*DnsCacheConfig) Marshal ¶
func (m *DnsCacheConfig) Marshal() (dAtA []byte, err error)
func (*DnsCacheConfig) MarshalToSizedBuffer ¶
func (m *DnsCacheConfig) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*DnsCacheConfig) ProtoMessage ¶
func (*DnsCacheConfig) ProtoMessage()
func (*DnsCacheConfig) Reset ¶
func (m *DnsCacheConfig) Reset()
func (*DnsCacheConfig) Size ¶
func (m *DnsCacheConfig) Size() (n int)
func (*DnsCacheConfig) String ¶
func (m *DnsCacheConfig) String() string
func (*DnsCacheConfig) Unmarshal ¶
func (m *DnsCacheConfig) Unmarshal(dAtA []byte) error
func (*DnsCacheConfig) Validate ¶
func (m *DnsCacheConfig) Validate() error
Validate checks the field values on DnsCacheConfig with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
func (*DnsCacheConfig) XXX_DiscardUnknown ¶
func (m *DnsCacheConfig) XXX_DiscardUnknown()
func (*DnsCacheConfig) XXX_Marshal ¶
func (m *DnsCacheConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*DnsCacheConfig) XXX_Merge ¶
func (m *DnsCacheConfig) XXX_Merge(src proto.Message)
func (*DnsCacheConfig) XXX_Size ¶
func (m *DnsCacheConfig) XXX_Size() int
func (*DnsCacheConfig) XXX_Unmarshal ¶
func (m *DnsCacheConfig) XXX_Unmarshal(b []byte) error
type DnsCacheConfigValidationError ¶
type DnsCacheConfigValidationError struct {
// contains filtered or unexported fields
}
DnsCacheConfigValidationError is the validation error returned by DnsCacheConfig.Validate if the designated constraints aren't met.
func (DnsCacheConfigValidationError) Cause ¶
func (e DnsCacheConfigValidationError) Cause() error
Cause function returns cause value.
func (DnsCacheConfigValidationError) Error ¶
func (e DnsCacheConfigValidationError) Error() string
Error satisfies the builtin error interface
func (DnsCacheConfigValidationError) ErrorName ¶
func (e DnsCacheConfigValidationError) ErrorName() string
ErrorName returns error name.
func (DnsCacheConfigValidationError) Field ¶
func (e DnsCacheConfigValidationError) Field() string
Field function returns field value.
func (DnsCacheConfigValidationError) Key ¶
func (e DnsCacheConfigValidationError) Key() bool
Key function returns key value.
func (DnsCacheConfigValidationError) Reason ¶
func (e DnsCacheConfigValidationError) Reason() string
Reason function returns reason value.