Class: Google::Apis::ComputeAlpha::Backend
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::Backend
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/representations.rb
Overview
Message containing information of one individual backend.
Instance Attribute Summary collapse
-
#balancing_mode ⇒ String
Specifies how to determine whether the backend of a load balancer can handle additional traffic or is fully loaded.
-
#capacity_scaler ⇒ Float
A multiplier applied to the backend's target capacity of its balancing mode.
-
#custom_metrics ⇒ Array<Google::Apis::ComputeAlpha::BackendCustomMetric>
List of custom metrics that are used for CUSTOM_METRICS BalancingMode.
-
#description ⇒ String
An optional description of this resource.
-
#failover ⇒ Boolean
(also: #failover?)
This field designates whether this is a failover backend.
-
#group ⇒ String
The fully-qualified URL of aninstance group or network endpoint group (NEG) resource.
-
#max_connections ⇒ Fixnum
Defines a target maximum number of simultaneous connections.
-
#max_connections_per_endpoint ⇒ Fixnum
Defines a target maximum number of simultaneous connections.
-
#max_connections_per_instance ⇒ Fixnum
Defines a target maximum number of simultaneous connections.
-
#max_in_flight_requests ⇒ Fixnum
Defines a maximum number of in-flight requests for the whole NEG or instance group.
-
#max_in_flight_requests_per_endpoint ⇒ Fixnum
Defines a maximum number of in-flight requests for a single endpoint.
-
#max_in_flight_requests_per_instance ⇒ Fixnum
Defines a maximum number of in-flight requests for a single VM.
-
#max_rate ⇒ Fixnum
Defines a maximum number of HTTP requests per second (RPS).
-
#max_rate_per_endpoint ⇒ Float
Defines a maximum target for requests per second (RPS).
-
#max_rate_per_instance ⇒ Float
Defines a maximum target for requests per second (RPS).
-
#max_utilization ⇒ Float
Optional parameter to define a target capacity for theUTILIZATION balancing mode.
-
#orchestration_info ⇒ Google::Apis::ComputeAlpha::BackendBackendOrchestrationInfo
A message containing information about the resource or system that manages the backend.
-
#preference ⇒ String
This field indicates whether this backend should be fully utilized before sending traffic to backends with default preference.
-
#service ⇒ String
Represents a service backend (e.g., Cloud Run service, PSC Service Attachment).
-
#traffic_duration ⇒ String
Corresponds to the JSON property
trafficDuration.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Backend
constructor
A new instance of Backend.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Backend
Returns a new instance of Backend.
3977 3978 3979 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3977 def initialize(**args) update!(**args) end |
Instance Attribute Details
#balancing_mode ⇒ String
Specifies how to determine whether the backend of a load balancer can
handle additional traffic or is fully loaded. For usage guidelines, see
Connection balancing mode.
Backends must use compatible balancing modes. For more information, see
Supported balancing modes and target capacity settings and
Restrictions and guidance for instance groups.
Note: Currently, if you use the API to configure incompatible balancing
modes, the configuration might be accepted even though it has no impact
and is ignored. Specifically, Backend.maxUtilization is ignored when
Backend.balancingMode is RATE. In the future, this incompatible combination
will be rejected.
Corresponds to the JSON property balancingMode
3805 3806 3807 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3805 def balancing_mode @balancing_mode end |
#capacity_scaler ⇒ Float
A multiplier applied to the backend's target capacity of its balancing
mode.
The default value is 1, which means the group serves up to
100% of its configured capacity (depending onbalancingMode). A setting of 0
means the group is
completely drained, offering 0% of its available capacity. The valid ranges
are 0.0 and [0.1,1.0].
You cannot configure a setting larger than 0 and smaller than0.1.
You cannot configure a setting of 0 when there is only one
backend attached to the backend service.
Not available with backends that don't support using abalancingMode. This
includes backends such as global
internet NEGs, regional serverless NEGs, and PSC NEGs.
Corresponds to the JSON property capacityScaler
3822 3823 3824 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3822 def capacity_scaler @capacity_scaler end |
#custom_metrics ⇒ Array<Google::Apis::ComputeAlpha::BackendCustomMetric>
List of custom metrics that are used for CUSTOM_METRICS
BalancingMode.
Corresponds to the JSON property customMetrics
3828 3829 3830 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3828 def custom_metrics @custom_metrics end |
#description ⇒ String
An optional description of this resource. Provide this property when you
create the resource.
Corresponds to the JSON property description
3834 3835 3836 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3834 def description @description end |
#failover ⇒ Boolean Also known as: failover?
This field designates whether this is a failover backend. More than one
failover backend can be configured for a given BackendService.
Corresponds to the JSON property failover
3840 3841 3842 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3840 def failover @failover end |
#group ⇒ String
The fully-qualified URL of aninstance
group or network endpoint
group (NEG) resource. To determine what types of backends a load
balancer supports, see the Backend services
overview.
You must use the fully-qualified URL (starting withhttps://www.googleapis.
com/) to specify the instance group
or NEG. Partial URLs are not supported.
If haPolicy is specified, backends must refer to NEG resources of type
GCE_VM_IP.
Corresponds to the JSON property group
3856 3857 3858 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3856 def group @group end |
#max_connections ⇒ Fixnum
Defines a target maximum number of simultaneous connections. For usage
guidelines, seeConnection
balancing mode and Utilization
balancing mode. Not available if the backend'sbalancingMode is RATE.
Corresponds to the JSON property maxConnections
3864 3865 3866 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3864 def max_connections @max_connections end |
#max_connections_per_endpoint ⇒ Fixnum
Defines a target maximum number of simultaneous connections. For usage
guidelines, seeConnection
balancing mode and Utilization
balancing mode.
Not available if the backend's balancingMode isRATE.
Corresponds to the JSON property maxConnectionsPerEndpoint
3873 3874 3875 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3873 def max_connections_per_endpoint @max_connections_per_endpoint end |
#max_connections_per_instance ⇒ Fixnum
Defines a target maximum number of simultaneous connections.
For usage guidelines, seeConnection
balancing mode and Utilization
balancing mode.
Not available if the backend's balancingMode isRATE.
Corresponds to the JSON property maxConnectionsPerInstance
3882 3883 3884 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3882 def max_connections_per_instance @max_connections_per_instance end |
#max_in_flight_requests ⇒ Fixnum
Defines a maximum number of in-flight requests for the whole NEG or
instance group. Not available if backend's balancingMode isRATE or CONNECTION.
Corresponds to the JSON property maxInFlightRequests
3888 3889 3890 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3888 def max_in_flight_requests @max_in_flight_requests end |
#max_in_flight_requests_per_endpoint ⇒ Fixnum
Defines a maximum number of in-flight requests for a single endpoint.
Not available if backend's balancingMode is RATE
or CONNECTION.
Corresponds to the JSON property maxInFlightRequestsPerEndpoint
3895 3896 3897 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3895 def max_in_flight_requests_per_endpoint @max_in_flight_requests_per_endpoint end |
#max_in_flight_requests_per_instance ⇒ Fixnum
Defines a maximum number of in-flight requests for a single VM.
Not available if backend's balancingMode is RATE
or CONNECTION.
Corresponds to the JSON property maxInFlightRequestsPerInstance
3902 3903 3904 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3902 def max_in_flight_requests_per_instance @max_in_flight_requests_per_instance end |
#max_rate ⇒ Fixnum
Defines a maximum number of HTTP requests per second (RPS). For
usage guidelines, seeRate
balancing mode and Utilization
balancing mode.
Not available if the backend's balancingMode isCONNECTION.
Corresponds to the JSON property maxRate
3911 3912 3913 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3911 def max_rate @max_rate end |
#max_rate_per_endpoint ⇒ Float
Defines a maximum target for requests per second (RPS). For usage
guidelines, seeRate
balancing mode and Utilization
balancing mode.
Not available if the backend's balancingMode isCONNECTION.
Corresponds to the JSON property maxRatePerEndpoint
3920 3921 3922 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3920 def max_rate_per_endpoint @max_rate_per_endpoint end |
#max_rate_per_instance ⇒ Float
Defines a maximum target for requests per second (RPS). For usage
guidelines, seeRate
balancing mode and Utilization
balancing mode.
Not available if the backend's balancingMode isCONNECTION.
Corresponds to the JSON property maxRatePerInstance
3929 3930 3931 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3929 def max_rate_per_instance @max_rate_per_instance end |
#max_utilization ⇒ Float
Optional parameter to define a target capacity for theUTILIZATION balancing
mode. The valid range is[0.0, 1.0].
For usage guidelines, seeUtilization
balancing mode.
Corresponds to the JSON property maxUtilization
3937 3938 3939 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3937 def max_utilization @max_utilization end |
#orchestration_info ⇒ Google::Apis::ComputeAlpha::BackendBackendOrchestrationInfo
A message containing information about the resource or system that manages
the backend.
Corresponds to the JSON property orchestrationInfo
3943 3944 3945 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3943 def orchestration_info @orchestration_info end |
#preference ⇒ String
This field indicates whether this backend should be fully utilized before sending traffic to backends with default preference. The possible values are:
- PREFERRED: Backends with this preference level will be filled up to their capacity limits first, based on RTT.
- DEFAULT: If preferred backends don't have enough
capacity, backends in this layer would be used and traffic would be
assigned based on the load balancing algorithm you use. This is the
default
Corresponds to the JSON property
preference
3957 3958 3959 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3957 def preference @preference end |
#service ⇒ String
Represents a service backend (e.g., Cloud Run service, PSC Service
Attachment).
e.g.
"run.googleapis.com/projects/123456789/locations/us-central1/services/my-
service"
for Cloud Run service.
"compute.googleapis.com/projects/123456789/regions/us-central1/
serviceAttachments/my-service-attachment"
for PSC Service Attachment.
Corresponds to the JSON property service
3970 3971 3972 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3970 def service @service end |
#traffic_duration ⇒ String
Corresponds to the JSON property trafficDuration
3975 3976 3977 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3975 def traffic_duration @traffic_duration end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000 4001 4002 4003 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3982 def update!(**args) @balancing_mode = args[:balancing_mode] if args.key?(:balancing_mode) @capacity_scaler = args[:capacity_scaler] if args.key?(:capacity_scaler) @custom_metrics = args[:custom_metrics] if args.key?(:custom_metrics) @description = args[:description] if args.key?(:description) @failover = args[:failover] if args.key?(:failover) @group = args[:group] if args.key?(:group) @max_connections = args[:max_connections] if args.key?(:max_connections) @max_connections_per_endpoint = args[:max_connections_per_endpoint] if args.key?(:max_connections_per_endpoint) @max_connections_per_instance = args[:max_connections_per_instance] if args.key?(:max_connections_per_instance) @max_in_flight_requests = args[:max_in_flight_requests] if args.key?(:max_in_flight_requests) @max_in_flight_requests_per_endpoint = args[:max_in_flight_requests_per_endpoint] if args.key?(:max_in_flight_requests_per_endpoint) @max_in_flight_requests_per_instance = args[:max_in_flight_requests_per_instance] if args.key?(:max_in_flight_requests_per_instance) @max_rate = args[:max_rate] if args.key?(:max_rate) @max_rate_per_endpoint = args[:max_rate_per_endpoint] if args.key?(:max_rate_per_endpoint) @max_rate_per_instance = args[:max_rate_per_instance] if args.key?(:max_rate_per_instance) @max_utilization = args[:max_utilization] if args.key?(:max_utilization) @orchestration_info = args[:orchestration_info] if args.key?(:orchestration_info) @preference = args[:preference] if args.key?(:preference) @service = args[:service] if args.key?(:service) @traffic_duration = args[:traffic_duration] if args.key?(:traffic_duration) end |