Partilhar via


Configurar uma política de serviço e SIM usando um modelo ARM

Serviços e políticas SIM são os principais componentes do controle de política personalizável do Azure Private 5G Core, que permite fornecer tratamento flexível de tráfego. Você pode determinar exatamente como sua instância principal do pacote aplica características de qualidade de serviço (QoS) aos fluxos de dados de serviço (SDFs) para atender às necessidades da implantação. Para obter mais informações, consulte Controle de política. Neste guia de instruções, você aprenderá a usar um modelo do Azure Resource Manager (modelo ARM) para criar um serviço simples e uma política de SIM.

Um modelo do Azure Resource Manager é um arquivo JSON (JavaScript Object Notation) que define a infraestrutura e a configuração do seu projeto. O modelo utiliza sintaxe declarativa. Você descreve a implantação pretendida sem escrever a sequência de comandos de programação para criar a implantação.

Se o seu ambiente cumpre os pré-requisitos e se está familiarizado com a utilização de modelos ARM, selecione o botão Implementar no Azure. O modelo será aberto no portal do Azure.

Botão para implantar o modelo do Gerenciador de Recursos no Azure.

Pré-requisitos

  • Certifique-se de que pode iniciar sessão no portal do Azure utilizando uma conta com acesso à subscrição ativa que utilizou para criar a sua rede móvel privada. Essa conta deve ter a função interna de Colaborador ou Proprietário no escopo da assinatura.

  • Identifique o nome do recurso de Rede Móvel correspondente à sua rede móvel privada e o grupo de recursos que o contém.

  • Identifique a região do Azure na qual você implantou sua rede móvel privada.

  • Identifique o nome da fatia de rede à qual você deseja atribuir a política de SIM.

  • Identifique o nome da rede de dados à qual você deseja atribuir a nova política.

  • O modelo ARM é preenchido com valores para configurar um serviço padrão e uma política SIM que permite todo o tráfego em ambas as direções.

    Se pretender criar uma política de serviço e SIM para outra finalidade, utilize as informações em Recolher as informações necessárias para um serviço e Recolher as informações necessárias para uma política de SIM para conceber um serviço e uma política de SIM para satisfazer os seus requisitos. Você inserirá esses novos valores como parte da implantação do modelo ARM.

Rever o modelo

