Documentation
¶
Index ¶
- Variables
- type DnsCluster
- func (x *DnsCluster) ClearDnsFailureRefreshRate()
- func (x *DnsCluster) ClearDnsJitter()
- func (x *DnsCluster) ClearDnsRefreshRate()
- func (x *DnsCluster) ClearTypedDnsResolverConfig()
- func (x *DnsCluster) GetAllAddressesInSingleEndpoint() bool
- func (x *DnsCluster) GetDnsFailureRefreshRate() *DnsCluster_RefreshRate
- func (x *DnsCluster) GetDnsJitter() *durationpb.Duration
- func (x *DnsCluster) GetDnsLookupFamily() v31.DnsLookupFamily
- func (x *DnsCluster) GetDnsRefreshRate() *durationpb.Duration
- func (x *DnsCluster) GetRespectDnsTtl() bool
- func (x *DnsCluster) GetTypedDnsResolverConfig() *v3.TypedExtensionConfig
- func (x *DnsCluster) HasDnsFailureRefreshRate() bool
- func (x *DnsCluster) HasDnsJitter() bool
- func (x *DnsCluster) HasDnsRefreshRate() bool
- func (x *DnsCluster) HasTypedDnsResolverConfig() bool
- func (*DnsCluster) ProtoMessage()
- func (x *DnsCluster) ProtoReflect() protoreflect.Message
- func (x *DnsCluster) Reset()
- func (x *DnsCluster) SetAllAddressesInSingleEndpoint(v bool)
- func (x *DnsCluster) SetDnsFailureRefreshRate(v *DnsCluster_RefreshRate)
- func (x *DnsCluster) SetDnsJitter(v *durationpb.Duration)
- func (x *DnsCluster) SetDnsLookupFamily(v v31.DnsLookupFamily)
- func (x *DnsCluster) SetDnsRefreshRate(v *durationpb.Duration)
- func (x *DnsCluster) SetRespectDnsTtl(v bool)
- func (x *DnsCluster) SetTypedDnsResolverConfig(v *v3.TypedExtensionConfig)
- func (x *DnsCluster) String() string
- type DnsCluster_RefreshRate
- func (x *DnsCluster_RefreshRate) ClearBaseInterval()
- func (x *DnsCluster_RefreshRate) ClearMaxInterval()
- func (x *DnsCluster_RefreshRate) GetBaseInterval() *durationpb.Duration
- func (x *DnsCluster_RefreshRate) GetMaxInterval() *durationpb.Duration
- func (x *DnsCluster_RefreshRate) HasBaseInterval() bool
- func (x *DnsCluster_RefreshRate) HasMaxInterval() bool
- func (*DnsCluster_RefreshRate) ProtoMessage()
- func (x *DnsCluster_RefreshRate) ProtoReflect() protoreflect.Message
- func (x *DnsCluster_RefreshRate) Reset()
- func (x *DnsCluster_RefreshRate) SetBaseInterval(v *durationpb.Duration)
- func (x *DnsCluster_RefreshRate) SetMaxInterval(v *durationpb.Duration)
- func (x *DnsCluster_RefreshRate) String() string
- type DnsCluster_RefreshRate_builder
- type DnsCluster_builder
Constants ¶
This section is empty.
Variables ¶
View Source
var File_envoy_extensions_clusters_dns_v3_dns_cluster_proto protoreflect.FileDescriptor
Functions ¶
This section is empty.
Types ¶
type DnsCluster ¶
type DnsCluster struct {
// This value is the cluster’s DNS refresh rate. The value configured must be at least 1ms.
// If this setting is not specified, the
// value defaults to 5000ms.
DnsRefreshRate *durationpb.Duration `protobuf:"bytes,3,opt,name=dns_refresh_rate,json=dnsRefreshRate,proto3" json:"dns_refresh_rate,omitempty"`
// This is the cluster’s DNS refresh rate when requests are failing. If this setting is
// not specified, the failure refresh rate defaults to the DNS refresh rate.
DnsFailureRefreshRate *DnsCluster_RefreshRate `` /* 128-byte string literal not displayed */
// Optional configuration for setting cluster's DNS refresh rate. If the value is set to true,
// cluster's DNS refresh rate will be set to resource record's TTL which comes from DNS
// resolution.
RespectDnsTtl bool `protobuf:"varint,5,opt,name=respect_dns_ttl,json=respectDnsTtl,proto3" json:"respect_dns_ttl,omitempty"`
// DNS jitter causes the cluster to refresh DNS entries later by a random amount of time to avoid a
// stampede of DNS requests. This value sets the upper bound (exclusive) for the random amount.
// There will be no jitter if this value is omitted.
DnsJitter *durationpb.Duration `protobuf:"bytes,6,opt,name=dns_jitter,json=dnsJitter,proto3" json:"dns_jitter,omitempty"`
// DNS resolver type configuration extension. This extension can be used to configure c-ares, apple,
// or any other DNS resolver types and the related parameters.
// For example, an object of
// :ref:`CaresDnsResolverConfig<envoy_v3_api_msg_extensions.network.dns_resolver.cares.v3.CaresDnsResolverConfig>`
// can be packed into this “typed_dns_resolver_config“. This configuration replaces the
// :ref:`Cluster.typed_dns_resolver_config<envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`
// configuration which replaces :ref:`Cluster.dns_resolution_config<envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>`.
// During the transition period when
// :ref:`DnsCluster.typed_dns_resolver_config<envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.typed_dns_resolver_config>`,
// :ref:`Cluster.typed_dns_resolver_config<envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`,
// and :ref:`Cluster.dns_resolution_config<envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>`
// exist, Envoy will use
// :ref:`DnsCluster.typed_dns_resolver_config<envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.typed_dns_resolver_config>`
// and ignore
// DNS resolver-related fields in :ref:`Cluster<envoy_v3_api_msg_config.cluster.v3.Cluster>` if the cluster is configured via the
// :ref:`Cluster.cluster_type<envoy_v3_api_field_config.cluster.v3.Cluster.cluster_type>` extension point with the
// :ref:`DnsCluster<envoy_v3_api_msg_extensions.clusters.dns.v3.DnsCluster>` extension type.
// Otherwise, see :ref:`Cluster.typed_dns_resolver_config<envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`.
// [#extension-category: envoy.network.dns_resolver]
TypedDnsResolverConfig *v3.TypedExtensionConfig `` /* 131-byte string literal not displayed */
// The DNS IP address resolution policy. If this setting is not specified, the
// value defaults to
// :ref:`AUTO<envoy_v3_api_enum_value_extensions.clusters.common.dns.v3.DnsLookupFamily.AUTO>`.
DnsLookupFamily v31.DnsLookupFamily `` /* 170-byte string literal not displayed */
// If true, all returned addresses are considered to be associated with a single endpoint,
// which maps to :ref:`logical DNS discovery <arch_overview_service_discovery_types_logical_dns>`
// semantics. Otherwise, each address is considered to be a separate endpoint, which maps to
// :ref:`strict DNS discovery <arch_overview_service_discovery_types_strict_dns>` semantics.
AllAddressesInSingleEndpoint bool `` /* 152-byte string literal not displayed */
// contains filtered or unexported fields
}
[#next-free-field: 10]
func (*DnsCluster) ClearDnsFailureRefreshRate ¶
func (x *DnsCluster) ClearDnsFailureRefreshRate()
func (*DnsCluster) ClearDnsJitter ¶
func (x *DnsCluster) ClearDnsJitter()
func (*DnsCluster) ClearDnsRefreshRate ¶
func (x *DnsCluster) ClearDnsRefreshRate()
func (*DnsCluster) ClearTypedDnsResolverConfig ¶
func (x *DnsCluster) ClearTypedDnsResolverConfig()
func (*DnsCluster) GetAllAddressesInSingleEndpoint ¶
func (x *DnsCluster) GetAllAddressesInSingleEndpoint() bool
func (*DnsCluster) GetDnsFailureRefreshRate ¶
func (x *DnsCluster) GetDnsFailureRefreshRate() *DnsCluster_RefreshRate
func (*DnsCluster) GetDnsJitter ¶
func (x *DnsCluster) GetDnsJitter() *durationpb.Duration
func (*DnsCluster) GetDnsLookupFamily ¶
func (x *DnsCluster) GetDnsLookupFamily() v31.DnsLookupFamily
func (*DnsCluster) GetDnsRefreshRate ¶
func (x *DnsCluster) GetDnsRefreshRate() *durationpb.Duration
func (*DnsCluster) GetRespectDnsTtl ¶
func (x *DnsCluster) GetRespectDnsTtl() bool
func (*DnsCluster) GetTypedDnsResolverConfig ¶
func (x *DnsCluster) GetTypedDnsResolverConfig() *v3.TypedExtensionConfig
func (*DnsCluster) HasDnsFailureRefreshRate ¶
func (x *DnsCluster) HasDnsFailureRefreshRate() bool
func (*DnsCluster) HasDnsJitter ¶
func (x *DnsCluster) HasDnsJitter() bool
func (*DnsCluster) HasDnsRefreshRate ¶
func (x *DnsCluster) HasDnsRefreshRate() bool
func (*DnsCluster) HasTypedDnsResolverConfig ¶
func (x *DnsCluster) HasTypedDnsResolverConfig() bool
func (*DnsCluster) ProtoMessage ¶
func (*DnsCluster) ProtoMessage()
func (*DnsCluster) ProtoReflect ¶
func (x *DnsCluster) ProtoReflect() protoreflect.Message
func (*DnsCluster) Reset ¶
func (x *DnsCluster) Reset()
func (*DnsCluster) SetAllAddressesInSingleEndpoint ¶
func (x *DnsCluster) SetAllAddressesInSingleEndpoint(v bool)
func (*DnsCluster) SetDnsFailureRefreshRate ¶
func (x *DnsCluster) SetDnsFailureRefreshRate(v *DnsCluster_RefreshRate)
func (*DnsCluster) SetDnsJitter ¶
func (x *DnsCluster) SetDnsJitter(v *durationpb.Duration)
func (*DnsCluster) SetDnsLookupFamily ¶
func (x *DnsCluster) SetDnsLookupFamily(v v31.DnsLookupFamily)
func (*DnsCluster) SetDnsRefreshRate ¶
func (x *DnsCluster) SetDnsRefreshRate(v *durationpb.Duration)
func (*DnsCluster) SetRespectDnsTtl ¶
func (x *DnsCluster) SetRespectDnsTtl(v bool)
func (*DnsCluster) SetTypedDnsResolverConfig ¶
func (x *DnsCluster) SetTypedDnsResolverConfig(v *v3.TypedExtensionConfig)
func (*DnsCluster) String ¶
func (x *DnsCluster) String() string
type DnsCluster_RefreshRate ¶
type DnsCluster_RefreshRate struct {
// Specifies the base interval between refreshes. This parameter is required and must be greater
// than zero and less than
// :ref:`max_interval <envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.RefreshRate.max_interval>`.
BaseInterval *durationpb.Duration `protobuf:"bytes,1,opt,name=base_interval,json=baseInterval,proto3" json:"base_interval,omitempty"`
// Specifies the maximum interval between refreshes. This parameter is optional, but must be
// greater than or equal to the
// :ref:`base_interval <envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.RefreshRate.base_interval>` if set. The default
// is 10 times the :ref:`base_interval <envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.RefreshRate.base_interval>`.
MaxInterval *durationpb.Duration `protobuf:"bytes,2,opt,name=max_interval,json=maxInterval,proto3" json:"max_interval,omitempty"`
// contains filtered or unexported fields
}
func (*DnsCluster_RefreshRate) ClearBaseInterval ¶
func (x *DnsCluster_RefreshRate) ClearBaseInterval()
func (*DnsCluster_RefreshRate) ClearMaxInterval ¶
func (x *DnsCluster_RefreshRate) ClearMaxInterval()
func (*DnsCluster_RefreshRate) GetBaseInterval ¶
func (x *DnsCluster_RefreshRate) GetBaseInterval() *durationpb.Duration
func (*DnsCluster_RefreshRate) GetMaxInterval ¶
func (x *DnsCluster_RefreshRate) GetMaxInterval() *durationpb.Duration
func (*DnsCluster_RefreshRate) HasBaseInterval ¶
func (x *DnsCluster_RefreshRate) HasBaseInterval() bool
func (*DnsCluster_RefreshRate) HasMaxInterval ¶
func (x *DnsCluster_RefreshRate) HasMaxInterval() bool
func (*DnsCluster_RefreshRate) ProtoMessage ¶
func (*DnsCluster_RefreshRate) ProtoMessage()
func (*DnsCluster_RefreshRate) ProtoReflect ¶
func (x *DnsCluster_RefreshRate) ProtoReflect() protoreflect.Message
func (*DnsCluster_RefreshRate) Reset ¶
func (x *DnsCluster_RefreshRate) Reset()
func (*DnsCluster_RefreshRate) SetBaseInterval ¶
func (x *DnsCluster_RefreshRate) SetBaseInterval(v *durationpb.Duration)
func (*DnsCluster_RefreshRate) SetMaxInterval ¶
func (x *DnsCluster_RefreshRate) SetMaxInterval(v *durationpb.Duration)
func (*DnsCluster_RefreshRate) String ¶
func (x *DnsCluster_RefreshRate) String() string
type DnsCluster_RefreshRate_builder ¶
type DnsCluster_RefreshRate_builder struct {
// Specifies the base interval between refreshes. This parameter is required and must be greater
// than zero and less than
// :ref:`max_interval <envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.RefreshRate.max_interval>`.
BaseInterval *durationpb.Duration
// Specifies the maximum interval between refreshes. This parameter is optional, but must be
// greater than or equal to the
// :ref:`base_interval <envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.RefreshRate.base_interval>` if set. The default
// is 10 times the :ref:`base_interval <envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.RefreshRate.base_interval>`.
MaxInterval *durationpb.Duration
// contains filtered or unexported fields
}
func (DnsCluster_RefreshRate_builder) Build ¶
func (b0 DnsCluster_RefreshRate_builder) Build() *DnsCluster_RefreshRate
type DnsCluster_builder ¶
type DnsCluster_builder struct {
// This value is the cluster’s DNS refresh rate. The value configured must be at least 1ms.
// If this setting is not specified, the
// value defaults to 5000ms.
DnsRefreshRate *durationpb.Duration
// This is the cluster’s DNS refresh rate when requests are failing. If this setting is
// not specified, the failure refresh rate defaults to the DNS refresh rate.
DnsFailureRefreshRate *DnsCluster_RefreshRate
// Optional configuration for setting cluster's DNS refresh rate. If the value is set to true,
// cluster's DNS refresh rate will be set to resource record's TTL which comes from DNS
// resolution.
RespectDnsTtl bool
// DNS jitter causes the cluster to refresh DNS entries later by a random amount of time to avoid a
// stampede of DNS requests. This value sets the upper bound (exclusive) for the random amount.
// There will be no jitter if this value is omitted.
DnsJitter *durationpb.Duration
// DNS resolver type configuration extension. This extension can be used to configure c-ares, apple,
// or any other DNS resolver types and the related parameters.
// For example, an object of
// :ref:`CaresDnsResolverConfig<envoy_v3_api_msg_extensions.network.dns_resolver.cares.v3.CaresDnsResolverConfig>`
// can be packed into this “typed_dns_resolver_config“. This configuration replaces the
// :ref:`Cluster.typed_dns_resolver_config<envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`
// configuration which replaces :ref:`Cluster.dns_resolution_config<envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>`.
// During the transition period when
// :ref:`DnsCluster.typed_dns_resolver_config<envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.typed_dns_resolver_config>`,
// :ref:`Cluster.typed_dns_resolver_config<envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`,
// and :ref:`Cluster.dns_resolution_config<envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>`
// exist, Envoy will use
// :ref:`DnsCluster.typed_dns_resolver_config<envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.typed_dns_resolver_config>`
// and ignore
// DNS resolver-related fields in :ref:`Cluster<envoy_v3_api_msg_config.cluster.v3.Cluster>` if the cluster is configured via the
// :ref:`Cluster.cluster_type<envoy_v3_api_field_config.cluster.v3.Cluster.cluster_type>` extension point with the
// :ref:`DnsCluster<envoy_v3_api_msg_extensions.clusters.dns.v3.DnsCluster>` extension type.
// Otherwise, see :ref:`Cluster.typed_dns_resolver_config<envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`.
// [#extension-category: envoy.network.dns_resolver]
TypedDnsResolverConfig *v3.TypedExtensionConfig
// The DNS IP address resolution policy. If this setting is not specified, the
// value defaults to
// :ref:`AUTO<envoy_v3_api_enum_value_extensions.clusters.common.dns.v3.DnsLookupFamily.AUTO>`.
DnsLookupFamily v31.DnsLookupFamily
// If true, all returned addresses are considered to be associated with a single endpoint,
// which maps to :ref:`logical DNS discovery <arch_overview_service_discovery_types_logical_dns>`
// semantics. Otherwise, each address is considered to be a separate endpoint, which maps to
// :ref:`strict DNS discovery <arch_overview_service_discovery_types_strict_dns>` semantics.
AllAddressesInSingleEndpoint bool
// contains filtered or unexported fields
}
func (DnsCluster_builder) Build ¶
func (b0 DnsCluster_builder) Build() *DnsCluster
Source Files
¶
- dns_cluster.pb.go
Click to show internal directories.
Click to hide internal directories.