NetworkProfile [SPFSDK][VMROLE]
Applies To: Windows Azure Pack
The NetworkProfile object specifies one or more virtual network adapters that should be attached to the virtual machine. It specifies what network each adapter should be attached to and provides an array with the IP addresses. The IP addresses can be configured for the appropriate protocol and for its allocation method to be static or dynamic.
Five simple subobject types are included in this topic:
NetworkAdapter
IPAddress
LoadBalancerConfiguration
PortConfig
Probe
Type Hierarchy
VirtualMachineRole (Instance) [SPFSDK][VMROLE].ResourceDefinition [SPFSDK][VMROLE]. IntrinsicSettings [SPFSDK][VMROLE].NetworkProfile
Syntax
{
"NetworkAdapters": [
{
"Name": "string",
"NetworkRef": "string",
"IPAddresses": [
{
"ConfigurationName": "string",
"Type": "IPv4 or IPv6",
"AllocationMethod": "Static or Dynamic",
"LoadBalancerConfigurations": [
{
"ConfigurationName": "string",
"FrontEndNetwork": "string",
"PortConfig": {
"Name": "string",
"Protocol": "HTTP or HTTPS",
"FrontEndPort": int,
"BackEndPort": int
},
"Probe": {
"MaxRetryCount": int,
"Port": int,
"ProbeIntervalInSeconds": int,
"Protocol": "TCP, HTTP, or HTTPS",
"RequestPath": "string",
}
}
] // LoadBalancerConfigurations
}
] //IPAddresses
}
]
}
Properties
Name |
Type |
Required |
Default value |
Description |
---|---|---|---|---|
NetworkAdapters |
Array of NetworkAdapter |
Yes |
None |
The network adapters. |
NetworkAdapter
Name |
Type |
Required |
Default Value |
Description |
---|---|---|---|---|
Name |
String |
Yes |
None |
The name of the adapter. |
NetworkRef |
String |
Yes |
None |
The name of the external network to attach the network adapter to. |
IPAddresses |
Array of IPAddress |
Yes |
None |
The IP addresses that are associated with the network adapter. |
IPAddress
Name |
Type |
Required |
Default Value |
Description |
---|---|---|---|---|
ConfigurationName |
String |
Yes |
None |
The unique identification of this specific IP address configuration. |
Type |
String |
Yes |
None |
The IP protocol to be either IPv4 or IPv6. |
AllocationMethod |
String |
Yes |
None |
The IP address to be either Static or Dynamic. |
LoadBalancerConfigurations |
Array of LoadBalancerConfiguration |
No |
null |
The load balancer requirements for this IP address configuration. |
LoadBalancerConfiguration
Name |
Type |
Required |
Default value |
Description |
---|---|---|---|---|
ConfigurationName |
String |
Yes |
None |
The unique identification of this specific load balancer configuration. |
FrontEndNetwork |
String |
Yes |
None |
The network name for the front-end network of the load balancer. |
PortConfig |
PortConfig |
Yes |
None |
The configuration of the load balancer access port. |
Probe |
Probe |
Yes |
None |
The configuration on how to probe the load balancer. |
PortConfig
Name |
Type |
Required |
Default value |
Description |
---|---|---|---|---|
Name |
String |
Yes |
None |
The unique identification of this port configuration. |
Protocol |
String |
Yes |
None |
The load balancer protocol to be either HTTP or HTTPS. |
FrontEndPort |
Int |
Yes |
None |
The virtual IP (VIP) port number. |
BackEndPort |
Int |
Yes |
None |
The dynamic IP (DIP) port number. |
Probe
Name |
Type |
Required |
Default value |
Description |
---|---|---|---|---|
MaxRetryCount |
Int |
Yes |
None |
The maximum retry count for incoming requests. |
Port |
Int |
Yes |
None |
The port on which the load balancer probe operates. |
ProbeIntervalInSeconds |
Int |
Yes |
None |
The interval between probes in seconds. |
Protocol |
String |
Yes |
None |
The protocol for the probe to be either TCP, HTTP, or HTTPS. The probe must return 200 for HTTP and HTTPS, and must return ACK for TCP. |
RequestPath |
String |
Yes |
None |
The request path for the probe. |
Remarks
The following code example provides a sample NetworkProfile object with a network adapter and IP address.
{
"NetworkAdapters": [
{
"Name": "myNic1",
"NetworkRef": "External",
"IPAddresses": [
{
"ConfigurationName": "MyIPConfiguration",
"Type": "IPv4",
"AllocationMethod": "Static",
"LoadBalancerConfigurations": [
{
"ConfigurationName": "MyLBConfiguration",
"FrontEndNetwork": "internet",
"PortConfig": {
"Name": "MyPortConfig",
"Protocol": "HTTP",
"FrontEndPort": 80,
"BackEndPort": 8080
},
"Probe": {
"MaxRetryCount": 5,
"Port": 8080,
"ProbeIntervalInSeconds": 20,
"Protocol": "HTTP",
"RequestPath": "http://myrequest",
}
}
] // LoadBalancerConfigurations
}
] //IPAddresses
}
]
}
See Also
IntrinsicSettings [SPFSDK][VMROLE]
StorageProfile [SPFSDK][VMROLE]
OperatingSystemProfile [SPFSDK][VMROLE]