Class ClusterManager

  • All Implemented Interfaces:
    com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, ClusterManagerOrBuilder, java.io.Serializable

    public final class ClusterManager
    extends com.google.protobuf.GeneratedMessage
    implements ClusterManagerOrBuilder
     Cluster manager :ref:`architecture overview <arch_overview_cluster_manager>`.
     [#next-free-field: 6]
     
    Protobuf type envoy.config.bootstrap.v3.ClusterManager
    See Also:
    Serialized Form
    • Field Detail

      • bitField0_

        private int bitField0_
      • LOCAL_CLUSTER_NAME_FIELD_NUMBER

        public static final int LOCAL_CLUSTER_NAME_FIELD_NUMBER
        See Also:
        Constant Field Values
      • localClusterName_

        private volatile java.lang.Object localClusterName_
      • OUTLIER_DETECTION_FIELD_NUMBER

        public static final int OUTLIER_DETECTION_FIELD_NUMBER
        See Also:
        Constant Field Values
      • UPSTREAM_BIND_CONFIG_FIELD_NUMBER

        public static final int UPSTREAM_BIND_CONFIG_FIELD_NUMBER
        See Also:
        Constant Field Values
      • upstreamBindConfig_

        private BindConfig upstreamBindConfig_
      • LOAD_STATS_CONFIG_FIELD_NUMBER

        public static final int LOAD_STATS_CONFIG_FIELD_NUMBER
        See Also:
        Constant Field Values
      • ENABLE_DEFERRED_CLUSTER_CREATION_FIELD_NUMBER

        public static final int ENABLE_DEFERRED_CLUSTER_CREATION_FIELD_NUMBER
        See Also:
        Constant Field Values
      • enableDeferredClusterCreation_

        private boolean enableDeferredClusterCreation_
      • memoizedIsInitialized

        private byte memoizedIsInitialized
      • DEFAULT_INSTANCE

        private static final ClusterManager DEFAULT_INSTANCE
      • PARSER

        private static final com.google.protobuf.Parser<ClusterManager> PARSER
    • Constructor Detail

      • ClusterManager

        private ClusterManager​(com.google.protobuf.GeneratedMessage.Builder<?> builder)
      • ClusterManager

        private ClusterManager()
    • Method Detail

      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage
      • getLocalClusterName

        public java.lang.String getLocalClusterName()
         Name of the local cluster (i.e., the cluster that owns the Envoy running
         this configuration). In order to enable :ref:`zone aware routing
         <arch_overview_load_balancing_zone_aware_routing>` this option must be set.
         If ``local_cluster_name`` is defined then :ref:`clusters
         <envoy_v3_api_msg_config.cluster.v3.Cluster>` must be defined in the :ref:`Bootstrap
         static cluster resources
         <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.StaticResources.clusters>`. This is unrelated to
         the :option:`--service-cluster` option which does not `affect zone aware
         routing <https://github.com/envoyproxy/envoy/issues/774>`_.
         
        string local_cluster_name = 1;
        Specified by:
        getLocalClusterName in interface ClusterManagerOrBuilder
        Returns:
        The localClusterName.
      • getLocalClusterNameBytes

        public com.google.protobuf.ByteString getLocalClusterNameBytes()
         Name of the local cluster (i.e., the cluster that owns the Envoy running
         this configuration). In order to enable :ref:`zone aware routing
         <arch_overview_load_balancing_zone_aware_routing>` this option must be set.
         If ``local_cluster_name`` is defined then :ref:`clusters
         <envoy_v3_api_msg_config.cluster.v3.Cluster>` must be defined in the :ref:`Bootstrap
         static cluster resources
         <envoy_v3_api_field_config.bootstrap.v3.Bootstrap.StaticResources.clusters>`. This is unrelated to
         the :option:`--service-cluster` option which does not `affect zone aware
         routing <https://github.com/envoyproxy/envoy/issues/774>`_.
         
        string local_cluster_name = 1;
        Specified by:
        getLocalClusterNameBytes in interface ClusterManagerOrBuilder
        Returns:
        The bytes for localClusterName.
      • hasOutlierDetection

        public boolean hasOutlierDetection()
         Optional global configuration for outlier detection.
         
        .envoy.config.bootstrap.v3.ClusterManager.OutlierDetection outlier_detection = 2;
        Specified by:
        hasOutlierDetection in interface ClusterManagerOrBuilder
        Returns:
        Whether the outlierDetection field is set.
      • hasUpstreamBindConfig

        public boolean hasUpstreamBindConfig()
         Optional configuration used to bind newly established upstream connections.
         This may be overridden on a per-cluster basis by upstream_bind_config in the cds_config.
         
        .envoy.config.core.v3.BindConfig upstream_bind_config = 3;
        Specified by:
        hasUpstreamBindConfig in interface ClusterManagerOrBuilder
        Returns:
        Whether the upstreamBindConfig field is set.
      • getUpstreamBindConfig

        public BindConfig getUpstreamBindConfig()
         Optional configuration used to bind newly established upstream connections.
         This may be overridden on a per-cluster basis by upstream_bind_config in the cds_config.
         
        .envoy.config.core.v3.BindConfig upstream_bind_config = 3;
        Specified by:
        getUpstreamBindConfig in interface ClusterManagerOrBuilder
        Returns:
        The upstreamBindConfig.
      • getUpstreamBindConfigOrBuilder

        public BindConfigOrBuilder getUpstreamBindConfigOrBuilder()
         Optional configuration used to bind newly established upstream connections.
         This may be overridden on a per-cluster basis by upstream_bind_config in the cds_config.
         
        .envoy.config.core.v3.BindConfig upstream_bind_config = 3;
        Specified by:
        getUpstreamBindConfigOrBuilder in interface ClusterManagerOrBuilder
      • hasLoadStatsConfig

        public boolean hasLoadStatsConfig()
         A management server endpoint to stream load stats to via
         ``StreamLoadStats``. This must have :ref:`api_type
         <envoy_v3_api_field_config.core.v3.ApiConfigSource.api_type>` :ref:`GRPC
         <envoy_v3_api_enum_value_config.core.v3.ApiConfigSource.ApiType.GRPC>`.
         
        .envoy.config.core.v3.ApiConfigSource load_stats_config = 4;
        Specified by:
        hasLoadStatsConfig in interface ClusterManagerOrBuilder
        Returns:
        Whether the loadStatsConfig field is set.
      • getLoadStatsConfig

        public ApiConfigSource getLoadStatsConfig()
         A management server endpoint to stream load stats to via
         ``StreamLoadStats``. This must have :ref:`api_type
         <envoy_v3_api_field_config.core.v3.ApiConfigSource.api_type>` :ref:`GRPC
         <envoy_v3_api_enum_value_config.core.v3.ApiConfigSource.ApiType.GRPC>`.
         
        .envoy.config.core.v3.ApiConfigSource load_stats_config = 4;
        Specified by:
        getLoadStatsConfig in interface ClusterManagerOrBuilder
        Returns:
        The loadStatsConfig.
      • getLoadStatsConfigOrBuilder

        public ApiConfigSourceOrBuilder getLoadStatsConfigOrBuilder()
         A management server endpoint to stream load stats to via
         ``StreamLoadStats``. This must have :ref:`api_type
         <envoy_v3_api_field_config.core.v3.ApiConfigSource.api_type>` :ref:`GRPC
         <envoy_v3_api_enum_value_config.core.v3.ApiConfigSource.ApiType.GRPC>`.
         
        .envoy.config.core.v3.ApiConfigSource load_stats_config = 4;
        Specified by:
        getLoadStatsConfigOrBuilder in interface ClusterManagerOrBuilder
      • getEnableDeferredClusterCreation

        public boolean getEnableDeferredClusterCreation()
         Whether the ClusterManager will create clusters on the worker threads
         inline during requests. This will save memory and CPU cycles in cases where
         there are lots of inactive clusters and > 1 worker thread.
         
        bool enable_deferred_cluster_creation = 5;
        Specified by:
        getEnableDeferredClusterCreation in interface ClusterManagerOrBuilder
        Returns:
        The enableDeferredClusterCreation.
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessage
      • writeTo

        public void writeTo​(com.google.protobuf.CodedOutputStream output)
                     throws java.io.IOException
        Specified by:
        writeTo in interface com.google.protobuf.MessageLite
        Overrides:
        writeTo in class com.google.protobuf.GeneratedMessage
        Throws:
        java.io.IOException
      • getSerializedSize

        public int getSerializedSize()
        Specified by:
        getSerializedSize in interface com.google.protobuf.MessageLite
        Overrides:
        getSerializedSize in class com.google.protobuf.GeneratedMessage
      • equals

        public boolean equals​(java.lang.Object obj)
        Specified by:
        equals in interface com.google.protobuf.Message
        Overrides:
        equals in class com.google.protobuf.AbstractMessage
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface com.google.protobuf.Message
        Overrides:
        hashCode in class com.google.protobuf.AbstractMessage
      • parseFrom

        public static ClusterManager parseFrom​(java.nio.ByteBuffer data)
                                        throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ClusterManager parseFrom​(java.nio.ByteBuffer data,
                                               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                        throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ClusterManager parseFrom​(com.google.protobuf.ByteString data)
                                        throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ClusterManager parseFrom​(com.google.protobuf.ByteString data,
                                               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                        throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ClusterManager parseFrom​(byte[] data)
                                        throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ClusterManager parseFrom​(byte[] data,
                                               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                        throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ClusterManager parseFrom​(java.io.InputStream input)
                                        throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

        public static ClusterManager parseFrom​(java.io.InputStream input,
                                               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                        throws java.io.IOException
        Throws:
        java.io.IOException
      • parseDelimitedFrom

        public static ClusterManager parseDelimitedFrom​(java.io.InputStream input)
                                                 throws java.io.IOException
        Throws:
        java.io.IOException
      • parseDelimitedFrom

        public static ClusterManager parseDelimitedFrom​(java.io.InputStream input,
                                                        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                                 throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

        public static ClusterManager parseFrom​(com.google.protobuf.CodedInputStream input)
                                        throws java.io.IOException
        Throws:
        java.io.IOException
      • parseFrom

        public static ClusterManager parseFrom​(com.google.protobuf.CodedInputStream input,
                                               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                        throws java.io.IOException
        Throws:
        java.io.IOException
      • newBuilderForType

        public ClusterManager.Builder newBuilderForType()
        Specified by:
        newBuilderForType in interface com.google.protobuf.Message
        Specified by:
        newBuilderForType in interface com.google.protobuf.MessageLite
      • toBuilder

        public ClusterManager.Builder toBuilder()
        Specified by:
        toBuilder in interface com.google.protobuf.Message
        Specified by:
        toBuilder in interface com.google.protobuf.MessageLite
      • newBuilderForType

        protected ClusterManager.Builder newBuilderForType​(com.google.protobuf.AbstractMessage.BuilderParent parent)
        Overrides:
        newBuilderForType in class com.google.protobuf.AbstractMessage
      • getDefaultInstance

        public static ClusterManager getDefaultInstance()
      • parser

        public static com.google.protobuf.Parser<ClusterManager> parser()
      • getParserForType

        public com.google.protobuf.Parser<ClusterManager> getParserForType()
        Specified by:
        getParserForType in interface com.google.protobuf.Message
        Specified by:
        getParserForType in interface com.google.protobuf.MessageLite
        Overrides:
        getParserForType in class com.google.protobuf.GeneratedMessage
      • getDefaultInstanceForType

        public ClusterManager getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder