Class: Google::Apis::ComputeBeta::ResourcePolicyGroupPlacementPolicy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::ResourcePolicyGroupPlacementPolicy
- 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
A GroupPlacementPolicy specifies resource placement configuration. It specifies the failure bucket separation as well as network locality
Instance Attribute Summary collapse
-
#availability_domain_count ⇒ Fixnum
The number of availability domains to spread instances across.
-
#collocation ⇒ String
Specifies network collocation Corresponds to the JSON property
collocation. -
#max_distance ⇒ Fixnum
Specifies the number of max logical switches.
-
#slice_count ⇒ Fixnum
Specifies the number of slices in a multislice workload.
-
#tpu_topology ⇒ String
Specifies the shape of the TPU slice Corresponds to the JSON property
tpuTopology. -
#vm_count ⇒ Fixnum
Number of VMs in this placement group.
Instance Method Summary collapse
-
#initialize(**args) ⇒ ResourcePolicyGroupPlacementPolicy
constructor
A new instance of ResourcePolicyGroupPlacementPolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ ResourcePolicyGroupPlacementPolicy
Returns a new instance of ResourcePolicyGroupPlacementPolicy.
35379 35380 35381 |
# File 'lib/google/apis/compute_beta/classes.rb', line 35379 def initialize(**args) update!(**args) end |
Instance Attribute Details
#availability_domain_count ⇒ Fixnum
The number of availability domains to spread instances across. If two
instances are in different availability domain, they are not in the same low
latency network.
Corresponds to the JSON property availabilityDomainCount
35350 35351 35352 |
# File 'lib/google/apis/compute_beta/classes.rb', line 35350 def availability_domain_count @availability_domain_count end |
#collocation ⇒ String
Specifies network collocation
Corresponds to the JSON property collocation
35355 35356 35357 |
# File 'lib/google/apis/compute_beta/classes.rb', line 35355 def collocation @collocation end |
#max_distance ⇒ Fixnum
Specifies the number of max logical switches.
Corresponds to the JSON property maxDistance
35360 35361 35362 |
# File 'lib/google/apis/compute_beta/classes.rb', line 35360 def max_distance @max_distance end |
#slice_count ⇒ Fixnum
Specifies the number of slices in a multislice workload.
Corresponds to the JSON property sliceCount
35365 35366 35367 |
# File 'lib/google/apis/compute_beta/classes.rb', line 35365 def slice_count @slice_count end |
#tpu_topology ⇒ String
Specifies the shape of the TPU slice
Corresponds to the JSON property tpuTopology
35370 35371 35372 |
# File 'lib/google/apis/compute_beta/classes.rb', line 35370 def tpu_topology @tpu_topology end |
#vm_count ⇒ Fixnum
Number of VMs in this placement group. Google does not recommend that you use
this field unless you use a compact policy and you want your policy to work
only if it contains this exact number of VMs.
Corresponds to the JSON property vmCount
35377 35378 35379 |
# File 'lib/google/apis/compute_beta/classes.rb', line 35377 def vm_count @vm_count end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
35384 35385 35386 35387 35388 35389 35390 35391 |
# File 'lib/google/apis/compute_beta/classes.rb', line 35384 def update!(**args) @availability_domain_count = args[:availability_domain_count] if args.key?(:availability_domain_count) @collocation = args[:collocation] if args.key?(:collocation) @max_distance = args[:max_distance] if args.key?(:max_distance) @slice_count = args[:slice_count] if args.key?(:slice_count) @tpu_topology = args[:tpu_topology] if args.key?(:tpu_topology) @vm_count = args[:vm_count] if args.key?(:vm_count) end |