Class: Azure::ServiceFabric::V6_4_0_36::Models::ServicePlacementRequireDomainDistributionPolicyDescription

Inherits:
ServicePlacementPolicyDescription show all
Includes:
MsRestAzure
Defined in:
lib/6.4.0.36/generated/azure_service_fabric/models/service_placement_require_domain_distribution_policy_description.rb

Overview

Describes the policy to be used for placement of a Service Fabric service where two replicas from the same partition should never be placed in the same fault or upgrade domain.

While this is not common it can expose the service to an increased risk of concurrent failures due to unplanned outages or other cases of subsequent/concurrent failures. As an example, consider a case where replicas are deployed across different data center, with one replica per location. In the event that one of the datacenters goes offline, normally the replica that was placed in that datacenter will be packed into one of the remaining datacenters. If this is not desirable then this policy should be set.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeServicePlacementRequireDomainDistributionPolicyDescription

Returns a new instance of ServicePlacementRequireDomainDistributionPolicyDescription.



27
28
29
# File 'lib/6.4.0.36/generated/azure_service_fabric/models/service_placement_require_domain_distribution_policy_description.rb', line 27

def initialize
  @Type = "RequiredDomainDistribution"
end

Instance Attribute Details

#domain_nameString

as per this policy.

Returns:

  • (String)

    The name of the domain that should used for placement



35
36
37
# File 'lib/6.4.0.36/generated/azure_service_fabric/models/service_placement_require_domain_distribution_policy_description.rb', line 35

def domain_name
  @domain_name
end

#TypeObject

Returns the value of attribute Type.



31
32
33
# File 'lib/6.4.0.36/generated/azure_service_fabric/models/service_placement_require_domain_distribution_policy_description.rb', line 31

def Type
  @Type
end

Class Method Details

.mapperObject

Mapper for ServicePlacementRequireDomainDistributionPolicyDescription class as Ruby Hash. This will be used for serialization/deserialization.



43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# File 'lib/6.4.0.36/generated/azure_service_fabric/models/service_placement_require_domain_distribution_policy_description.rb', line 43

def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'RequiredDomainDistribution',
    type: {
      name: 'Composite',
      class_name: 'ServicePlacementRequireDomainDistributionPolicyDescription',
      model_properties: {
        Type: {
          client_side_validation: true,
          required: true,
          serialized_name: 'Type',
          type: {
            name: 'String'
          }
        },
        domain_name: {
          client_side_validation: true,
          required: false,
          serialized_name: 'DomainName',
          type: {
            name: 'String'
          }
        }
      }
    }
  }
end