Class: Google::Apis::VmmigrationV1::ComputeScheduling

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/vmmigration_v1/classes.rb,
lib/google/apis/vmmigration_v1/representations.rb,
lib/google/apis/vmmigration_v1/representations.rb

Overview

Scheduling information for VM on maintenance/restart behaviour and node allocation in sole tenant nodes. Options for instance behavior when the host machine undergoes maintenance that may temporarily impact instance performance.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ComputeScheduling

Returns a new instance of ComputeScheduling.



1611
1612
1613
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1611

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#min_node_cpusFixnum

The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node. Ignored if no node_affinites are configured. Corresponds to the JSON property minNodeCpus

Returns:

  • (Fixnum)


1589
1590
1591
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1589

def min_node_cpus
  @min_node_cpus
end

#node_affinitiesArray<Google::Apis::VmmigrationV1::SchedulingNodeAffinity>

A set of node affinity and anti-affinity configurations for sole tenant nodes. Corresponds to the JSON property nodeAffinities



1594
1595
1596
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1594

def node_affinities
  @node_affinities
end

#on_host_maintenanceString

How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance. Corresponds to the JSON property onHostMaintenance

Returns:

  • (String)


1600
1601
1602
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1600

def on_host_maintenance
  @on_host_maintenance
end

#restart_typeString

Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user). This configuration is identical to automaticRestart field in Compute Engine create instance under scheduling. It was changed to an enum (instead of a boolean) to match the default value in Compute Engine which is automatic restart. Corresponds to the JSON property restartType

Returns:

  • (String)


1609
1610
1611
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1609

def restart_type
  @restart_type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1616
1617
1618
1619
1620
1621
# File 'lib/google/apis/vmmigration_v1/classes.rb', line 1616

def update!(**args)
  @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)
  @restart_type = args[:restart_type] if args.key?(:restart_type)
end