Class: Google::Apis::ComputeAlpha::AutoscalingPolicyCpuUtilization

Inherits:
Object
  • Object
show all
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

CPU utilization policy.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ AutoscalingPolicyCpuUtilization

Returns a new instance of AutoscalingPolicyCpuUtilization.



3545
3546
3547
# File 'lib/google/apis/compute_alpha/classes.rb', line 3545

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#predictive_methodString

Indicates whether predictive autoscaling based on CPU metric is enabled. Valid values are:

  • NONE (default). No predictive method is used. The autoscaler scales the group to meet current demand based on real-time metrics.
  • OPTIMIZE_AVAILABILITY. Predictive autoscaling improves availability by monitoring daily and weekly load patterns and scaling out ahead of anticipated demand. Corresponds to the JSON property predictiveMethod

Returns:

  • (String)


3529
3530
3531
# File 'lib/google/apis/compute_alpha/classes.rb', line 3529

def predictive_method
  @predictive_method
end

#utilization_targetFloat

The target CPU utilization that the autoscaler maintains. Must be a float value in the range (0, 1]. If not specified, the default is0.6. If the CPU level is below the target utilization, the autoscaler scales in the number of instances until it reaches the minimum number of instances you specified or until the average CPU of your instances reaches the target utilization. If the average CPU is above the target utilization, the autoscaler scales out until it reaches the maximum number of instances you specified or until the average utilization reaches the target utilization. Corresponds to the JSON property utilizationTarget

Returns:

  • (Float)


3543
3544
3545
# File 'lib/google/apis/compute_alpha/classes.rb', line 3543

def utilization_target
  @utilization_target
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3550
3551
3552
3553
# File 'lib/google/apis/compute_alpha/classes.rb', line 3550

def update!(**args)
  @predictive_method = args[:predictive_method] if args.key?(:predictive_method)
  @utilization_target = args[:utilization_target] if args.key?(:utilization_target)
end