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.
2399 2400 2401 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2399 def initialize(**args) update!(**args) end |
Instance Attribute Details
#autoscaling_policy ⇒ Google::Apis::ComputeV1::AutoscalingPolicy
Cloud Autoscaler policy.
Corresponds to the JSON property autoscalingPolicy
2296 2297 2298 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2296 def autoscaling_policy @autoscaling_policy end |
#creation_timestamp ⇒ String
Output only. [Output Only] Creation timestamp inRFC3339
text format.
Corresponds to the JSON property creationTimestamp
2302 2303 2304 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2302 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
2308 2309 2310 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2308 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
2315 2316 2317 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2315 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
2321 2322 2323 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2321 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
2332 2333 2334 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2332 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
2342 2343 2344 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2342 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
2349 2350 2351 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2349 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
2354 2355 2356 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2354 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
2359 2360 2361 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2359 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
2377 2378 2379 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2377 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
2385 2386 2387 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2385 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
2391 2392 2393 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2391 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
2397 2398 2399 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2397 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2404 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 |