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.
3680 3681 3682 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3680 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
3508 3509 3510 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3508 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
3525 3526 3527 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3525 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
3531 3532 3533 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3531 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
3537 3538 3539 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3537 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
3543 3544 3545 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3543 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
3559 3560 3561 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3559 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
3567 3568 3569 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3567 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
3576 3577 3578 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3576 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
3585 3586 3587 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3585 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
3591 3592 3593 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3591 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
3598 3599 3600 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3598 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
3605 3606 3607 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3605 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
3614 3615 3616 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3614 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
3623 3624 3625 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3623 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
3632 3633 3634 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3632 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
3640 3641 3642 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3640 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
3646 3647 3648 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3646 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
3660 3661 3662 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3660 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
3673 3674 3675 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3673 def service @service end |
#traffic_duration ⇒ String
Corresponds to the JSON property trafficDuration
3678 3679 3680 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3678 def traffic_duration @traffic_duration end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 3685 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 |