View Source Envoy.Config.Cluster.V3.Cluster (envoy_data_plane_api v0.1.0)

Summary

Types

@type t() :: %Envoy.Config.Cluster.V3.Cluster{
  __unknown_fields__: [
    {field_number :: integer(), Protobuf.Wire.Types.wire_type(),
     value :: term()}
  ],
  alt_stat_name: String.t(),
  circuit_breakers: Envoy.Config.Cluster.V3.CircuitBreakers.t() | nil,
  cleanup_interval: Google.Protobuf.Duration.t() | nil,
  close_connections_on_host_health_failure: boolean(),
  cluster_discovery_type:
    {:type, Envoy.Config.Cluster.V3.Cluster.DiscoveryType.t()}
    | {:cluster_type,
       Envoy.Config.Cluster.V3.Cluster.CustomClusterType.t() | nil}
    | nil,
  common_http_protocol_options:
    Envoy.Config.Core.V3.HttpProtocolOptions.t() | nil,
  common_lb_config: Envoy.Config.Cluster.V3.Cluster.CommonLbConfig.t() | nil,
  connect_timeout: Google.Protobuf.Duration.t() | nil,
  connection_pool_per_downstream_connection: boolean(),
  dns_failure_refresh_rate:
    Envoy.Config.Cluster.V3.Cluster.RefreshRate.t() | nil,
  dns_lookup_family: Envoy.Config.Cluster.V3.Cluster.DnsLookupFamily.t(),
  dns_refresh_rate: Google.Protobuf.Duration.t() | nil,
  dns_resolution_config: Envoy.Config.Core.V3.DnsResolutionConfig.t() | nil,
  dns_resolvers: [Envoy.Config.Core.V3.Address.t()],
  eds_cluster_config:
    Envoy.Config.Cluster.V3.Cluster.EdsClusterConfig.t() | nil,
  filters: [Envoy.Config.Cluster.V3.Filter.t()],
  health_checks: [Envoy.Config.Core.V3.HealthCheck.t()],
  http2_protocol_options: Envoy.Config.Core.V3.Http2ProtocolOptions.t() | nil,
  http_protocol_options: Envoy.Config.Core.V3.Http1ProtocolOptions.t() | nil,
  ignore_health_on_host_removal: boolean(),
  lb_config:
    {:ring_hash_lb_config,
     Envoy.Config.Cluster.V3.Cluster.RingHashLbConfig.t() | nil}
    | {:round_robin_lb_config,
       Envoy.Config.Cluster.V3.Cluster.RoundRobinLbConfig.t() | nil}
    | {:least_request_lb_config,
       Envoy.Config.Cluster.V3.Cluster.LeastRequestLbConfig.t() | nil}
    | {:maglev_lb_config,
       Envoy.Config.Cluster.V3.Cluster.MaglevLbConfig.t() | nil}
    | {:original_dst_lb_config,
       Envoy.Config.Cluster.V3.Cluster.OriginalDstLbConfig.t() | nil}
    | nil,
  lb_policy: Envoy.Config.Cluster.V3.Cluster.LbPolicy.t(),
  lb_subset_config: Envoy.Config.Cluster.V3.Cluster.LbSubsetConfig.t() | nil,
  load_assignment: Envoy.Config.Endpoint.V3.ClusterLoadAssignment.t() | nil,
  load_balancing_policy: Envoy.Config.Cluster.V3.LoadBalancingPolicy.t() | nil,
  lrs_server: Envoy.Config.Core.V3.ConfigSource.t() | nil,
  max_requests_per_connection: Google.Protobuf.UInt32Value.t() | nil,
  metadata: Envoy.Config.Core.V3.Metadata.t() | nil,
  name: String.t(),
  outlier_detection: Envoy.Config.Cluster.V3.OutlierDetection.t() | nil,
  per_connection_buffer_limit_bytes: Google.Protobuf.UInt32Value.t() | nil,
  preconnect_policy: Envoy.Config.Cluster.V3.Cluster.PreconnectPolicy.t() | nil,
  protocol_selection:
    Envoy.Config.Cluster.V3.Cluster.ClusterProtocolSelection.t(),
  respect_dns_ttl: boolean(),
  track_cluster_stats: Envoy.Config.Cluster.V3.TrackClusterStats.t() | nil,
  track_timeout_budgets: boolean(),
  transport_socket: Envoy.Config.Core.V3.TransportSocket.t() | nil,
  transport_socket_matches: [
    Envoy.Config.Cluster.V3.Cluster.TransportSocketMatch.t()
  ],
  typed_dns_resolver_config:
    Envoy.Config.Core.V3.TypedExtensionConfig.t() | nil,
  typed_extension_protocol_options: %{
    optional(String.t()) => Google.Protobuf.Any.t() | nil
  },
  upstream_bind_config: Envoy.Config.Core.V3.BindConfig.t() | nil,
  upstream_config: Envoy.Config.Core.V3.TypedExtensionConfig.t() | nil,
  upstream_connection_options:
    Envoy.Config.Cluster.V3.UpstreamConnectionOptions.t() | nil,
  upstream_http_protocol_options:
    Envoy.Config.Core.V3.UpstreamHttpProtocolOptions.t() | nil,
  use_tcp_for_dns_lookups: boolean(),
  wait_for_warm_on_init: Google.Protobuf.BoolValue.t() | nil
}