Class: Google::Apis::ComputeAlpha::ResourcePolicyGroupPlacementPolicy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::ResourcePolicyGroupPlacementPolicy
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/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
. -
#locality ⇒ String
Specifies network locality Corresponds to the JSON property
locality
. -
#scope ⇒ String
Scope specifies the availability domain to which the VMs should be spread.
-
#style ⇒ String
Specifies instances to hosts placement relationship Corresponds to the JSON property
style
. -
#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.
35207 35208 35209 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35207 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
35178 35179 35180 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35178 def availability_domain_count @availability_domain_count end |
#collocation ⇒ String
Specifies network collocation
Corresponds to the JSON property collocation
35183 35184 35185 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35183 def collocation @collocation end |
#locality ⇒ String
Specifies network locality
Corresponds to the JSON property locality
35188 35189 35190 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35188 def locality @locality end |
#scope ⇒ String
Scope specifies the availability domain to which the VMs should be spread.
Corresponds to the JSON property scope
35193 35194 35195 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35193 def scope @scope end |
#style ⇒ String
Specifies instances to hosts placement relationship
Corresponds to the JSON property style
35198 35199 35200 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35198 def style @style 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
35205 35206 35207 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35205 def vm_count @vm_count end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
35212 35213 35214 35215 35216 35217 35218 35219 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 35212 def update!(**args) @availability_domain_count = args[:availability_domain_count] if args.key?(:availability_domain_count) @collocation = args[:collocation] if args.key?(:collocation) @locality = args[:locality] if args.key?(:locality) @scope = args[:scope] if args.key?(:scope) @style = args[:style] if args.key?(:style) @vm_count = args[:vm_count] if args.key?(:vm_count) end |