Class NetworkConfiguration


  • public class NetworkConfiguration
    extends Object
    The network configuration for a Pool.
    • Constructor Detail

      • NetworkConfiguration

        public NetworkConfiguration()
    • Method Detail

      • subnetId

        public String subnetId()
        Get the virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes in the Pool. If the subnet doesn't have enough free IP addresses, the Pool will partially allocate Nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. For Pools created with virtualMachineConfiguration only ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported, but for Pools created with cloudServiceConfiguration both ARM and classic virtual networks are supported. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For Pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For Pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.
        Returns:
        the subnetId value
      • withSubnetId

        public NetworkConfiguration withSubnetId​(String subnetId)
        Set the virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes in the Pool. If the subnet doesn't have enough free IP addresses, the Pool will partially allocate Nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. For Pools created with virtualMachineConfiguration only ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported, but for Pools created with cloudServiceConfiguration both ARM and classic virtual networks are supported. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For Pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For Pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration.
        Parameters:
        subnetId - the subnetId value to set
        Returns:
        the NetworkConfiguration object itself.
      • dynamicVNetAssignmentScope

        public DynamicVNetAssignmentScope dynamicVNetAssignmentScope()
        Get possible values include: 'none', 'job'.
        Returns:
        the dynamicVNetAssignmentScope value
      • withDynamicVNetAssignmentScope

        public NetworkConfiguration withDynamicVNetAssignmentScope​(DynamicVNetAssignmentScope dynamicVNetAssignmentScope)
        Set possible values include: 'none', 'job'.
        Parameters:
        dynamicVNetAssignmentScope - the dynamicVNetAssignmentScope value to set
        Returns:
        the NetworkConfiguration object itself.
      • endpointConfiguration

        public PoolEndpointConfiguration endpointConfiguration()
        Get pool endpoint configuration is only supported on Pools with the virtualMachineConfiguration property.
        Returns:
        the endpointConfiguration value
      • withEndpointConfiguration

        public NetworkConfiguration withEndpointConfiguration​(PoolEndpointConfiguration endpointConfiguration)
        Set pool endpoint configuration is only supported on Pools with the virtualMachineConfiguration property.
        Parameters:
        endpointConfiguration - the endpointConfiguration value to set
        Returns:
        the NetworkConfiguration object itself.
      • publicIPAddressConfiguration

        public PublicIPAddressConfiguration publicIPAddressConfiguration()
        Get public IP configuration property is only supported on Pools with the virtualMachineConfiguration property.
        Returns:
        the publicIPAddressConfiguration value
      • withPublicIPAddressConfiguration

        public NetworkConfiguration withPublicIPAddressConfiguration​(PublicIPAddressConfiguration publicIPAddressConfiguration)
        Set public IP configuration property is only supported on Pools with the virtualMachineConfiguration property.
        Parameters:
        publicIPAddressConfiguration - the publicIPAddressConfiguration value to set
        Returns:
        the NetworkConfiguration object itself.
      • enableAcceleratedNetworking

        public Boolean enableAcceleratedNetworking()
        Get accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview.
        Returns:
        the enableAcceleratedNetworking value
      • withEnableAcceleratedNetworking

        public NetworkConfiguration withEnableAcceleratedNetworking​(Boolean enableAcceleratedNetworking)
        Set accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview.
        Parameters:
        enableAcceleratedNetworking - the enableAcceleratedNetworking value to set
        Returns:
        the NetworkConfiguration object itself.