Class: Google::Apis::ComputeV1::Autoscaler
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::Autoscaler
- 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
Represents an Autoscaler resource. Google Compute Engine has two Autoscaler resources:
- Zonal
- Regional Use autoscalers to automatically add or delete instances from a managed instance group according to your defined autoscaling policy. For more information, read Autoscaling Groups of Instances. For zonal managed instance groups resource, use the autoscaler resource. For regional managed instance groups, use theregionAutoscalers resource.
Instance Attribute Summary collapse
-
#autoscaling_policy ⇒ Google::Apis::ComputeV1::AutoscalingPolicy
Cloud Autoscaler policy.
-
#creation_timestamp ⇒ String
Output only.
-
#description ⇒ String
An optional description of this resource.
-
#id ⇒ Fixnum
Output only.
-
#kind ⇒ String
Output only.
-
#name ⇒ String
Name of the resource.
-
#recommended_size ⇒ Fixnum
Output only.
-
#region ⇒ String
Output only.
-
#scaling_schedule_status ⇒ Hash<String,Google::Apis::ComputeV1::ScalingScheduleStatus>
Output only.
-
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
-
#status ⇒ String
[Output Only] The status of the autoscaler configuration.
-
#status_details ⇒ Array<Google::Apis::ComputeV1::AutoscalerStatusDetails>
[Output Only] Human-readable details about the current state of the autoscaler.
-
#target ⇒ String
URL of the managed instance group that this autoscaler will scale.
-
#zone ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Autoscaler
constructor
A new instance of Autoscaler.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Autoscaler
Returns a new instance of Autoscaler.
2356 2357 2358 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2356 def initialize(**args) update!(**args) end |
Instance Attribute Details
#autoscaling_policy ⇒ Google::Apis::ComputeV1::AutoscalingPolicy
Cloud Autoscaler policy.
Corresponds to the JSON property autoscalingPolicy
2253 2254 2255 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2253 def autoscaling_policy @autoscaling_policy end |
#creation_timestamp ⇒ String
Output only. [Output Only] Creation timestamp inRFC3339
text format.
Corresponds to the JSON property creationTimestamp
2259 2260 2261 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2259 def @creation_timestamp end |
#description ⇒ String
An optional description of this resource. Provide this property when you
create the resource.
Corresponds to the JSON property description
2265 2266 2267 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2265 def description @description end |
#id ⇒ Fixnum
Output only. [Output Only] The unique identifier for the resource. This
identifier is
defined by the server.
Corresponds to the JSON property id
2272 2273 2274 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2272 def id @id end |
#kind ⇒ String
Output only. [Output Only] Type of the resource. Always compute#autoscaler
for autoscalers.
Corresponds to the JSON property kind
2278 2279 2280 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2278 def kind @kind end |
#name ⇒ String
Name of the resource. Provided by the client when the resource is created.
The name must be 1-63 characters long, and comply withRFC1035.
Specifically, the name must be 1-63 characters long and match the regular
expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first
character must be a lowercase letter, and all following characters must
be a dash, lowercase letter, or digit, except the last character, which
cannot be a dash.
Corresponds to the JSON property name
2289 2290 2291 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2289 def name @name end |
#recommended_size ⇒ Fixnum
Output only. [Output Only] Target recommended MIG size (number of instances)
computed by
autoscaler. Autoscaler calculates the recommended MIG size even when the
autoscaling policy mode is different from ON. This field is empty when
autoscaler is not connected to an existing managed instance group or
autoscaler did not generate its prediction.
Corresponds to the JSON property recommendedSize
2299 2300 2301 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2299 def recommended_size @recommended_size end |
#region ⇒ String
Output only. [Output Only] URL of theregion
where the instance group resides (for autoscalers living in regional
scope).
Corresponds to the JSON property region
2306 2307 2308 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2306 def region @region end |
#scaling_schedule_status ⇒ Hash<String,Google::Apis::ComputeV1::ScalingScheduleStatus>
Output only. [Output Only] Status information of existing scaling schedules.
Corresponds to the JSON property scalingScheduleStatus
2311 2312 2313 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2311 def scaling_schedule_status @scaling_schedule_status end |
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
Corresponds to the JSON property selfLink
2316 2317 2318 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2316 def self_link @self_link end |
#status ⇒ String
[Output Only] The status of the autoscaler configuration. Current set of possible values:
- PENDING: Autoscaler backend hasn't read new/updated configuration.
- DELETING: Configuration is being deleted.
- ACTIVE: Configuration is acknowledged to be effective. Some warnings might be present in the statusDetails field.
- ERROR:
Configuration has errors. Actionable for users. Details are present in
the statusDetails field.
New values might be added in the future.
Corresponds to the JSON property
status
2334 2335 2336 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2334 def status @status end |
#status_details ⇒ Array<Google::Apis::ComputeV1::AutoscalerStatusDetails>
[Output Only] Human-readable details about the current state of the
autoscaler. Read the documentation forCommonly
returned status messages for examples of status messages you might
encounter.
Corresponds to the JSON property statusDetails
2342 2343 2344 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2342 def status_details @status_details end |
#target ⇒ String
URL of the managed instance group that this autoscaler will scale. This
field is required when creating an autoscaler.
Corresponds to the JSON property target
2348 2349 2350 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2348 def target @target end |
#zone ⇒ String
Output only. [Output Only] URL of thezone
where the instance group resides (for autoscalers living in zonal scope).
Corresponds to the JSON property zone
2354 2355 2356 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2354 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2361 def update!(**args) @autoscaling_policy = args[:autoscaling_policy] if args.key?(:autoscaling_policy) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @description = args[:description] if args.key?(:description) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @recommended_size = args[:recommended_size] if args.key?(:recommended_size) @region = args[:region] if args.key?(:region) @scaling_schedule_status = args[:scaling_schedule_status] if args.key?(:scaling_schedule_status) @self_link = args[:self_link] if args.key?(:self_link) @status = args[:status] if args.key?(:status) @status_details = args[:status_details] if args.key?(:status_details) @target = args[:target] if args.key?(:target) @zone = args[:zone] if args.key?(:zone) end |