azurermMobileNetworkService
Manages a Mobile Network Service.
Example Usage
/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as azurerm from "./.gen/providers/azurerm";
/*The following providers are missing schema information and might need manual adjustments to synthesize correctly: azurerm.
For a more precise conversion please use the --provider flag in convert.*/
const azurermResourceGroupExample = new azurerm.resourceGroup.ResourceGroup(
this,
"example",
{
location: "east us",
name: "example-resources",
}
);
const azurermMobileNetworkExample = new azurerm.mobileNetwork.MobileNetwork(
this,
"example_1",
{
location: azurermResourceGroupExample.location,
mobile_country_code: "001",
mobile_network_code: "01",
name: "example-mn",
resource_group_name: "${azurerm_resource_group.test.name}",
}
);
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermMobileNetworkExample.overrideLogicalId("example");
const azurermMobileNetworkServiceExample =
new azurerm.mobileNetworkService.MobileNetworkService(this, "example_2", {
location: azurermResourceGroupExample.location,
mobile_network_id: azurermMobileNetworkExample.id,
name: "example-mns",
pcc_rule: [
{
name: "default-rule",
precedence: 1,
qos_policy: [
{
allocation_and_retention_priority_level: 9,
guaranteed_bit_rate: [
{
downlink: "100 Mbps",
uplink: "10 Mbps",
},
],
maximum_bit_rate: [
{
downlink: "1 Gbps",
uplink: "100 Mbps",
},
],
preemption_capability: "NotPreempt",
preemption_vulnerability: "Preemptable",
qos_indicator: 9,
},
],
service_data_flow_template: [
{
direction: "Uplink",
name: "IP-to-server",
ports: [],
protocol: ["ip"],
remote_ip_list: ["10.3.4.0/24"],
},
],
traffic_control_enabled: true,
},
],
service_precedence: 0,
service_qos_policy: [
{
allocation_and_retention_priority_level: 9,
maximum_bit_rate: [
{
downlink: "1 Gbps",
uplink: "100 Mbps",
},
],
preemption_capability: "NotPreempt",
preemption_vulnerability: "Preemptable",
qos_indicator: 9,
},
],
tags: {
key: "value",
},
});
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
azurermMobileNetworkServiceExample.overrideLogicalId("example");
Arguments Reference
The following arguments are supported:
-
name
- (Required) Specifies the name which should be used for this Mobile Network Service. Changing this forces a new Mobile Network Service to be created. -
mobileNetworkId
- (Required) Specifies the ID of the Mobile Network Service. Changing this forces a new Mobile Network Service to be created. -
location
- (Required) Specifies the Azure Region where the Mobile Network Service should exist. Changing this forces a new Mobile Network Service to be created. -
servicePrecedence
- (Required) A precedence value that is used to decide between services when identifying the QoS values to use for a particular SIM. A lower value means a higher priority. This value should be unique among all services configured in the mobile network. Must be between0
and255
. -
pccRule
- (Required) ApccRule
block as defined below. The set of PCC Rules that make up this service. -
serviceQosPolicy
- (Optional) AserviceQosPolicy
block as defined below. The QoS policy to use for packets matching this service. This can be overridden for particular flows using the ruleQosPolicy field in apccRule
. If this field is not specified then thesimPolicy
of User Equipment (UE) will define the QoS settings. -
tags
- (Optional) A mapping of tags which should be assigned to the Mobile Network Service.
A pccRule
block supports the following:
-
name
- (Required) Specifies the name of the rule. This must be unique within the parent service. You must not use any of the following reserved strings -default
,requested
orservice
. -
precedence
- (Required) A precedence value that is used to decide between data flow policy rules when identifying the QoS values to use for a particular SIM. A lower value means a higher priority. This value should be unique among all data flow policy rules configured in the mobile network. Must be between0
and255
. -
qosPolicy
- (Optional) AqosPolicy
block as defined below. The QoS policy to use for packets matching this rule. If this field is not specified then the Service will define the QoS settings. -
serviceDataFlowTemplate
- (Required) AserviceDataFlowTemplate
block as defined below. The set of service data flow templates to use for this PCC rule. -
trafficControlEnabled
- (Optional) Determines whether flows that match this data flow policy rule are permitted. Defaults totrue
.
A qosPolicy
block supports the following:
-
allocationAndRetentionPriorityLevel
- (Optional) QoS Flow allocation and retention priority (ARP) level. Flows with higher priority preempt flows with lower priority, if the settings ofpreemptionCapability
andpreemptionVulnerability
allow it. 1 is the highest level of priority. If this field is not specified thenqosIndicator
is used to derive the ARP value. Defaults to9
. See 3GPP TS23.501 section 5.7.2.2 for a full description of the ARP parameters. -
qosIndicator
- (Optional) The QoS Indicator (5QI for 5G network /QCI for 4G net work) value identifies a set of QoS characteristics that control QoS forwarding treatment for QoS flows or EPS bearers. Recommended values: 5-9; 69-70; 79-80. Must be between1
and127
. Defaults to9
. -
guaranteedBitRate
- (Optional) AguaranteedBitRate
block as defined below. The Guaranteed Bit Rate (GBR) for all service data flows that use this PCC Rule. If it's not specified, there will be no GBR set for the PCC Rule that uses this QoS definition. -
maximumBitRate
- (Required) AmaximumBitRate
block as defined below. The Maximum Bit Rate (MBR) for all service data flows that use this PCC Rule or Service. -
preemptionCapability
- (Optional) The Preemption Capability of a QoS Flow controls whether it can preempt another QoS Flow with a lower priority level. See 3GPP TS23.501 section 5.7.2.2 for a full description of the ARP parameters. Possible values arenotPreempt
andmayPreempt
, Defaults tonotPreempt
. -
preemptionVulnerability
- (Optional) The Preemption Vulnerability of a QoS Flow controls whether it can be preempted by QoS Flow with a higher priority level. See 3GPP TS23.501 section 5.7.2.2 for a full description of the ARP parameters. Possible values arenotPreemptable
andpreemptable
. Defaults topreemptable
.
A guaranteedBitRate
block supports the following:
-
downlink
- (Required) Downlink bit rate. Must be a number followed bykbps
,mbps
,gbps
ortbps
. -
uplink
- (Required) Uplink bit rate. Must be a number followed bykbps
,mbps
,gbps
ortbps
.
A serviceDataFlowTemplate
block supports the following:
-
name
- (Required) Specifies the name of the data flow template. This must be unique within the parent data flow policy rule. You must not use any of the following reserved strings -default
,requested
orservice
. -
direction
- (Required) Specifies the direction of this flow. Possible values areuplink
,downlink
andbidirectional
. -
protocol
- (Required) A list of the allowed protocol(s) for this flow. If you want this flow to be able to use any protocol within the internet protocol suite, use the valueip
. If you only want to allow a selection of protocols, you must use the corresponding IANA Assigned Internet Protocol Number for each protocol, as described in https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml. For example, for UDP, you must use 17. If you use the valueip
then you must leave the fieldport
unspecified. -
remoteIpList
- (Required) Specifies the remote IP address(es) to which UEs will connect for this flow. If you want to allow connections on any IP address, use the valueany
. Otherwise, you must provide each of the remote IP addresses to which the packet core instance will connect for this flow. You must provide each IP address in CIDR notation, including the netmask (for example,1920254/24
). -
ports
- (Optional) The port(s) to which UEs will connect for this flow. You can specify zero or more ports or port ranges. If you specify one or more ports or port ranges then you must specify a value other thanip
in theprotocol
field. If it is not specified then connections will be allowed on all ports. Port ranges must be specified as- . For example: [ 8080
,80828085
].
A serviceQosPolicy
block supports the following:
-
allocationAndRetentionPriorityLevel
- (Optional) QoS Flow allocation and retention priority (ARP) level. Flows with higher priority preempt flows with lower priority, if the settings ofpreemptionCapability
andpreemptionVulnerability
allow it. 1 is the highest level of priority. If this field is not specified thenqosIndicator
is used to derive the ARP value. Defaults to9
. See 3GPP TS23.501 section 5.7.2.2 for a full description of the ARP parameters. -
qosIndicator
- (Optional) The QoS Indicator (5QI for 5G network /QCI for 4G net work) value identifies a set of QoS characteristics that control QoS forwarding treatment for QoS flows or EPS bearers. Recommended values: 5-9; 69-70; 79-80. Must be between1
and127
. Defaults to9
. -
maximumBitRate
- (Required) AmaximumBitRate
block as defined below. The Maximum Bit Rate (MBR) for all service data flows that use this PCC Rule or Service. -
preemptionCapability
- (Optional) The Preemption Capability of a QoS Flow controls whether it can preempt another QoS Flow with a lower priority level. See 3GPP TS23.501 section 5.7.2.2 for a full description of the ARP parameters. Possible values arenotPreempt
andmayPreempt
, Defaults tonotPreempt
. -
preemptionVulnerability
- (Optional) The Preemption Vulnerability of a QoS Flow controls whether it can be preempted by QoS Flow with a higher priority level. See 3GPP TS23.501 section 5.7.2.2 for a full description of the ARP parameters. Possible values arenotPreemptable
andpreemptable
. Defaults topreemptable
.
A maximumBitRate
block supports the following:
-
downlink
- (Required) Downlink bit rate. Must be a number followed bybps
,kbps
,mbps
,gbps
ortbps
. -
uplink
- (Required) Uplink bit rate. Must be a number followed bybps
,kbps
,mbps
,gbps
ortbps
.
Attributes Reference
In addition to the Arguments listed above - the following Attributes are exported:
id
- The ID of the Mobile Network Service.
Timeouts
The timeouts
block allows you to specify timeouts for certain actions:
create
- (Defaults to 180 minutes) Used when creating the Mobile Network Service.read
- (Defaults to 5 minutes) Used when retrieving the Mobile Network Service.update
- (Defaults to 180 minutes) Used when updating the Mobile Network Service.delete
- (Defaults to 180 minutes) Used when deleting the Mobile Network Service.
Import
Mobile Network Service can be imported using the resourceId
, e.g.