Class: Google::Apis::ComputeAlpha::AutoscalingPolicy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::AutoscalingPolicy
- Defined in:
- generated/google/apis/compute_alpha/classes.rb,
generated/google/apis/compute_alpha/representations.rb,
generated/google/apis/compute_alpha/representations.rb
Overview
Cloud Autoscaler policy.
Instance Attribute Summary collapse
-
#cool_down_period_sec ⇒ Fixnum
The number of seconds that the autoscaler should wait before it starts collecting information from a new instance.
-
#cpu_utilization ⇒ Google::Apis::ComputeAlpha::AutoscalingPolicyCpuUtilization
CPU utilization policy.
-
#custom_metric_utilizations ⇒ Array<Google::Apis::ComputeAlpha::AutoscalingPolicyCustomMetricUtilization>
Configuration parameters of autoscaling based on a custom metric.
-
#load_balancing_utilization ⇒ Google::Apis::ComputeAlpha::AutoscalingPolicyLoadBalancingUtilization
Configuration parameters of autoscaling based on load balancing.
-
#max_num_replicas ⇒ Fixnum
The maximum number of instances that the autoscaler can scale up to.
-
#min_num_replicas ⇒ Fixnum
The minimum number of replicas that the autoscaler can scale down to.
-
#mode ⇒ String
Defines operating mode for this policy.
-
#queue_based_scaling ⇒ Google::Apis::ComputeAlpha::AutoscalingPolicyQueueBasedScaling
Configuration parameters of autoscaling based on queuing system.
-
#scale_down_control ⇒ Google::Apis::ComputeAlpha::AutoscalingPolicyScaleDownControl
Configuration that allows for slower scale down so that even if Autoscaler recommends an abrupt scale down of a MIG, it will be throttled as specified by the parameters below.
Instance Method Summary collapse
-
#initialize(**args) ⇒ AutoscalingPolicy
constructor
A new instance of AutoscalingPolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Google::Apis::Core::JsonObjectSupport
Methods included from Google::Apis::Core::Hashable
Constructor Details
#initialize(**args) ⇒ AutoscalingPolicy
Returns a new instance of AutoscalingPolicy.
2236 2237 2238 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 2236 def initialize(**args) update!(**args) end |
Instance Attribute Details
#cool_down_period_sec ⇒ Fixnum
The number of seconds that the autoscaler should wait before it starts
collecting information from a new instance. This prevents the autoscaler from
collecting information when the instance is initializing, during which the
collected usage would not be reliable. The default time autoscaler waits is 60
seconds.
Virtual machine initialization times might vary because of numerous factors.
We recommend that you test how long an instance may take to initialize. To do
this, create an instance and time the startup process.
Corresponds to the JSON property coolDownPeriodSec
2188 2189 2190 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 2188 def cool_down_period_sec @cool_down_period_sec end |
#cpu_utilization ⇒ Google::Apis::ComputeAlpha::AutoscalingPolicyCpuUtilization
CPU utilization policy.
Corresponds to the JSON property cpuUtilization
2193 2194 2195 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 2193 def cpu_utilization @cpu_utilization end |
#custom_metric_utilizations ⇒ Array<Google::Apis::ComputeAlpha::AutoscalingPolicyCustomMetricUtilization>
Configuration parameters of autoscaling based on a custom metric.
Corresponds to the JSON property customMetricUtilizations
2198 2199 2200 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 2198 def custom_metric_utilizations @custom_metric_utilizations end |
#load_balancing_utilization ⇒ Google::Apis::ComputeAlpha::AutoscalingPolicyLoadBalancingUtilization
Configuration parameters of autoscaling based on load balancing.
Corresponds to the JSON property loadBalancingUtilization
2203 2204 2205 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 2203 def load_balancing_utilization @load_balancing_utilization end |
#max_num_replicas ⇒ Fixnum
The maximum number of instances that the autoscaler can scale up to. This is
required when creating or updating an autoscaler. The maximum number of
replicas should not be lower than minimal number of replicas.
Corresponds to the JSON property maxNumReplicas
2210 2211 2212 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 2210 def max_num_replicas @max_num_replicas end |
#min_num_replicas ⇒ Fixnum
The minimum number of replicas that the autoscaler can scale down to. This
cannot be less than 0. If not provided, autoscaler will choose a default value
depending on maximum number of instances allowed.
Corresponds to the JSON property minNumReplicas
2217 2218 2219 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 2217 def min_num_replicas @min_num_replicas end |
#mode ⇒ String
Defines operating mode for this policy.
Corresponds to the JSON property mode
2222 2223 2224 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 2222 def mode @mode end |
#queue_based_scaling ⇒ Google::Apis::ComputeAlpha::AutoscalingPolicyQueueBasedScaling
Configuration parameters of autoscaling based on queuing system.
Corresponds to the JSON property queueBasedScaling
2227 2228 2229 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 2227 def queue_based_scaling @queue_based_scaling end |
#scale_down_control ⇒ Google::Apis::ComputeAlpha::AutoscalingPolicyScaleDownControl
Configuration that allows for slower scale down so that even if Autoscaler
recommends an abrupt scale down of a MIG, it will be throttled as specified by
the parameters below.
Corresponds to the JSON property scaleDownControl
2234 2235 2236 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 2234 def scale_down_control @scale_down_control end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 2241 def update!(**args) @cool_down_period_sec = args[:cool_down_period_sec] if args.key?(:cool_down_period_sec) @cpu_utilization = args[:cpu_utilization] if args.key?(:cpu_utilization) @custom_metric_utilizations = args[:custom_metric_utilizations] if args.key?(:custom_metric_utilizations) @load_balancing_utilization = args[:load_balancing_utilization] if args.key?(:load_balancing_utilization) @max_num_replicas = args[:max_num_replicas] if args.key?(:max_num_replicas) @min_num_replicas = args[:min_num_replicas] if args.key?(:min_num_replicas) @mode = args[:mode] if args.key?(:mode) @queue_based_scaling = args[:queue_based_scaling] if args.key?(:queue_based_scaling) @scale_down_control = args[:scale_down_control] if args.key?(:scale_down_control) end |