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.
2944 2945 2946 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2944 def initialize(**args) update!(**args) end |
Instance Attribute Details
#autoscaling_policy ⇒ Google::Apis::ComputeAlpha::AutoscalingPolicy
Cloud Autoscaler policy.
Corresponds to the JSON property autoscalingPolicy
2835 2836 2837 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2835 def autoscaling_policy @autoscaling_policy end |
#creation_timestamp ⇒ String
Output only. [Output Only] Creation timestamp inRFC3339
text format.
Corresponds to the JSON property creationTimestamp
2841 2842 2843 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2841 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
2847 2848 2849 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2847 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
2854 2855 2856 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2854 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
2860 2861 2862 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2860 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
2871 2872 2873 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2871 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
2881 2882 2883 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2881 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
2888 2889 2890 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2888 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
2893 2894 2895 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2893 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
2898 2899 2900 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2898 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
2904 2905 2906 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2904 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
2922 2923 2924 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2922 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
2930 2931 2932 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2930 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
2936 2937 2938 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2936 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
2942 2943 2944 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2942 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 2949 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 |