O modelo usado neste guia de instruções é de Modelos de Início Rápido do Azure.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "metadata": {
    "_generator": {
      "name": "bicep",
      "version": "0.27.1.19265",
      "templateHash": "12557640417910300439"
    }
  },
  "parameters": {
    "location": {
      "type": "string",
      "metadata": {
        "description": "Region where the Mobile Network will be deployed (must match the resource group region)"
      }
    },
    "existingMobileNetworkName": {
      "type": "string",
      "metadata": {
        "description": "Name of the Mobile Network to add a SIM policy to"
      }
    },
    "existingSliceName": {
      "type": "string",
      "metadata": {
        "description": "Name of the existing slice to use for the SIM policy"
      }
    },
    "existingDataNetworkName": {
      "type": "string",
      "metadata": {
        "description": "Name of the existing data network to use for the SIM policy"
      }
    },
    "serviceName": {
      "type": "string",
      "defaultValue": "Allow_all_traffic",
      "metadata": {
        "description": "The name of the service"
      }
    },
    "serviceMaximumBitRateUplink": {
      "type": "string",
      "defaultValue": "2 Gbps",
      "metadata": {
        "description": "The maximum bit rate (MBR) for uploads across all service data flows that match data flow policy rules configured on the generic service"
      }
    },
    "serviceMaximumBitRateDownlink": {
      "type": "string",
      "defaultValue": "2 Gbps",
      "metadata": {
        "description": "The maximum bit rate (MBR) for downloads across all service data flows that match data flow policy rules configured on the generic service"
      }
    },
    "servicePrecedence": {
      "type": "int",
      "defaultValue": 253,
      "minValue": 0,
      "maxValue": 255,
      "metadata": {
        "description": "The precedence value for the service being deployed."
      }
    },
    "dataFlowPolicyRuleName": {
      "type": "string",
      "defaultValue": "All_traffic",
      "metadata": {
        "description": "The name of the data flow policy rule that will be created for this service."
      }
    },
    "dataFlowPolicyRulePrecedence": {
      "type": "int",
      "defaultValue": 253,
      "minValue": 0,
      "maxValue": 255,
      "metadata": {
        "description": "The precedence value for the data flow policy rule being created."
      }
    },
    "dataFlowPolicyRuleTrafficControl": {
      "type": "string",
      "defaultValue": "Enabled",
      "allowedValues": [
        "Enabled",
        "Blocked"
      ],
      "metadata": {
        "description": "Whether flows matching this data flow policy rule are permitted or blocked."
      }
    },
    "dataFlowTemplateProtocols": {
      "type": "array",
      "defaultValue": [
        "ip"
      ],
      "metadata": {
        "description": "Which protocols match this data flow policy rule. This should be either a list of IANA protocol numbers or the special value \"ip\""
      }
    },
    "dataFlowTemplateName": {
      "type": "string",
      "defaultValue": "ip_traffic",
      "metadata": {
        "description": "The name of the data flow template that will be created for this service."
      }
    },
    "dataFlowTemplateDirection": {
      "type": "string",
      "defaultValue": "Bidirectional",
      "allowedValues": [
        "Uplink",
        "Downlink",
        "Bidirectional"
      ],
      "metadata": {
        "description": "The direction of the flow to match with this data flow policy rule."
      }
    },
    "dataFlowTemplateRemoteIps": {
      "type": "array",
      "defaultValue": [
        "any"
      ],
      "metadata": {
        "description": "The remote IP addresses that UEs will connect to for this flow. This should be either a list of IP addresses or the special value \"any\""
      }
    },
    "simPolicyName": {
      "type": "string",
      "defaultValue": "Default-policy",
      "metadata": {
        "description": "The name of the SIM policy"
      }
    },
    "totalBandwidthAllowedUplink": {
      "type": "string",
      "defaultValue": "2 Gbps",
      "metadata": {
        "description": "The UE aggregated maximum bit rate (UE-AMBR) for uploads across all non-GBR QoS flows for a particular UE"
      }
    },
    "totalBandwidthAllowedDownlink": {
      "type": "string",
      "defaultValue": "2 Gbps",
      "metadata": {
        "description": "The UE aggregated maximum bit rate (UE-AMBR) for downloads across all non-GBR QoS flows for a particular UE"
      }
    },
    "sessionAggregateMaximumBitRateUplink": {
      "type": "string",
      "defaultValue": "2 Gbps",
      "metadata": {
        "description": "The session aggregated maximum bit rate (Session-AMBR) for uploads across all non-GBR QoS flows of an individual PDU session involving a particular UE"
      }
    },
    "sessionAggregateMaximumBitRateDownlink": {
      "type": "string",
      "defaultValue": "2 Gbps",
      "metadata": {
        "description": "The session aggregated maximum bit rate (Session-AMBR) for downloads across all non-GBR QoS flows of an individual PDU session involving a particular UE"
      }
    }
  },
  "resources": [
    {
      "type": "Microsoft.MobileNetwork/mobileNetworks/services",
      "apiVersion": "2024-04-01",
      "name": "[format('{0}/{1}', parameters('existingMobileNetworkName'), parameters('serviceName'))]",
      "location": "[parameters('location')]",
      "properties": {
        "servicePrecedence": "[parameters('servicePrecedence')]",
        "serviceQosPolicy": {
          "maximumBitRate": {
            "uplink": "[parameters('serviceMaximumBitRateUplink')]",
            "downlink": "[parameters('serviceMaximumBitRateDownlink')]"
          }
        },
        "pccRules": [
          {
            "ruleName": "[parameters('dataFlowPolicyRuleName')]",
            "rulePrecedence": "[parameters('dataFlowPolicyRulePrecedence')]",
            "trafficControl": "[parameters('dataFlowPolicyRuleTrafficControl')]",
            "serviceDataFlowTemplates": [
              {
                "templateName": "[parameters('dataFlowTemplateName')]",
                "protocol": "[parameters('dataFlowTemplateProtocols')]",
                "direction": "[parameters('dataFlowTemplateDirection')]",
                "remoteIpList": "[parameters('dataFlowTemplateRemoteIps')]"
              }
            ]
          }
        ]
      }
    },
    {
      "type": "Microsoft.MobileNetwork/mobileNetworks/simPolicies",
      "apiVersion": "2024-04-01",
      "name": "[format('{0}/{1}', parameters('existingMobileNetworkName'), parameters('simPolicyName'))]",
      "location": "[parameters('location')]",
      "properties": {
        "ueAmbr": {
          "uplink": "[parameters('totalBandwidthAllowedUplink')]",
          "downlink": "[parameters('totalBandwidthAllowedDownlink')]"
        },
        "defaultSlice": {
          "id": "[resourceId('Microsoft.MobileNetwork/mobileNetworks/slices', parameters('existingMobileNetworkName'), parameters('existingSliceName'))]"
        },
        "sliceConfigurations": [
          {
            "slice": {
              "id": "[resourceId('Microsoft.MobileNetwork/mobileNetworks/slices', parameters('existingMobileNetworkName'), parameters('existingSliceName'))]"
            },
            "defaultDataNetwork": {
              "id": "[resourceId('Microsoft.MobileNetwork/mobileNetworks/dataNetworks', parameters('existingMobileNetworkName'), parameters('existingDataNetworkName'))]"
            },
            "dataNetworkConfigurations": [
              {
                "dataNetwork": {
                  "id": "[resourceId('Microsoft.MobileNetwork/mobileNetworks/dataNetworks', parameters('existingMobileNetworkName'), parameters('existingDataNetworkName'))]"
                },
                "sessionAmbr": {
                  "uplink": "[parameters('sessionAggregateMaximumBitRateUplink')]",
                  "downlink": "[parameters('sessionAggregateMaximumBitRateDownlink')]"
                },
                "allowedServices": [
                  {
                    "id": "[resourceId('Microsoft.MobileNetwork/mobileNetworks/services', parameters('existingMobileNetworkName'), parameters('serviceName'))]"
                  }
                ]
              }
            ]
          }
        ]
      },
      "dependsOn": [
        "[resourceId('Microsoft.MobileNetwork/mobileNetworks/services', parameters('existingMobileNetworkName'), parameters('serviceName'))]"
      ]
    }
  ]
}

