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_actionSTOP.
-
#preemptible ⇒ Boolean
(also: #preemptible?)
Defines whether the instance is preemptible.
-
#preemption_notice_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.
-
#provisioning_model ⇒ String
Specifies the provisioning model of the instance.
-
#skip_guest_os_shutdown ⇒ Boolean
(also: #skip_guest_os_shutdown?)
Default is false and there will be 120 seconds between GCE ACPI G2 Soft Off and ACPI G3 Mechanical Off for Standard VMs and 30 seconds for Spot VMs.
-
#termination_time ⇒ String
Specifies the timestamp, when the instance will be terminated, inRFC3339 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.
59708 59709 59710 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59708 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
59580 59581 59582 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59580 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
59588 59589 59590 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59588 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
59593 59594 59595 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59593 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
59600 59601 59602 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59600 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
59605 59606 59607 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59605 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
59613 59614 59615 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59613 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
59620 59621 59622 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59620 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
59626 59627 59628 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59626 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
59632 59633 59634 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59632 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
59640 59641 59642 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59640 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
59646 59647 59648 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59646 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 toConfiguring
node
affinity for more information.
Overrides reservationAffinity.
Corresponds to the JSON property nodeAffinities
59654 59655 59656 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59654 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. Forpreemptible instances,
the default and only possible behavior is TERMINATE. For more
information, see
Set
VM host maintenance policy.
Corresponds to the JSON property onHostMaintenance
59664 59665 59666 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59664 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_actionSTOP.
Corresponds to the JSON property onInstanceStopAction
59669 59670 59671 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59669 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 isstopped and
therefore, in a TERMINATED state. SeeInstance Life
Cycle for more information on the possible instance states.
Corresponds to the JSON property preemptible
59677 59678 59679 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59677 def preemptible @preemptible end |
#preemption_notice_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 preemptionNoticeDuration
59686 59687 59688 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59686 def preemption_notice_duration @preemption_notice_duration end |
#provisioning_model ⇒ String
Specifies the provisioning model of the instance.
Corresponds to the JSON property provisioningModel
59691 59692 59693 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59691 def provisioning_model @provisioning_model end |
#skip_guest_os_shutdown ⇒ Boolean Also known as: skip_guest_os_shutdown?
Default is false and there will be 120 seconds between GCE ACPI G2 Soft
Off and ACPI G3 Mechanical
Off for Standard VMs and 30 seconds for Spot VMs.
Corresponds to the JSON property skipGuestOsShutdown
59698 59699 59700 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59698 def skip_guest_os_shutdown @skip_guest_os_shutdown end |
#termination_time ⇒ String
Specifies the timestamp, when the instance will be terminated, inRFC3339 text
format. If specified, the instance
termination action will be performed at the termination time.
Corresponds to the JSON property terminationTime
59706 59707 59708 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59706 def termination_time @termination_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
59713 59714 59715 59716 59717 59718 59719 59720 59721 59722 59723 59724 59725 59726 59727 59728 59729 59730 59731 59732 59733 |
# File 'lib/google/apis/compute_beta/classes.rb', line 59713 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) @preemption_notice_duration = args[:preemption_notice_duration] if args.key?(:preemption_notice_duration) @provisioning_model = args[:provisioning_model] if args.key?(:provisioning_model) @skip_guest_os_shutdown = args[:skip_guest_os_shutdown] if args.key?(:skip_guest_os_shutdown) @termination_time = args[:termination_time] if args.key?(:termination_time) end |