Class: Google::Apis::ComputeBeta::Scheduling
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::Scheduling
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_beta/classes.rb,
lib/google/apis/compute_beta/representations.rb,
lib/google/apis/compute_beta/representations.rb
Overview
Sets the scheduling options for an Instance.
Instance Attribute Summary collapse
-
#automatic_restart ⇒ Boolean
(also: #automatic_restart?)
Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user).
-
#availability_domain ⇒ Fixnum
Specifies the availability domain to place the instance in.
-
#graceful_shutdown ⇒ Google::Apis::ComputeBeta::SchedulingGracefulShutdown
The configuration for gracefully shutting down the instance.
-
#host_error_timeout_seconds ⇒ Fixnum
Specify the time in seconds for host error detection, the value must be within the range of [90, 330] with the increment of 30, if unset, the default behavior of host error recovery will be used.
-
#instance_termination_action ⇒ String
Specifies the termination action for the instance.
-
#local_ssd_recovery_timeout ⇒ Google::Apis::ComputeBeta::Duration
A Duration represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution.
-
#location_hint ⇒ String
An opaque location hint used to place the instance close to other resources.
-
#maintenance_freeze_duration_hours ⇒ Fixnum
Specifies the number of hours after VM instance creation where the VM won't be scheduled for maintenance.
-
#maintenance_interval ⇒ String
Specifies the frequency of planned maintenance events.
-
#max_run_duration ⇒ Google::Apis::ComputeBeta::Duration
A Duration represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution.
-
#min_node_cpus ⇒ Fixnum
The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node.
-
#node_affinities ⇒ Array<Google::Apis::ComputeBeta::SchedulingNodeAffinity>
A set of node affinity and anti-affinity configurations.
-
#on_host_maintenance ⇒ String
Defines the maintenance behavior for this instance.
-
#on_instance_stop_action ⇒ Google::Apis::ComputeBeta::SchedulingOnInstanceStopAction
Defines the behaviour for instances with the instance_termination_action STOP.
-
#preemptible ⇒ Boolean
(also: #preemptible?)
Defines whether the instance is preemptible.
-
#provisioning_model ⇒ String
Specifies the provisioning model of the instance.
-
#termination_time ⇒ String
Specifies the timestamp, when the instance will be terminated, in RFC3339 text format.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Scheduling
constructor
A new instance of Scheduling.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Scheduling
Returns a new instance of Scheduling.
41178 41179 41180 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41178 def initialize(**args) update!(**args) end |
Instance Attribute Details
#automatic_restart ⇒ Boolean Also known as: automatic_restart?
Specifies whether the instance should be automatically restarted if it is
terminated by Compute Engine (not terminated by a user). You can only set the
automatic restart option for standard instances. Preemptible instances cannot
be automatically restarted. By default, this is set to true so an instance is
automatically restarted if it is terminated by Compute Engine.
Corresponds to the JSON property automaticRestart
41071 41072 41073 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41071 def automatic_restart @automatic_restart end |
#availability_domain ⇒ Fixnum
Specifies the availability domain to place the instance in. The value must be
a number between 1 and the number of availability domains specified in the
spread placement policy attached to the instance.
Corresponds to the JSON property availabilityDomain
41079 41080 41081 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41079 def availability_domain @availability_domain end |
#graceful_shutdown ⇒ Google::Apis::ComputeBeta::SchedulingGracefulShutdown
The configuration for gracefully shutting down the instance.
Corresponds to the JSON property gracefulShutdown
41084 41085 41086 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41084 def graceful_shutdown @graceful_shutdown end |
#host_error_timeout_seconds ⇒ Fixnum
Specify the time in seconds for host error detection, the value must be within
the range of [90, 330] with the increment of 30, if unset, the default
behavior of host error recovery will be used.
Corresponds to the JSON property hostErrorTimeoutSeconds
41091 41092 41093 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41091 def host_error_timeout_seconds @host_error_timeout_seconds end |
#instance_termination_action ⇒ String
Specifies the termination action for the instance.
Corresponds to the JSON property instanceTerminationAction
41096 41097 41098 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41096 def instance_termination_action @instance_termination_action end |
#local_ssd_recovery_timeout ⇒ Google::Apis::ComputeBeta::Duration
A Duration represents a fixed-length span of time represented as a count of
seconds and fractions of seconds at nanosecond resolution. It is independent
of any calendar and concepts like "day" or "month". Range is approximately 10,
000 years.
Corresponds to the JSON property localSsdRecoveryTimeout
41104 41105 41106 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41104 def local_ssd_recovery_timeout @local_ssd_recovery_timeout end |
#location_hint ⇒ String
An opaque location hint used to place the instance close to other resources.
This field is for use by internal tools that use the public API.
Corresponds to the JSON property locationHint
41110 41111 41112 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41110 def location_hint @location_hint end |
#maintenance_freeze_duration_hours ⇒ Fixnum
Specifies the number of hours after VM instance creation where the VM won't be
scheduled for maintenance.
Corresponds to the JSON property maintenanceFreezeDurationHours
41116 41117 41118 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41116 def maintenance_freeze_duration_hours @maintenance_freeze_duration_hours end |
#maintenance_interval ⇒ String
Specifies the frequency of planned maintenance events. The accepted values are:
PERIODIC
.
Corresponds to the JSON property maintenanceInterval
41122 41123 41124 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41122 def maintenance_interval @maintenance_interval end |
#max_run_duration ⇒ Google::Apis::ComputeBeta::Duration
A Duration represents a fixed-length span of time represented as a count of
seconds and fractions of seconds at nanosecond resolution. It is independent
of any calendar and concepts like "day" or "month". Range is approximately 10,
000 years.
Corresponds to the JSON property maxRunDuration
41130 41131 41132 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41130 def max_run_duration @max_run_duration end |
#min_node_cpus ⇒ Fixnum
The minimum number of virtual CPUs this instance will consume when running on
a sole-tenant node.
Corresponds to the JSON property minNodeCpus
41136 41137 41138 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41136 def min_node_cpus @min_node_cpus end |
#node_affinities ⇒ Array<Google::Apis::ComputeBeta::SchedulingNodeAffinity>
A set of node affinity and anti-affinity configurations. Refer to Configuring
node affinity for more information. Overrides reservationAffinity.
Corresponds to the JSON property nodeAffinities
41142 41143 41144 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41142 def node_affinities @node_affinities end |
#on_host_maintenance ⇒ String
Defines the maintenance behavior for this instance. For standard instances,
the default behavior is MIGRATE. For preemptible instances, the default and
only possible behavior is TERMINATE. For more information, see Set VM host
maintenance policy.
Corresponds to the JSON property onHostMaintenance
41150 41151 41152 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41150 def on_host_maintenance @on_host_maintenance end |
#on_instance_stop_action ⇒ Google::Apis::ComputeBeta::SchedulingOnInstanceStopAction
Defines the behaviour for instances with the instance_termination_action STOP.
Corresponds to the JSON property onInstanceStopAction
41155 41156 41157 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41155 def on_instance_stop_action @on_instance_stop_action end |
#preemptible ⇒ Boolean Also known as: preemptible?
Defines whether the instance is preemptible. This can only be set during
instance creation or while the instance is stopped and therefore, in a
TERMINATED
state. See Instance Life Cycle for more information on the
possible instance states.
Corresponds to the JSON property preemptible
41163 41164 41165 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41163 def preemptible @preemptible end |
#provisioning_model ⇒ String
Specifies the provisioning model of the instance.
Corresponds to the JSON property provisioningModel
41169 41170 41171 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41169 def provisioning_model @provisioning_model end |
#termination_time ⇒ String
Specifies the timestamp, when the instance will be terminated, in RFC3339 text
format. If specified, the instance termination action will be performed at the
termination time.
Corresponds to the JSON property terminationTime
41176 41177 41178 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41176 def termination_time @termination_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
41183 41184 41185 41186 41187 41188 41189 41190 41191 41192 41193 41194 41195 41196 41197 41198 41199 41200 41201 |
# File 'lib/google/apis/compute_beta/classes.rb', line 41183 def update!(**args) @automatic_restart = args[:automatic_restart] if args.key?(:automatic_restart) @availability_domain = args[:availability_domain] if args.key?(:availability_domain) @graceful_shutdown = args[:graceful_shutdown] if args.key?(:graceful_shutdown) @host_error_timeout_seconds = args[:host_error_timeout_seconds] if args.key?(:host_error_timeout_seconds) @instance_termination_action = args[:instance_termination_action] if args.key?(:instance_termination_action) @local_ssd_recovery_timeout = args[:local_ssd_recovery_timeout] if args.key?(:local_ssd_recovery_timeout) @location_hint = args[:location_hint] if args.key?(:location_hint) @maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours) @maintenance_interval = args[:maintenance_interval] if args.key?(:maintenance_interval) @max_run_duration = args[:max_run_duration] if args.key?(:max_run_duration) @min_node_cpus = args[:min_node_cpus] if args.key?(:min_node_cpus) @node_affinities = args[:node_affinities] if args.key?(:node_affinities) @on_host_maintenance = args[:on_host_maintenance] if args.key?(:on_host_maintenance) @on_instance_stop_action = args[:on_instance_stop_action] if args.key?(:on_instance_stop_action) @preemptible = args[:preemptible] if args.key?(:preemptible) @provisioning_model = args[:provisioning_model] if args.key?(:provisioning_model) @termination_time = args[:termination_time] if args.key?(:termination_time) end |