Compartilhar via


Provisionar novos SIMs para Azure Private 5G Core – Modelo do ARM

Os recursos do SIM representam SIMs físicos ou eSIMs usados por UEs (equipamentos de usuário) atendidos pela rede móvel privada. Neste guia de instruções, você aprenderá a provisionar novos SIMs para uma rede móvel privada existente usando um modelo do ARM.

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 usa a sintaxe declarativa. Você descreve a implantação pretendida sem escrever a sequência de comandos de programação para criar a implantação.

Se seu ambiente atender aos pré-requisitos e você estiver familiarizado com o uso de modelos ARM, selecione o botão Implantar no Azure. O modelo será aberto no portal do Azure.

Botão para implantar o modelo do Resource Manager no Azure.

Pré-requisitos

  • Verifique se você pode entrar no portal do Azure usando uma conta com acesso à assinatura ativa identificada em Concluir as tarefas de pré-requisito para implantar uma rede móvel privada. Essa conta precisa ter a função interna Colaborador no escopo da assinatura.
  • Identifique o nome do recurso de Rede Móvel correspondente à rede móvel privada e ao grupo de recursos que ele pertence.
  • Identifique a região do Azure na qual você implantou sua rede móvel privada.
  • Escolha um nome para o novo grupo SIM ao qual os SIMs serão adicionados.
  • Identifique a política SIM que você deseja atribuir aos SIMs que está provisionando. Você já deve ter criado as políticas SIM usando as instruções em Configurar uma política SIM – portal do Azure.

Coletar as informações necessárias para os SIMs

Para começar, colete os valores na tabela a seguir para cada SIM que você deseja provisionar.

Valor Nome do parâmetro
Nome do SIM. O nome do SIM deve conter apenas caracteres alfanuméricos, traços e sublinhados. simName
O ICCID (Número de Identificação do Cartão de Circuito Integrado). O ICCID identifica um SIM ou eSIM físico específico e inclui informações sobre o país/região e o emissor do SIM. O ICCID é opcional e é um valor numérico exclusivo com 19 a 20 dígitos, começando com 89. integratedCircuitCardIdentifier
A IMSI (Identidade do Assinante Móvel Internacional). A IMSI é um número exclusivo (geralmente de 15 dígitos) que identifica um dispositivo ou usuário em uma rede móvel. internationalMobileSubscriberIdentity
A Ki (Chave de Autenticação). A Ki é um valor de 128 bits exclusivo atribuído ao SIM por um operador e é usado com o código de operador derivado (OPc) para autenticar um usuário. Deve ser uma cadeia de 32 caracteres, contendo apenas caracteres hexadecimais. authenticationKey
O OPc (código do operador) derivado. O OPc é tirado da Ki do SIM e do OPc (código do operador) da rede. A instância de núcleo de pacotes usa esse código para autenticar um usuário com um algoritmo baseado em padrões. O OPc deve ser uma cadeia de 32 caracteres, contendo apenas caracteres hexadecimais. operatorKeyCode
O tipo de dispositivo que usa esse SIM. Esse valor é uma cadeia de caracteres de forma livre opcional. Você pode usá-lo conforme necessário para identificar facilmente os tipos de dispositivos que usam as redes móveis privadas da empresa. deviceType
A política do SIM a ser atribuída ao SIM. Isso é opcional, mas os SIMs não poderão usar a rede móvel privada sem uma política SIM atribuída. simPolicyId

Coletar as informações necessárias para atribuir endereços IP estáticos

Você só precisará concluir esta etapa se todas as seguintes se aplicarem:

  • Você está usando uma ou mais matrizes JSON para provisionar seus SIMs.
  • Você configurou a alocação de endereço IP estático para suas instâncias principais de pacotes.
  • Você deseja atribuir endereços IP estáticos aos SIMs durante o provisionamento do SIM.

Colete os valores na tabela a seguir para cada SIM que você deseja provisionar. Se sua rede móvel particular tiver várias redes de dados e você deseja atribuir um endereço IP estático diferente para cada rede de dados a este SIM, colete os valores para cada endereço IP.

Cada endereço IP deve ser derivado do pool atribuído para alocação de endereço IP estático ao criar a rede de dados relevante, conforme descrito em Coletar valores de rede de dados. Para obter mais informações, consulte Alocar pools de endereços IP do UE (Equipamento de Usuário).

