Class: Google::Apis::ComputeV1::Backend
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::Backend
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/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::ComputeV1::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::ComputeV1::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.
-
#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.
3348 3349 3350 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3348 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
3189 3190 3191 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3189 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
3206 3207 3208 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3206 def capacity_scaler @capacity_scaler end |
#custom_metrics ⇒ Array<Google::Apis::ComputeV1::BackendCustomMetric>
List of custom metrics that are used for CUSTOM_METRICS
BalancingMode.
Corresponds to the JSON property customMetrics
3212 3213 3214 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3212 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
3218 3219 3220 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3218 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
3224 3225 3226 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3224 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
3240 3241 3242 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3240 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
3248 3249 3250 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3248 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
3257 3258 3259 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3257 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
3266 3267 3268 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3266 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
3272 3273 3274 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3272 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
3279 3280 3281 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3279 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
3286 3287 3288 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3286 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
3295 3296 3297 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3295 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
3304 3305 3306 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3304 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
3313 3314 3315 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3313 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
3321 3322 3323 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3321 def max_utilization @max_utilization end |
#orchestration_info ⇒ Google::Apis::ComputeV1::BackendBackendOrchestrationInfo
A message containing information about the resource or system that manages
the backend.
Corresponds to the JSON property orchestrationInfo
3327 3328 3329 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3327 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
3341 3342 3343 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3341 def preference @preference end |
#traffic_duration ⇒ String
Corresponds to the JSON property trafficDuration
3346 3347 3348 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3346 def traffic_duration @traffic_duration end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 |
# File 'lib/google/apis/compute_v1/classes.rb', line 3353 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) @traffic_duration = args[:traffic_duration] if args.key?(:traffic_duration) end |