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 the regionAutoscalers resource. (==
resource_for
$api_version
.autoscalers ==) (== resource_for$api_version
. regionAutoscalers ==)
Instance Attribute Summary collapse
-
#autoscaling_policy ⇒ Google::Apis::ComputeAlpha::AutoscalingPolicy
Cloud Autoscaler policy.
-
#creation_timestamp ⇒ String
[Output Only] Creation timestamp in RFC3339 text format.
-
#description ⇒ String
An optional description of this resource.
-
#id ⇒ Fixnum
[Output Only] The unique identifier for the resource.
-
#kind ⇒ String
[Output Only] Type of the resource.
-
#name ⇒ String
Name of the resource.
-
#recommended_size ⇒ Fixnum
[Output Only] Target recommended MIG size (number of instances) computed by autoscaler.
-
#region ⇒ String
[Output Only] URL of the region where the instance group resides (for autoscalers living in regional scope).
-
#scaling_schedule_status ⇒ Hash<String,Google::Apis::ComputeAlpha::ScalingScheduleStatus>
[Output Only] Status information of existing scaling schedules.
-
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
-
#self_link_with_id ⇒ String
[Output Only] Server-defined URL for this resource with the resource id.
-
#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] URL of the zone where the instance group resides (for autoscalers living in zonal scope).
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.
1935 1936 1937 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1935 def initialize(**args) update!(**args) end |
Instance Attribute Details
#autoscaling_policy ⇒ Google::Apis::ComputeAlpha::AutoscalingPolicy
Cloud Autoscaler policy.
Corresponds to the JSON property autoscalingPolicy
1840 1841 1842 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1840 def autoscaling_policy @autoscaling_policy end |
#creation_timestamp ⇒ String
[Output Only] Creation timestamp in RFC3339 text format.
Corresponds to the JSON property creationTimestamp
1845 1846 1847 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1845 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
1851 1852 1853 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1851 def description @description end |
#id ⇒ Fixnum
[Output Only] The unique identifier for the resource. This identifier is
defined by the server.
Corresponds to the JSON property id
1857 1858 1859 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1857 def id @id end |
#kind ⇒ String
[Output Only] Type of the resource. Always compute#autoscaler for autoscalers.
Corresponds to the JSON property kind
1862 1863 1864 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1862 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 with RFC1035. 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
1872 1873 1874 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1872 def name @name end |
#recommended_size ⇒ Fixnum
[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
1881 1882 1883 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1881 def recommended_size @recommended_size end |
#region ⇒ String
[Output Only] URL of the region where the instance group resides (for
autoscalers living in regional scope).
Corresponds to the JSON property region
1887 1888 1889 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1887 def region @region end |
#scaling_schedule_status ⇒ Hash<String,Google::Apis::ComputeAlpha::ScalingScheduleStatus>
[Output Only] Status information of existing scaling schedules.
Corresponds to the JSON property scalingScheduleStatus
1892 1893 1894 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1892 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
1897 1898 1899 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1897 def self_link @self_link end |
#self_link_with_id ⇒ String
[Output Only] Server-defined URL for this resource with the resource id.
Corresponds to the JSON property selfLinkWithId
1902 1903 1904 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1902 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
1914 1915 1916 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1914 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 for Commonly returned status messages for examples of
status messages you might encounter.
Corresponds to the JSON property statusDetails
1921 1922 1923 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1921 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
1927 1928 1929 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1927 def target @target end |
#zone ⇒ String
[Output Only] URL of the zone where the instance group resides (for
autoscalers living in zonal scope).
Corresponds to the JSON property zone
1933 1934 1935 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1933 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1940 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 |