Source code for azure.mgmt.servicefabric.models.node_type_description_py3

# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


[docs]class NodeTypeDescription(Model): """Describes a node type in the cluster, each node type represents sub set of nodes in the cluster. All required parameters must be populated in order to send to Azure. :param name: Required. The name of the node type. :type name: str :param placement_properties: The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run. :type placement_properties: dict[str, str] :param capacities: The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has. :type capacities: dict[str, str] :param client_connection_endpoint_port: Required. The TCP cluster management endpoint port. :type client_connection_endpoint_port: int :param http_gateway_endpoint_port: Required. The HTTP cluster management endpoint port. :type http_gateway_endpoint_port: int :param durability_level: Possible values include: 'Bronze', 'Silver', 'Gold' :type durability_level: str or ~azure.mgmt.servicefabric.models.enum :param application_ports: The range of ports from which cluster assigned port to Service Fabric applications. :type application_ports: ~azure.mgmt.servicefabric.models.EndpointRangeDescription :param ephemeral_ports: The range of empheral ports that nodes in this node type should be configured with. :type ephemeral_ports: ~azure.mgmt.servicefabric.models.EndpointRangeDescription :param is_primary: Required. The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters. :type is_primary: bool :param vm_instance_count: Required. The number of nodes in the node type. This count should match the capacity property in the corresponding VirtualMachineScaleSet resource. :type vm_instance_count: int :param reverse_proxy_endpoint_port: The endpoint used by reverse proxy. :type reverse_proxy_endpoint_port: int """ _validation = { 'name': {'required': True}, 'client_connection_endpoint_port': {'required': True}, 'http_gateway_endpoint_port': {'required': True}, 'is_primary': {'required': True}, 'vm_instance_count': {'required': True, 'maximum': 2147483647, 'minimum': 1}, } _attribute_map = { 'name': {'key': 'name', 'type': 'str'}, 'placement_properties': {'key': 'placementProperties', 'type': '{str}'}, 'capacities': {'key': 'capacities', 'type': '{str}'}, 'client_connection_endpoint_port': {'key': 'clientConnectionEndpointPort', 'type': 'int'}, 'http_gateway_endpoint_port': {'key': 'httpGatewayEndpointPort', 'type': 'int'}, 'durability_level': {'key': 'durabilityLevel', 'type': 'str'}, 'application_ports': {'key': 'applicationPorts', 'type': 'EndpointRangeDescription'}, 'ephemeral_ports': {'key': 'ephemeralPorts', 'type': 'EndpointRangeDescription'}, 'is_primary': {'key': 'isPrimary', 'type': 'bool'}, 'vm_instance_count': {'key': 'vmInstanceCount', 'type': 'int'}, 'reverse_proxy_endpoint_port': {'key': 'reverseProxyEndpointPort', 'type': 'int'}, } def __init__(self, *, name: str, client_connection_endpoint_port: int, http_gateway_endpoint_port: int, is_primary: bool, vm_instance_count: int, placement_properties=None, capacities=None, durability_level=None, application_ports=None, ephemeral_ports=None, reverse_proxy_endpoint_port: int=None, **kwargs) -> None: super(NodeTypeDescription, self).__init__(**kwargs) self.name = name self.placement_properties = placement_properties self.capacities = capacities self.client_connection_endpoint_port = client_connection_endpoint_port self.http_gateway_endpoint_port = http_gateway_endpoint_port self.durability_level = durability_level self.application_ports = application_ports self.ephemeral_ports = ephemeral_ports self.is_primary = is_primary self.vm_instance_count = vm_instance_count self.reverse_proxy_endpoint_port = reverse_proxy_endpoint_port