Network Fabric Args
The NetworkFabric resource definition. Uses Azure REST API version 2023-02-01-preview. In version 1.x of the Azure Native provider, it used API version 2023-02-01-preview. Other available API versions: 2023-06-15.
Example Usage
NetworkFabrics_Create_MaximumSet_Gen
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var networkFabric = new AzureNative.ManagedNetworkFabric.NetworkFabric("networkFabric", new()
{
Annotation = "annotationValue",
FabricASN = 29249,
Ipv4Prefix = "10.18.0.0/19",
Ipv6Prefix = "3FFE:FFFF:0:CD40::/59",
Location = "eastuseuap",
ManagementNetworkConfiguration = new AzureNative.ManagedNetworkFabric.Inputs.ManagementNetworkConfigurationArgs
{
InfrastructureVpnConfiguration = new AzureNative.ManagedNetworkFabric.Inputs.VpnConfigurationPropertiesArgs
{
OptionAProperties = new AzureNative.ManagedNetworkFabric.Inputs.OptionAPropertiesArgs
{
Mtu = 5892,
PeerASN = 42666,
PrimaryIpv4Prefix = "20.0.0.12/30",
PrimaryIpv6Prefix = "3FFE:FFFF:0:CD30::a8/126",
SecondaryIpv4Prefix = "20.0.0.13/30",
SecondaryIpv6Prefix = "3FFE:FFFF:0:CD30::ac/126",
VlanId = 2724,
},
OptionBProperties = new AzureNative.ManagedNetworkFabric.Inputs.FabricOptionBPropertiesArgs
{
ExportRouteTargets = new[]
{
"65046:10039",
},
ImportRouteTargets = new[]
{
"65046:10039",
},
},
PeeringOption = AzureNative.ManagedNetworkFabric.PeeringOption.OptionA,
},
WorkloadVpnConfiguration = new AzureNative.ManagedNetworkFabric.Inputs.VpnConfigurationPropertiesArgs
{
OptionAProperties = new AzureNative.ManagedNetworkFabric.Inputs.OptionAPropertiesArgs
{
Mtu = 5892,
PeerASN = 42666,
PrimaryIpv4Prefix = "10.0.0.14/30",
PrimaryIpv6Prefix = "2FFE:FFFF:0:CD30::a7/126",
SecondaryIpv4Prefix = "10.0.0.15/30",
SecondaryIpv6Prefix = "2FFE:FFFF:0:CD30::ac/126",
VlanId = 2724,
},
OptionBProperties = new AzureNative.ManagedNetworkFabric.Inputs.FabricOptionBPropertiesArgs
{
ExportRouteTargets = new[]
{
"65046:10050",
},
ImportRouteTargets = new[]
{
"65046:10050",
},
},
PeeringOption = AzureNative.ManagedNetworkFabric.PeeringOption.OptionA,
},
},
NetworkFabricControllerId = "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/fabricControllerName",
NetworkFabricName = "FabricName",
NetworkFabricSku = "M4-A400-A100-C16-aa",
RackCount = 4,
ResourceGroupName = "resourceGroupName",
ServerCountPerRack = 8,
Tags =
{
{ "key6468", "" },
},
TerminalServerConfiguration = new AzureNative.ManagedNetworkFabric.Inputs.TerminalServerConfigurationArgs
{
Password = "xxxx",
PrimaryIpv4Prefix = "20.0.0.12/30",
PrimaryIpv6Prefix = "3FFE:FFFF:0:CD30::a8/126",
SecondaryIpv4Prefix = "20.0.0.13/30",
SecondaryIpv6Prefix = "3FFE:FFFF:0:CD30::ac/126",
SerialNumber = "123456",
Username = "username",
},
});
});
package main
import (
managednetworkfabric "github.com/pulumi/pulumi-azure-native-sdk/managednetworkfabric/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := managednetworkfabric.NewNetworkFabric(ctx, "networkFabric", &managednetworkfabric.NetworkFabricArgs{
Annotation: pulumi.String("annotationValue"),
FabricASN: pulumi.Int(29249),
Ipv4Prefix: pulumi.String("10.18.0.0/19"),
Ipv6Prefix: pulumi.String("3FFE:FFFF:0:CD40::/59"),
Location: pulumi.String("eastuseuap"),
ManagementNetworkConfiguration: &managednetworkfabric.ManagementNetworkConfigurationArgs{
InfrastructureVpnConfiguration: &managednetworkfabric.VpnConfigurationPropertiesArgs{
OptionAProperties: &managednetworkfabric.OptionAPropertiesArgs{
Mtu: pulumi.Int(5892),
PeerASN: pulumi.Int(42666),
PrimaryIpv4Prefix: pulumi.String("20.0.0.12/30"),
PrimaryIpv6Prefix: pulumi.String("3FFE:FFFF:0:CD30::a8/126"),
SecondaryIpv4Prefix: pulumi.String("20.0.0.13/30"),
SecondaryIpv6Prefix: pulumi.String("3FFE:FFFF:0:CD30::ac/126"),
VlanId: pulumi.Int(2724),
},
OptionBProperties: &managednetworkfabric.FabricOptionBPropertiesArgs{
ExportRouteTargets: pulumi.StringArray{
pulumi.String("65046:10039"),
},
ImportRouteTargets: pulumi.StringArray{
pulumi.String("65046:10039"),
},
},
PeeringOption: pulumi.String(managednetworkfabric.PeeringOptionOptionA),
},
WorkloadVpnConfiguration: &managednetworkfabric.VpnConfigurationPropertiesArgs{
OptionAProperties: &managednetworkfabric.OptionAPropertiesArgs{
Mtu: pulumi.Int(5892),
PeerASN: pulumi.Int(42666),
PrimaryIpv4Prefix: pulumi.String("10.0.0.14/30"),
PrimaryIpv6Prefix: pulumi.String("2FFE:FFFF:0:CD30::a7/126"),
SecondaryIpv4Prefix: pulumi.String("10.0.0.15/30"),
SecondaryIpv6Prefix: pulumi.String("2FFE:FFFF:0:CD30::ac/126"),
VlanId: pulumi.Int(2724),
},
OptionBProperties: &managednetworkfabric.FabricOptionBPropertiesArgs{
ExportRouteTargets: pulumi.StringArray{
pulumi.String("65046:10050"),
},
ImportRouteTargets: pulumi.StringArray{
pulumi.String("65046:10050"),
},
},
PeeringOption: pulumi.String(managednetworkfabric.PeeringOptionOptionA),
},
},
NetworkFabricControllerId: pulumi.String("/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/fabricControllerName"),
NetworkFabricName: pulumi.String("FabricName"),
NetworkFabricSku: pulumi.String("M4-A400-A100-C16-aa"),
RackCount: pulumi.Int(4),
ResourceGroupName: pulumi.String("resourceGroupName"),
ServerCountPerRack: pulumi.Int(8),
Tags: pulumi.StringMap{
"key6468": pulumi.String(""),
},
TerminalServerConfiguration: &managednetworkfabric.TerminalServerConfigurationArgs{
Password: pulumi.String("xxxx"),
PrimaryIpv4Prefix: pulumi.String("20.0.0.12/30"),
PrimaryIpv6Prefix: pulumi.String("3FFE:FFFF:0:CD30::a8/126"),
SecondaryIpv4Prefix: pulumi.String("20.0.0.13/30"),
SecondaryIpv6Prefix: pulumi.String("3FFE:FFFF:0:CD30::ac/126"),
SerialNumber: pulumi.String("123456"),
Username: pulumi.String("username"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.managednetworkfabric.NetworkFabric;
import com.pulumi.azurenative.managednetworkfabric.NetworkFabricArgs;
import com.pulumi.azurenative.managednetworkfabric.inputs.ManagementNetworkConfigurationArgs;
import com.pulumi.azurenative.managednetworkfabric.inputs.VpnConfigurationPropertiesArgs;
import com.pulumi.azurenative.managednetworkfabric.inputs.OptionAPropertiesArgs;
import com.pulumi.azurenative.managednetworkfabric.inputs.FabricOptionBPropertiesArgs;
import com.pulumi.azurenative.managednetworkfabric.inputs.TerminalServerConfigurationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var networkFabric = new NetworkFabric("networkFabric", NetworkFabricArgs.builder()
.annotation("annotationValue")
.fabricASN(29249)
.ipv4Prefix("10.18.0.0/19")
.ipv6Prefix("3FFE:FFFF:0:CD40::/59")
.location("eastuseuap")
.managementNetworkConfiguration(ManagementNetworkConfigurationArgs.builder()
.infrastructureVpnConfiguration(VpnConfigurationPropertiesArgs.builder()
.optionAProperties(OptionAPropertiesArgs.builder()
.mtu(5892)
.peerASN(42666)
.primaryIpv4Prefix("20.0.0.12/30")
.primaryIpv6Prefix("3FFE:FFFF:0:CD30::a8/126")
.secondaryIpv4Prefix("20.0.0.13/30")
.secondaryIpv6Prefix("3FFE:FFFF:0:CD30::ac/126")
.vlanId(2724)
.build())
.optionBProperties(FabricOptionBPropertiesArgs.builder()
.exportRouteTargets("65046:10039")
.importRouteTargets("65046:10039")
.build())
.peeringOption("OptionA")
.build())
.workloadVpnConfiguration(VpnConfigurationPropertiesArgs.builder()
.optionAProperties(OptionAPropertiesArgs.builder()
.mtu(5892)
.peerASN(42666)
.primaryIpv4Prefix("10.0.0.14/30")
.primaryIpv6Prefix("2FFE:FFFF:0:CD30::a7/126")
.secondaryIpv4Prefix("10.0.0.15/30")
.secondaryIpv6Prefix("2FFE:FFFF:0:CD30::ac/126")
.vlanId(2724)
.build())
.optionBProperties(FabricOptionBPropertiesArgs.builder()
.exportRouteTargets("65046:10050")
.importRouteTargets("65046:10050")
.build())
.peeringOption("OptionA")
.build())
.build())
.networkFabricControllerId("/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/fabricControllerName")
.networkFabricName("FabricName")
.networkFabricSku("M4-A400-A100-C16-aa")
.rackCount(4)
.resourceGroupName("resourceGroupName")
.serverCountPerRack(8)
.tags(Map.of("key6468", ""))
.terminalServerConfiguration(TerminalServerConfigurationArgs.builder()
.password("xxxx")
.primaryIpv4Prefix("20.0.0.12/30")
.primaryIpv6Prefix("3FFE:FFFF:0:CD30::a8/126")
.secondaryIpv4Prefix("20.0.0.13/30")
.secondaryIpv6Prefix("3FFE:FFFF:0:CD30::ac/126")
.serialNumber("123456")
.username("username")
.build())
.build());
}
}
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:managednetworkfabric:NetworkFabric FabricName /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedNetworkFabric/networkFabrics/{networkFabricName}
Constructors
Properties
Switch configuration description.
IPv4Prefix for Management Network. Example: 10.1.0.0/19.
IPv6Prefix for Management Network. Example: 3FFE:FFFF:0:CD40::/59.
Configuration to be used to setup the management network.
Azure resource ID for the NetworkFabricController the NetworkFabric belongs.
Name of the Network Fabric
Supported Network Fabric SKU.Example: Compute / Aggregate racks. Once the user chooses a particular SKU, only supported racks can be added to the Network Fabric. The SKU determines whether it is a single / multi rack Network Fabric.
The name of the resource group. The name is case insensitive.
Number of servers.Possible values are from 1-16.
Network and credentials configuration currently applied to terminal server.