Valor Nome do campo no portal do Azure Nome do parâmetro JSON
A rede de dados que o SIM usará. Não aplicável. staticIpConfiguration.attachedDataNetworkId
A fatia de rede que o SIM usará. Não aplicável. staticIpConfiguration.sliceId
O endereço IP estático a ser atribuído ao SIM. Não aplicável. staticIpConfiguration.staticIpAddress

Preparar uma ou mais matrizes JSON para seus SIMs

Use as informações coletadas em Coletar as informações necessárias para seus SIMs para criar uma ou mais matrizes JSON que contenha propriedades para até 1.000 SIMs que você quer provisionar. Veja a seguir um exemplo de uma matriz que contém as propriedades de dois SIMs (SIM1 e SIM2).

Se você não quiser atribuir uma política SIM ou um endereço de IP estático agora, poderá excluir simPolicy e/ou os parâmetros staticIpConfiguration.

Observação

O tamanho máximo do corpo da solicitação da API é 4 MB. Recomendamos inserir um máximo de 1.000 SIMs por matriz JSON para permanecer abaixo desse limite. Se você quiser provisionar mais de 1.000 SIMs, crie vários arrays e repita o processo de provisionamento para cada um. Como alternativa, você pode usar o portal do Azure para provisionar até 10.000 SIMs por arquivo JSON.

[
 {
  "simName": "SIM1",
  "integratedCircuitCardIdentifier": "8912345678901234566",
  "internationalMobileSubscriberIdentity": "001019990010001",
  "authenticationKey": "00112233445566778899AABBCCDDEEFF",
  "operatorKeyCode": "63bfa50ee6523365ff14c1f45f88737d",
  "deviceType": "Cellphone",
  "simPolicyId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/simPolicies/SimPolicy1",
  "staticIpConfiguration" :[
	{
	  "attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn1",
	  "sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
	  "staticIpAddress": "10.132.124.54"
	},
    {
	  "attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn2",
	  "sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
	  "staticIpAddress": "10.132.124.55"
	}
   ]
 },
 {
  "simName": "SIM2",
  "integratedCircuitCardIdentifier": "8922345678901234567",
  "internationalMobileSubscriberIdentity": "001019990010002",
  "authenticationKey": "11112233445566778899AABBCCDDEEFF",
  "operatorKeyCode": "63bfa50ee6523365ff14c1f45f88738d",
  "deviceType": "Sensor",
  "simPolicyId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/simPolicies/SimPolicy2",
  "staticIpConfiguration" :[
	{
	  "attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn1",
	  "sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
	  "staticIpAddress": "10.132.124.54"
	},
	{
	  "attachedDataNetworkId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/packetCoreControlPlanes/site-1/packetCoreDataPlanes/site-1/attachedDataNetworks/adn2",
	  "sliceId": "/subscriptions/subid/resourceGroups/contoso-rg/providers/Microsoft.MobileNetwork/mobileNetworks/contoso-network/slices/slice-1",
	  "staticIpAddress": "10.132.124.55"
	}
   ]
 }
]

Examinar o modelo

