Class: Google::Apis::ComputeAlpha::Autoscaler
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::Autoscaler
- 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
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::ComputeAlpha::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::ComputeAlpha::ScalingScheduleStatus>
Output only.
-
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
-
#self_link_with_id ⇒ String
Output only.
-
#status ⇒ String
[Output Only] The status of the autoscaler configuration.
-
#status_details ⇒ Array<Google::Apis::ComputeAlpha::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.
2617 2618 2619 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2617 def initialize(**args) update!(**args) end |
Instance Attribute Details
#autoscaling_policy ⇒ Google::Apis::ComputeAlpha::AutoscalingPolicy
Cloud Autoscaler policy.
Corresponds to the JSON property autoscalingPolicy
2508 2509 2510 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2508 def autoscaling_policy @autoscaling_policy end |
#creation_timestamp ⇒ String
Output only. [Output Only] Creation timestamp inRFC3339
text format.
Corresponds to the JSON property creationTimestamp
2514 2515 2516 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2514 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
2520 2521 2522 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2520 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
2527 2528 2529 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2527 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
2533 2534 2535 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2533 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
2544 2545 2546 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2544 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
2554 2555 2556 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2554 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
2561 2562 2563 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2561 def region @region end |
#scaling_schedule_status ⇒ Hash<String,Google::Apis::ComputeAlpha::ScalingScheduleStatus>
Output only. [Output Only] Status information of existing scaling schedules.
Corresponds to the JSON property scalingScheduleStatus
2566 2567 2568 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2566 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
2571 2572 2573 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2571 def self_link @self_link end |
#self_link_with_id ⇒ String
Output only. [Output Only] Server-defined URL for this resource with the
resource id.
Corresponds to the JSON property selfLinkWithId
2577 2578 2579 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2577 def self_link_with_id @self_link_with_id 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
2595 2596 2597 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2595 def status @status end |
#status_details ⇒ Array<Google::Apis::ComputeAlpha::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
2603 2604 2605 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2603 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
2609 2610 2611 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2609 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
2615 2616 2617 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2615 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2622 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) @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id) @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 |