Packet Core Control Plane Args
Packet core control plane resource. Uses Azure REST API version 2024-04-01. In version 2.x of the Azure Native provider, it used API version 2023-06-01. Other available API versions: 2022-04-01-preview, 2022-11-01, 2023-06-01, 2023-09-01, 2024-02-01. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native mobilenetwork [ApiVersion]
. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.
Example Usage
Create packet core control plane
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var packetCoreControlPlane = new AzureNative.MobileNetwork.PacketCoreControlPlane("packetCoreControlPlane", new()
{
ControlPlaneAccessInterface = new AzureNative.MobileNetwork.Inputs.InterfacePropertiesArgs
{
Name = "N2",
},
CoreNetworkTechnology = AzureNative.MobileNetwork.CoreNetworkType.CoreNetworkType_5GC,
EventHub = new AzureNative.MobileNetwork.Inputs.EventHubConfigurationArgs
{
Id = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/contosoNamespace/eventHubs/contosoHub",
ReportingInterval = 60,
},
Installation = new AzureNative.MobileNetwork.Inputs.InstallationArgs
{
DesiredState = AzureNative.MobileNetwork.DesiredInstallationState.Installed,
},
LocalDiagnosticsAccess = new AzureNative.MobileNetwork.Inputs.LocalDiagnosticsAccessConfigurationArgs
{
AuthenticationType = AzureNative.MobileNetwork.AuthenticationType.AAD,
HttpsServerCertificate = new AzureNative.MobileNetwork.Inputs.HttpsServerCertificateArgs
{
CertificateUrl = "https://contosovault.vault.azure.net/certificates/ingress",
},
},
Location = "eastus",
PacketCoreControlPlaneName = "TestPacketCoreCP",
Platform = new AzureNative.MobileNetwork.Inputs.PlatformConfigurationArgs
{
AzureStackEdgeDevice = new AzureNative.MobileNetwork.Inputs.AzureStackEdgeDeviceResourceIdArgs
{
Id = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/TestAzureStackEdgeDevice",
},
ConnectedCluster = new AzureNative.MobileNetwork.Inputs.ConnectedClusterResourceIdArgs
{
Id = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/TestConnectedCluster",
},
CustomLocation = new AzureNative.MobileNetwork.Inputs.CustomLocationResourceIdArgs
{
Id = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ExtendedLocation/customLocations/TestCustomLocation",
},
Type = AzureNative.MobileNetwork.PlatformType.AKS_HCI,
},
ResourceGroupName = "rg1",
Signaling = new AzureNative.MobileNetwork.Inputs.SignalingConfigurationArgs
{
NasEncryption = new[]
{
AzureNative.MobileNetwork.NasEncryptionType.NEA2_EEA2,
AzureNative.MobileNetwork.NasEncryptionType.NEA1_EEA1,
AzureNative.MobileNetwork.NasEncryptionType.NEA0_EEA0,
},
NasReroute = new AzureNative.MobileNetwork.Inputs.NASRerouteConfigurationArgs
{
MacroMmeGroupId = 1024,
},
},
Sites = new[]
{
new AzureNative.MobileNetwork.Inputs.SiteResourceIdArgs
{
Id = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.MobileNetwork/mobileNetworks/testMobileNetwork/sites/testSite",
},
},
Sku = AzureNative.MobileNetwork.BillingSku.G0,
UeMtu = 1600,
Version = "0.2.0",
});
});
package main
import (
mobilenetwork "github.com/pulumi/pulumi-azure-native-sdk/mobilenetwork/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := mobilenetwork.NewPacketCoreControlPlane(ctx, "packetCoreControlPlane", &mobilenetwork.PacketCoreControlPlaneArgs{
ControlPlaneAccessInterface: &mobilenetwork.InterfacePropertiesArgs{
Name: pulumi.String("N2"),
},
CoreNetworkTechnology: pulumi.String(mobilenetwork.CoreNetworkType_5GC),
EventHub: &mobilenetwork.EventHubConfigurationArgs{
Id: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/contosoNamespace/eventHubs/contosoHub"),
ReportingInterval: pulumi.Int(60),
},
Installation: &mobilenetwork.InstallationArgs{
DesiredState: pulumi.String(mobilenetwork.DesiredInstallationStateInstalled),
},
LocalDiagnosticsAccess: &mobilenetwork.LocalDiagnosticsAccessConfigurationArgs{
AuthenticationType: pulumi.String(mobilenetwork.AuthenticationTypeAAD),
HttpsServerCertificate: &mobilenetwork.HttpsServerCertificateArgs{
CertificateUrl: pulumi.String("https://contosovault.vault.azure.net/certificates/ingress"),
},
},
Location: pulumi.String("eastus"),
PacketCoreControlPlaneName: pulumi.String("TestPacketCoreCP"),
Platform: &mobilenetwork.PlatformConfigurationArgs{
AzureStackEdgeDevice: &mobilenetwork.AzureStackEdgeDeviceResourceIdArgs{
Id: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/TestAzureStackEdgeDevice"),
},
ConnectedCluster: &mobilenetwork.ConnectedClusterResourceIdArgs{
Id: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/TestConnectedCluster"),
},
CustomLocation: &mobilenetwork.CustomLocationResourceIdArgs{
Id: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ExtendedLocation/customLocations/TestCustomLocation"),
},
Type: pulumi.String(mobilenetwork.PlatformType_AKS_HCI),
},
ResourceGroupName: pulumi.String("rg1"),
Signaling: &mobilenetwork.SignalingConfigurationArgs{
NasEncryption: pulumi.StringArray{
pulumi.String(mobilenetwork.NasEncryptionType_NEA2_EEA2),
pulumi.String(mobilenetwork.NasEncryptionType_NEA1_EEA1),
pulumi.String(mobilenetwork.NasEncryptionType_NEA0_EEA0),
},
NasReroute: &mobilenetwork.NASRerouteConfigurationArgs{
MacroMmeGroupId: pulumi.Int(1024),
},
},
Sites: mobilenetwork.SiteResourceIdArray{
&mobilenetwork.SiteResourceIdArgs{
Id: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.MobileNetwork/mobileNetworks/testMobileNetwork/sites/testSite"),
},
},
Sku: pulumi.String(mobilenetwork.BillingSkuG0),
UeMtu: pulumi.Int(1600),
Version: pulumi.String("0.2.0"),
})
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.mobilenetwork.PacketCoreControlPlane;
import com.pulumi.azurenative.mobilenetwork.PacketCoreControlPlaneArgs;
import com.pulumi.azurenative.mobilenetwork.inputs.InterfacePropertiesArgs;
import com.pulumi.azurenative.mobilenetwork.inputs.EventHubConfigurationArgs;
import com.pulumi.azurenative.mobilenetwork.inputs.InstallationArgs;
import com.pulumi.azurenative.mobilenetwork.inputs.LocalDiagnosticsAccessConfigurationArgs;
import com.pulumi.azurenative.mobilenetwork.inputs.HttpsServerCertificateArgs;
import com.pulumi.azurenative.mobilenetwork.inputs.PlatformConfigurationArgs;
import com.pulumi.azurenative.mobilenetwork.inputs.AzureStackEdgeDeviceResourceIdArgs;
import com.pulumi.azurenative.mobilenetwork.inputs.ConnectedClusterResourceIdArgs;
import com.pulumi.azurenative.mobilenetwork.inputs.CustomLocationResourceIdArgs;
import com.pulumi.azurenative.mobilenetwork.inputs.SignalingConfigurationArgs;
import com.pulumi.azurenative.mobilenetwork.inputs.NASRerouteConfigurationArgs;
import com.pulumi.azurenative.mobilenetwork.inputs.SiteResourceIdArgs;
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 packetCoreControlPlane = new PacketCoreControlPlane("packetCoreControlPlane", PacketCoreControlPlaneArgs.builder()
.controlPlaneAccessInterface(InterfacePropertiesArgs.builder()
.name("N2")
.build())
.coreNetworkTechnology("5GC")
.eventHub(EventHubConfigurationArgs.builder()
.id("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/contosoNamespace/eventHubs/contosoHub")
.reportingInterval(60)
.build())
.installation(InstallationArgs.builder()
.desiredState("Installed")
.build())
.localDiagnosticsAccess(LocalDiagnosticsAccessConfigurationArgs.builder()
.authenticationType("AAD")
.httpsServerCertificate(HttpsServerCertificateArgs.builder()
.certificateUrl("https://contosovault.vault.azure.net/certificates/ingress")
.build())
.build())
.location("eastus")
.packetCoreControlPlaneName("TestPacketCoreCP")
.platform(PlatformConfigurationArgs.builder()
.azureStackEdgeDevice(AzureStackEdgeDeviceResourceIdArgs.builder()
.id("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/TestAzureStackEdgeDevice")
.build())
.connectedCluster(ConnectedClusterResourceIdArgs.builder()
.id("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/TestConnectedCluster")
.build())
.customLocation(CustomLocationResourceIdArgs.builder()
.id("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ExtendedLocation/customLocations/TestCustomLocation")
.build())
.type("AKS-HCI")
.build())
.resourceGroupName("rg1")
.signaling(SignalingConfigurationArgs.builder()
.nasEncryption(
"NEA2/EEA2",
"NEA1/EEA1",
"NEA0/EEA0")
.nasReroute(NASRerouteConfigurationArgs.builder()
.macroMmeGroupId(1024)
.build())
.build())
.sites(SiteResourceIdArgs.builder()
.id("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.MobileNetwork/mobileNetworks/testMobileNetwork/sites/testSite")
.build())
.sku("G0")
.ueMtu(1600)
.version("0.2.0")
.build());
}
}
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:mobilenetwork:PacketCoreControlPlane TestPacketCoreCP /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/{packetCoreControlPlaneName}
Constructors
Properties
The control plane interface on the access network. For 5G networks, this is the N2 interface. For 4G networks, this is the S1-MME interface.
The virtual IP address(es) for the control plane on the access network in a High Availability (HA) system. In an HA deployment the access network router should be configured to anycast traffic for this address to the control plane access interfaces on the active and standby nodes. In non-HA system this list should be omitted or empty.
The core network technology generation (5G core or EPC / 4G core).
Configuration for uploading packet core diagnostics
Configuration for sending packet core events to an Azure Event Hub.
The identity used to retrieve the ingress certificate from Azure key vault.
The installation state of the packet core control plane resource.
Settings to allow interoperability with third party components e.g. RANs and UEs.
The kubernetes ingress configuration to control access to packet core diagnostics over local APIs.
The name of the packet core control plane.
The platform where the packet core is deployed.
The name of the resource group. The name is case insensitive.
Signaling configuration for the packet core.
Site(s) under which this packet core control plane should be deployed. The sites must be in the same location as the packet core control plane.
The SKU defining the throughput and SIM allowances for this packet core control plane deployment.
The user consent configuration for the packet core.