Dois recursos do Azure são definidos no modelo.

Implementar o modelo

  1. Selecione o link a seguir para entrar no Azure e abrir um modelo.

    Botão para implantar o modelo do Gerenciador de Recursos no Azure.

  2. Selecione ou insira os seguintes valores, usando as informações recuperadas em Pré-requisitos.

    • Subscrição: selecione a subscrição do Azure que utilizou para criar a sua rede móvel privada.
    • Grupo de recursos: selecione o grupo de recursos que contém o recurso Rede Móvel que representa a sua rede móvel privada.
    • Região: selecione a região na qual você implantou a rede móvel privada.
    • Localização: insira o nome de código da região na qual você implantou a rede móvel privada.
    • Nome da Rede Móvel Existente: introduza o nome do recurso Rede Móvel que representa a sua rede móvel privada.
    • Nome da fatia existente: insira o nome do recurso Fatia que representa sua fatia de rede.
    • Nome da rede de dados existente: insira o nome da rede de dados. Esse valor deve corresponder ao nome usado ao criar a rede de dados.
  3. Se pretender utilizar o serviço predefinido e a política do SIM, deixe os campos restantes inalterados. Caso contrário, preencha os campos restantes para corresponder ao serviço e à política de SIM que você deseja configurar, usando as informações coletadas de Coletar as informações necessárias para um serviço e Coletar as informações necessárias para uma política de SIM.

  4. Selecione Rever + criar.

  5. O Azure agora validará os valores de configuração que você inseriu. Você verá uma mensagem indicando que seus valores passaram na validação.

    Se a validação falhar, você verá uma mensagem de erro e as guias Configuração contendo a configuração inválida serão sinalizadas. Selecione a(s) guia(s) sinalizada(s) e use as mensagens de erro para corrigir a configuração inválida antes de retornar à guia Revisar + criar .

  6. Depois que a configuração for validada, você poderá selecionar Criar para criar o serviço e a política do SIM. O portal do Azure exibirá uma tela de confirmação quando a implantação for concluída.

Rever os recursos implementados

  1. Na tela de confirmação, selecione Ir para o grupo de recursos.

    Captura de ecrã do portal do Azure a mostrar uma confirmação de implementação para o modelo ARM.

  2. Confirme se o serviço e a política do SIM foram criados no grupo de recursos.

    Captura de tela do portal do Azure mostrando um grupo de recursos contendo SIMs recém-provisionados.

Próximos passos

Agora você pode atribuir a política do SIM aos seus SIM para colocá-los em serviço.