Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.mobilenetwork.kotlin
import com.pulumi.azurenative.mobilenetwork.AttachedDataNetworkArgs.builder
import com.pulumi.azurenative.mobilenetwork.kotlin.inputs.InterfacePropertiesArgs
import com.pulumi.azurenative.mobilenetwork.kotlin.inputs.InterfacePropertiesArgsBuilder
import com.pulumi.azurenative.mobilenetwork.kotlin.inputs.NaptConfigurationArgs
import com.pulumi.azurenative.mobilenetwork.kotlin.inputs.NaptConfigurationArgsBuilder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.collections.Map
import kotlin.jvm.JvmName
/**
* Attached data network resource. Must be created in the same location as its parent packet core data plane.
* Azure REST API version: 2023-06-01. Prior API version in Azure Native 1.x: 2022-04-01-preview.
* Other available API versions: 2022-04-01-preview, 2022-11-01, 2023-09-01, 2024-02-01, 2024-04-01.
* ## Example Usage
* ### Create attached data network
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var attachedDataNetwork = new AzureNative.MobileNetwork.AttachedDataNetwork("attachedDataNetwork", new()
* {
* AttachedDataNetworkName = "TestAttachedDataNetwork",
* DnsAddresses = new[]
* {
* "1.1.1.1",
* },
* Location = "eastus",
* NaptConfiguration = new AzureNative.MobileNetwork.Inputs.NaptConfigurationArgs
* {
* Enabled = AzureNative.MobileNetwork.NaptEnabled.Enabled,
* PinholeLimits = 65536,
* PinholeTimeouts = new AzureNative.MobileNetwork.Inputs.PinholeTimeoutsArgs
* {
* Icmp = 30,
* Tcp = 180,
* Udp = 30,
* },
* PortRange = new AzureNative.MobileNetwork.Inputs.PortRangeArgs
* {
* MaxPort = 49999,
* MinPort = 1024,
* },
* PortReuseHoldTime = new AzureNative.MobileNetwork.Inputs.PortReuseHoldTimesArgs
* {
* Tcp = 120,
* Udp = 60,
* },
* },
* PacketCoreControlPlaneName = "TestPacketCoreCP",
* PacketCoreDataPlaneName = "TestPacketCoreDP",
* ResourceGroupName = "rg1",
* UserEquipmentAddressPoolPrefix = new[]
* {
* "2.2.0.0/16",
* },
* UserEquipmentStaticAddressPoolPrefix = new[]
* {
* "2.4.0.0/16",
* },
* UserPlaneDataInterface = new AzureNative.MobileNetwork.Inputs.InterfacePropertiesArgs
* {
* Name = "N6",
* },
* });
* });
* ```
* ```go
* 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.NewAttachedDataNetwork(ctx, "attachedDataNetwork", &mobilenetwork.AttachedDataNetworkArgs{
* AttachedDataNetworkName: pulumi.String("TestAttachedDataNetwork"),
* DnsAddresses: pulumi.StringArray{
* pulumi.String("1.1.1.1"),
* },
* Location: pulumi.String("eastus"),
* NaptConfiguration: &mobilenetwork.NaptConfigurationArgs{
* Enabled: pulumi.String(mobilenetwork.NaptEnabledEnabled),
* PinholeLimits: pulumi.Int(65536),
* PinholeTimeouts: &mobilenetwork.PinholeTimeoutsArgs{
* Icmp: pulumi.Int(30),
* Tcp: pulumi.Int(180),
* Udp: pulumi.Int(30),
* },
* PortRange: &mobilenetwork.PortRangeArgs{
* MaxPort: pulumi.Int(49999),
* MinPort: pulumi.Int(1024),
* },
* PortReuseHoldTime: &mobilenetwork.PortReuseHoldTimesArgs{
* Tcp: pulumi.Int(120),
* Udp: pulumi.Int(60),
* },
* },
* PacketCoreControlPlaneName: pulumi.String("TestPacketCoreCP"),
* PacketCoreDataPlaneName: pulumi.String("TestPacketCoreDP"),
* ResourceGroupName: pulumi.String("rg1"),
* UserEquipmentAddressPoolPrefix: pulumi.StringArray{
* pulumi.String("2.2.0.0/16"),
* },
* UserEquipmentStaticAddressPoolPrefix: pulumi.StringArray{
* pulumi.String("2.4.0.0/16"),
* },
* UserPlaneDataInterface: &mobilenetwork.InterfacePropertiesArgs{
* Name: pulumi.String("N6"),
* },
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.mobilenetwork.AttachedDataNetwork;
* import com.pulumi.azurenative.mobilenetwork.AttachedDataNetworkArgs;
* import com.pulumi.azurenative.mobilenetwork.inputs.NaptConfigurationArgs;
* import com.pulumi.azurenative.mobilenetwork.inputs.PinholeTimeoutsArgs;
* import com.pulumi.azurenative.mobilenetwork.inputs.PortRangeArgs;
* import com.pulumi.azurenative.mobilenetwork.inputs.PortReuseHoldTimesArgs;
* import com.pulumi.azurenative.mobilenetwork.inputs.InterfacePropertiesArgs;
* 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 attachedDataNetwork = new AttachedDataNetwork("attachedDataNetwork", AttachedDataNetworkArgs.builder()
* .attachedDataNetworkName("TestAttachedDataNetwork")
* .dnsAddresses("1.1.1.1")
* .location("eastus")
* .naptConfiguration(NaptConfigurationArgs.builder()
* .enabled("Enabled")
* .pinholeLimits(65536)
* .pinholeTimeouts(PinholeTimeoutsArgs.builder()
* .icmp(30)
* .tcp(180)
* .udp(30)
* .build())
* .portRange(PortRangeArgs.builder()
* .maxPort(49999)
* .minPort(1024)
* .build())
* .portReuseHoldTime(PortReuseHoldTimesArgs.builder()
* .tcp(120)
* .udp(60)
* .build())
* .build())
* .packetCoreControlPlaneName("TestPacketCoreCP")
* .packetCoreDataPlaneName("TestPacketCoreDP")
* .resourceGroupName("rg1")
* .userEquipmentAddressPoolPrefix("2.2.0.0/16")
* .userEquipmentStaticAddressPoolPrefix("2.4.0.0/16")
* .userPlaneDataInterface(InterfacePropertiesArgs.builder()
* .name("N6")
* .build())
* .build());
* }
* }
* ```
* ## Import
* An existing resource can be imported using its type token, name, and identifier, e.g.
* ```sh
* $ pulumi import azure-native:mobilenetwork:AttachedDataNetwork TestAttachedDataNetwork /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/{packetCoreControlPlaneName}/packetCoreDataPlanes/{packetCoreDataPlaneName}/attachedDataNetworks/{attachedDataNetworkName}
* ```
* @property attachedDataNetworkName The name of the attached data network.
* @property dnsAddresses The DNS servers to signal to UEs to use for this attached data network. This configuration is mandatory - if you don't want DNS servers, you must provide an empty array.
* @property location The geo-location where the resource lives
* @property naptConfiguration The network address and port translation (NAPT) configuration.
* If this is not specified, the attached data network will use a default NAPT configuration with NAPT enabled.
* @property packetCoreControlPlaneName The name of the packet core control plane.
* @property packetCoreDataPlaneName The name of the packet core data plane.
* @property resourceGroupName The name of the resource group. The name is case insensitive.
* @property tags Resource tags.
* @property userEquipmentAddressPoolPrefix The user equipment (UE) address pool prefixes for the attached data network from which the packet core instance will dynamically assign IP addresses to UEs.
* The packet core instance assigns an IP address to a UE when the UE sets up a PDU session.
* You must define at least one of userEquipmentAddressPoolPrefix and userEquipmentStaticAddressPoolPrefix. If you define both, they must be of the same size.
* @property userEquipmentStaticAddressPoolPrefix The user equipment (UE) address pool prefixes for the attached data network from which the packet core instance will assign static IP addresses to UEs.
* The packet core instance assigns an IP address to a UE when the UE sets up a PDU session. The static IP address for a specific UE is set in StaticIPConfiguration on the corresponding SIM resource.
* At least one of userEquipmentAddressPoolPrefix and userEquipmentStaticAddressPoolPrefix must be defined. If both are defined, they must be of the same size.
* @property userPlaneDataInterface The user plane interface on the data network. For 5G networks, this is the N6 interface. For 4G networks, this is the SGi interface.
*/
public data class AttachedDataNetworkArgs(
public val attachedDataNetworkName: Output? = null,
public val dnsAddresses: Output>? = null,
public val location: Output? = null,
public val naptConfiguration: Output? = null,
public val packetCoreControlPlaneName: Output? = null,
public val packetCoreDataPlaneName: Output? = null,
public val resourceGroupName: Output? = null,
public val tags: Output