Interface DnsClusterOrBuilder

All Superinterfaces:
com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder
All Known Implementing Classes:
DnsCluster, DnsCluster.Builder

public interface DnsClusterOrBuilder extends com.google.protobuf.MessageOrBuilder
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    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.
    This is the cluster’s DNS refresh rate when requests are failing.
    This is the cluster’s DNS refresh rate when requests are failing.
    com.google.protobuf.Duration
    DNS jitter causes the cluster to refresh DNS entries later by a random amount of time to avoid a stampede of DNS requests.
    com.google.protobuf.DurationOrBuilder
    DNS jitter causes the cluster to refresh DNS entries later by a random amount of time to avoid a stampede of DNS requests.
    The DNS IP address resolution policy.
    int
    The DNS IP address resolution policy.
    com.google.protobuf.Duration
    This value is the cluster’s DNS refresh rate.
    com.google.protobuf.DurationOrBuilder
    This value is the cluster’s DNS refresh rate.
    boolean
    Optional configuration for setting cluster's DNS refresh rate.
    DNS resolver type configuration extension.
    DNS resolver type configuration extension.
    boolean
    This is the cluster’s DNS refresh rate when requests are failing.
    boolean
    DNS jitter causes the cluster to refresh DNS entries later by a random amount of time to avoid a stampede of DNS requests.
    boolean
    This value is the cluster’s DNS refresh rate.
    boolean
    DNS resolver type configuration extension.

    Methods inherited from interface com.google.protobuf.MessageLiteOrBuilder

    isInitialized

    Methods inherited from interface com.google.protobuf.MessageOrBuilder

    findInitializationErrors, getAllFields, getDefaultInstanceForType, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
  • Method Details

    • hasDnsRefreshRate

      boolean hasDnsRefreshRate()
       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.
       
      .google.protobuf.Duration dns_refresh_rate = 3 [(.validate.rules) = { ... }
      Returns:
      Whether the dnsRefreshRate field is set.
    • getDnsRefreshRate

      com.google.protobuf.Duration getDnsRefreshRate()
       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.
       
      .google.protobuf.Duration dns_refresh_rate = 3 [(.validate.rules) = { ... }
      Returns:
      The dnsRefreshRate.
    • getDnsRefreshRateOrBuilder

      com.google.protobuf.DurationOrBuilder getDnsRefreshRateOrBuilder()
       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.
       
      .google.protobuf.Duration dns_refresh_rate = 3 [(.validate.rules) = { ... }
    • hasDnsFailureRefreshRate

      boolean hasDnsFailureRefreshRate()
       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.
       
      .envoy.extensions.clusters.dns.v3.DnsCluster.RefreshRate dns_failure_refresh_rate = 4;
      Returns:
      Whether the dnsFailureRefreshRate field is set.
    • getDnsFailureRefreshRate

      DnsCluster.RefreshRate getDnsFailureRefreshRate()
       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.
       
      .envoy.extensions.clusters.dns.v3.DnsCluster.RefreshRate dns_failure_refresh_rate = 4;
      Returns:
      The dnsFailureRefreshRate.
    • getDnsFailureRefreshRateOrBuilder

      DnsCluster.RefreshRateOrBuilder getDnsFailureRefreshRateOrBuilder()
       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.
       
      .envoy.extensions.clusters.dns.v3.DnsCluster.RefreshRate dns_failure_refresh_rate = 4;
    • getRespectDnsTtl

      boolean getRespectDnsTtl()
       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.
       
      bool respect_dns_ttl = 5;
      Returns:
      The respectDnsTtl.
    • hasDnsJitter

      boolean hasDnsJitter()
       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.
       
      .google.protobuf.Duration dns_jitter = 6 [(.validate.rules) = { ... }
      Returns:
      Whether the dnsJitter field is set.
    • getDnsJitter

      com.google.protobuf.Duration getDnsJitter()
       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.
       
      .google.protobuf.Duration dns_jitter = 6 [(.validate.rules) = { ... }
      Returns:
      The dnsJitter.
    • getDnsJitterOrBuilder

      com.google.protobuf.DurationOrBuilder getDnsJitterOrBuilder()
       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.
       
      .google.protobuf.Duration dns_jitter = 6 [(.validate.rules) = { ... }
    • hasTypedDnsResolverConfig

      boolean hasTypedDnsResolverConfig()
       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]
       
      .envoy.config.core.v3.TypedExtensionConfig typed_dns_resolver_config = 7;
      Returns:
      Whether the typedDnsResolverConfig field is set.
    • getTypedDnsResolverConfig

      TypedExtensionConfig getTypedDnsResolverConfig()
       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]
       
      .envoy.config.core.v3.TypedExtensionConfig typed_dns_resolver_config = 7;
      Returns:
      The typedDnsResolverConfig.
    • getTypedDnsResolverConfigOrBuilder

      TypedExtensionConfigOrBuilder getTypedDnsResolverConfigOrBuilder()
       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]
       
      .envoy.config.core.v3.TypedExtensionConfig typed_dns_resolver_config = 7;
    • getDnsLookupFamilyValue

      int getDnsLookupFamilyValue()
       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>`.
       
      .envoy.extensions.clusters.common.dns.v3.DnsLookupFamily dns_lookup_family = 8;
      Returns:
      The enum numeric value on the wire for dnsLookupFamily.
    • getDnsLookupFamily

      DnsLookupFamily getDnsLookupFamily()
       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>`.
       
      .envoy.extensions.clusters.common.dns.v3.DnsLookupFamily dns_lookup_family = 8;
      Returns:
      The dnsLookupFamily.
    • getAllAddressesInSingleEndpoint

      boolean getAllAddressesInSingleEndpoint()
       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.
       
      bool all_addresses_in_single_endpoint = 9;
      Returns:
      The allAddressesInSingleEndpoint.