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.
2364 2365 2366 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2364 def initialize(**args) update!(**args) end |
Instance Attribute Details
#autoscaling_policy ⇒ Google::Apis::ComputeV1::AutoscalingPolicy
Cloud Autoscaler policy.
Corresponds to the JSON property autoscalingPolicy
2261 2262 2263 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2261 def autoscaling_policy @autoscaling_policy end |
#creation_timestamp ⇒ String
Output only. [Output Only] Creation timestamp inRFC3339
text format.
Corresponds to the JSON property creationTimestamp
2267 2268 2269 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2267 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
2273 2274 2275 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2273 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
2280 2281 2282 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2280 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
2286 2287 2288 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2286 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
2297 2298 2299 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2297 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
2307 2308 2309 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2307 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
2314 2315 2316 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2314 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
2319 2320 2321 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2319 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
2324 2325 2326 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2324 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
2342 2343 2344 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2342 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
2350 2351 2352 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2350 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
2356 2357 2358 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2356 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
2362 2363 2364 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2362 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 |
# File 'lib/google/apis/compute_v1/classes.rb', line 2369 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 |