O modelo usado neste início rápido é proveniente dos 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": "7026271350043138477"
    }
  },
  "parameters": {
    "location": {
      "type": "string",
      "metadata": {
        "description": "Region where the SIM group will be deployed (must match the resource group region)."
      }
    },
    "existingMobileNetworkName": {
      "type": "string",
      "metadata": {
        "description": "The name of the mobile network to which you are adding the SIM group."
      }
    },
    "existingSimPolicyName": {
      "type": "string",
      "metadata": {
        "description": "The name of the SIM policy to be assigned to the SIM(s)."
      }
    },
    "simGroupName": {
      "type": "string",
      "metadata": {
        "description": "The name for the SIM group."
      }
    },
    "existingEncryptionKeyUrl": {
      "type": "string",
      "defaultValue": "",
      "metadata": {
        "description": "A unversioned key vault key to encrypt the SIM data that belongs to this SIM group. For example: https://contosovault.vault.azure.net/keys/azureKey."
      }
    },
    "existingUserAssignedIdentityResourceId": {
      "type": "string",
      "defaultValue": "",
      "metadata": {
        "description": "User-assigned identity is an identity in Azure Active Directory that can be used to give access to other Azure resource such as Azure Key Vault. This identity should have Get, Wrap key, and Unwrap key permissions on the key vault."
      }
    },
    "simResources": {
      "type": "array",
      "metadata": {
        "description": "An array containing properties of the SIM(s) you wish to create. See [Provision proxy SIM(s)](https://docs.microsoft.com/en-gb/azure/private-5g-core/provision-sims-azure-portal) for a full description of the required properties and their format."
      }
    }
  },
  "resources": [
    {
      "copy": {
        "name": "exampleSimResources",
        "count": "[length(parameters('simResources'))]"
      },
      "type": "Microsoft.MobileNetwork/simGroups/sims",
      "apiVersion": "2024-04-01",
      "name": "[format('{0}/{1}', parameters('simGroupName'), parameters('simResources')[copyIndex()].simName)]",
      "properties": {
        "integratedCircuitCardIdentifier": "[parameters('simResources')[copyIndex()].integratedCircuitCardIdentifier]",
        "internationalMobileSubscriberIdentity": "[parameters('simResources')[copyIndex()].internationalMobileSubscriberIdentity]",
        "authenticationKey": "[parameters('simResources')[copyIndex()].authenticationKey]",
        "operatorKeyCode": "[parameters('simResources')[copyIndex()].operatorKeyCode]",
        "deviceType": "[parameters('simResources')[copyIndex()].deviceType]",
        "simPolicy": {
          "id": "[resourceId('Microsoft.MobileNetwork/mobileNetworks/simPolicies', parameters('existingMobileNetworkName'), parameters('existingSimPolicyName'))]"
        }
      },
      "dependsOn": [
        "[resourceId('Microsoft.MobileNetwork/simGroups', parameters('simGroupName'))]"
      ]
    },
    {
      "type": "Microsoft.MobileNetwork/simGroups",
      "apiVersion": "2024-04-01",
      "name": "[parameters('simGroupName')]",
      "location": "[parameters('location')]",
      "properties": {
        "mobileNetwork": {
          "id": "[resourceId('Microsoft.MobileNetwork/mobileNetworks', parameters('existingMobileNetworkName'))]"
        },
        "encryptionKey": {
          "keyUrl": "[parameters('existingEncryptionKeyUrl')]"
        }
      },
      "identity": "[if(not(empty(parameters('existingUserAssignedIdentityResourceId'))), createObject('type', 'UserAssigned', 'userAssignedIdentities', createObject(format('{0}', parameters('existingUserAssignedIdentityResourceId')), createObject())), createObject('type', 'None'))]"
    }
  ]
}

Os seguintes recursos do Azure estão definidos no modelo.

Implantar o modelo

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

    Botão para implantar o modelo do Resource Manager no Azure.

  2. Selecione ou insira os valores a seguir usando as informações recuperadas nos Pré-requisitos.

    • Assinatura: selecione a assinatura do Azure usada para criar a rede móvel privada.
    • Grupo de recursos: selecione o grupo de recursos que contém o recurso de Rede Móvel que representa a rede móvel privada.
    • Região: selecione a região na qual você implantou a rede móvel particular.
    • Localização: digite o codinome da região na qual você implantou a rede móvel privada.
    • Nome da Rede Móvel existente: insira o nome do recurso de Rede Móvel que representa a rede móvel privada.
    • Nome da Política SIM existente: insira o nome da política SIM que você deseja atribuir aos SIMs.
    • Nome do Grupo Sim: insira o nome do novo grupo SIM.
    • Recursos Sim: colar em uma das matrizes JSON que você preparou em Preparar uma ou mais matrizes JSON para seus SIMs.

    Captura de tela do portal do Azure mostrando os campos de configuração para o modelo do ARM dos SIMs.

  3. Selecione Examinar + criar.

  4. O Azure validará os valores de configuração inseridos. Você deverá ver uma mensagem indicando que seus valores foram aprovados na validação.

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

  5. Após a configuração ser validada, você poderá selecionar a opção Criar para provisionar os SIMs. O portal do Azure exibirá uma tela de confirmação quando os SIMs forem provisionados.

  6. Se você estiver provisionando mais de 1.000 SIMs, repita esse processo em cada uma das suas matrizes JSON.

Examinar os recursos implantados

  1. Selecione Ir para grupo de recursos.

    Captura de tela do portal do Azure mostrando uma confirmação de implantação do modelo do ARM.

  2. Confirme se o recurso grupo SIM foi criado no grupo de recursos.

    Captura de tela do portal do Azure mostrando um grupo de recursos que contém um grupo SIM recém-criado.

  3. Selecione o recurso grupo SIM e confirme se todos os SIMs foram provisionados corretamente.

    Captura de tela do portal do Azure mostrando um recurso de grupo SIM que contém os SIMs.

Próximas etapas