Network Fabric Controller
The Network Fabric Controller resource definition. Uses Azure REST API version 2023-06-15. In version 2.x of the Azure Native provider, it used API version 2023-02-01-preview. Other available API versions: 2023-02-01-preview. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native managednetworkfabric [ApiVersion]
. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.
Example Usage
NetworkFabricControllers_Create_MaximumSet_Gen
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var networkFabricController = new AzureNative.ManagedNetworkFabric.NetworkFabricController("networkFabricController", new()
{
Annotation = "annotation",
InfrastructureExpressRouteConnections = new[]
{
new AzureNative.ManagedNetworkFabric.Inputs.ExpressRouteConnectionInformationArgs
{
ExpressRouteAuthorizationKey = "1234ABCD-0A1B-1234-5678-123456ABCDEF",
ExpressRouteCircuitId = "/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuitName",
},
},
Ipv4AddressSpace = "172.253.0.0/19",
Ipv6AddressSpace = "::/60",
IsWorkloadManagementNetworkEnabled = AzureNative.ManagedNetworkFabric.IsWorkloadManagementNetworkEnabled.True,
Location = "eastus",
ManagedResourceGroupConfiguration = new AzureNative.ManagedNetworkFabric.Inputs.ManagedResourceGroupConfigurationArgs
{
Location = "eastus",
Name = "managedResourceGroupName",
},
NetworkFabricControllerName = "example-networkController",
NfcSku = AzureNative.ManagedNetworkFabric.NfcSku.Standard,
ResourceGroupName = "example-rg",
WorkloadExpressRouteConnections = new[]
{
new AzureNative.ManagedNetworkFabric.Inputs.ExpressRouteConnectionInformationArgs
{
ExpressRouteAuthorizationKey = "xxxxx",
ExpressRouteCircuitId = "/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuitName",
},
},
});
});
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.NewNetworkFabricController(ctx, "networkFabricController", &managednetworkfabric.NetworkFabricControllerArgs{
Annotation: pulumi.String("annotation"),
InfrastructureExpressRouteConnections: managednetworkfabric.ExpressRouteConnectionInformationArray{
&managednetworkfabric.ExpressRouteConnectionInformationArgs{
ExpressRouteAuthorizationKey: pulumi.String("1234ABCD-0A1B-1234-5678-123456ABCDEF"),
ExpressRouteCircuitId: pulumi.String("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuitName"),
},
},
Ipv4AddressSpace: pulumi.String("172.253.0.0/19"),
Ipv6AddressSpace: pulumi.String("::/60"),
IsWorkloadManagementNetworkEnabled: pulumi.String(managednetworkfabric.IsWorkloadManagementNetworkEnabledTrue),
Location: pulumi.String("eastus"),
ManagedResourceGroupConfiguration: &managednetworkfabric.ManagedResourceGroupConfigurationArgs{
Location: pulumi.String("eastus"),
Name: pulumi.String("managedResourceGroupName"),
},
NetworkFabricControllerName: pulumi.String("example-networkController"),
NfcSku: pulumi.String(managednetworkfabric.NfcSkuStandard),
ResourceGroupName: pulumi.String("example-rg"),
WorkloadExpressRouteConnections: managednetworkfabric.ExpressRouteConnectionInformationArray{
&managednetworkfabric.ExpressRouteConnectionInformationArgs{
ExpressRouteAuthorizationKey: pulumi.String("xxxxx"),
ExpressRouteCircuitId: pulumi.String("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuitName"),
},
},
})
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.NetworkFabricController;
import com.pulumi.azurenative.managednetworkfabric.NetworkFabricControllerArgs;
import com.pulumi.azurenative.managednetworkfabric.inputs.ExpressRouteConnectionInformationArgs;
import com.pulumi.azurenative.managednetworkfabric.inputs.ManagedResourceGroupConfigurationArgs;
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 networkFabricController = new NetworkFabricController("networkFabricController", NetworkFabricControllerArgs.builder()
.annotation("annotation")
.infrastructureExpressRouteConnections(ExpressRouteConnectionInformationArgs.builder()
.expressRouteAuthorizationKey("1234ABCD-0A1B-1234-5678-123456ABCDEF")
.expressRouteCircuitId("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuitName")
.build())
.ipv4AddressSpace("172.253.0.0/19")
.ipv6AddressSpace("::/60")
.isWorkloadManagementNetworkEnabled("True")
.location("eastus")
.managedResourceGroupConfiguration(ManagedResourceGroupConfigurationArgs.builder()
.location("eastus")
.name("managedResourceGroupName")
.build())
.networkFabricControllerName("example-networkController")
.nfcSku("Standard")
.resourceGroupName("example-rg")
.workloadExpressRouteConnections(ExpressRouteConnectionInformationArgs.builder()
.expressRouteAuthorizationKey("xxxxx")
.expressRouteCircuitId("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuitName")
.build())
.build());
}
}
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:managednetworkfabric:NetworkFabricController example-networkController /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/{networkFabricControllerName}
Properties
Switch configuration description.
The Azure API version of the resource.
As part of an update, the Infrastructure ExpressRoute CircuitID should be provided to create and Provision a NFC. This Express route is dedicated for Infrastructure services. (This is a Mandatory attribute)
InfrastructureServices IP ranges.
IPv4 Network Fabric Controller Address Space.
IPv6 Network Fabric Controller Address Space.
A workload management network is required for all the tenant (workload) traffic. This traffic is only dedicated for Tenant workloads which are required to access internet or any other MSFT/Public endpoints.
Managed Resource Group configuration properties.
The NF-ID will be an input parameter used by the NF to link and get associated with the parent NFC Service.
Provides you the latest status of the NFC service, whether it is Accepted, updating, Succeeded or Failed. During this process, the states keep changing based on the status of NFC provisioning.
Azure Resource Manager metadata containing createdBy and modifiedBy information.
List of tenant InternetGateway resource IDs
As part of an update, the workload ExpressRoute CircuitID should be provided to create and Provision a NFC. This Express route is dedicated for Workload services. (This is a Mandatory attribute).
A workload management network is required for all the tenant (workload) traffic. This traffic is only dedicated for Tenant workloads which are required to access internet or any other MSFT/Public endpoints. This is used for the backward compatibility.
WorkloadServices IP ranges.