Class: Google::Apis::ComputeBeta::ResourcePolicyGroupPlacementPolicy

Inherits:
Object
  • Object
show all
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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ResourcePolicyGroupPlacementPolicy

Returns a new instance of ResourcePolicyGroupPlacementPolicy.



37623
37624
37625
# File 'lib/google/apis/compute_beta/classes.rb', line 37623

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

Instance Attribute Details

#availability_domain_countFixnum

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

Returns:

  • (Fixnum)


37594
37595
37596
# File 'lib/google/apis/compute_beta/classes.rb', line 37594

def availability_domain_count
  @availability_domain_count
end

#collocationString

Specifies network collocation Corresponds to the JSON property collocation

Returns:

  • (String)


37599
37600
37601
# File 'lib/google/apis/compute_beta/classes.rb', line 37599

def collocation
  @collocation
end

#max_distanceFixnum

Specifies the number of max logical switches. Corresponds to the JSON property maxDistance

Returns:

  • (Fixnum)


37604
37605
37606
# File 'lib/google/apis/compute_beta/classes.rb', line 37604

def max_distance
  @max_distance
end

#slice_countFixnum

Specifies the number of slices in a multislice workload. Corresponds to the JSON property sliceCount

Returns:

  • (Fixnum)


37609
37610
37611
# File 'lib/google/apis/compute_beta/classes.rb', line 37609

def slice_count
  @slice_count
end

#tpu_topologyString

Specifies the shape of the TPU slice Corresponds to the JSON property tpuTopology

Returns:

  • (String)


37614
37615
37616
# File 'lib/google/apis/compute_beta/classes.rb', line 37614

def tpu_topology
  @tpu_topology
end

#vm_countFixnum

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

Returns:

  • (Fixnum)


37621
37622
37623
# File 'lib/google/apis/compute_beta/classes.rb', line 37621

def vm_count
  @vm_count
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



37628
37629
37630
37631
37632
37633
37634
37635
# File 'lib/google/apis/compute_beta/classes.rb', line 37628

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