次の方法で共有


Azure Private 5G Core の新しい SIM をプロビジョニングする - ARM テンプレート

SIM リソースは、プライベート モバイル ネットワークによって提供されるユーザー機器 (UE) によって使用される物理 SIM または eSIM のことです。 この攻略ガイドでは、Azure Resource Manager テンプレート (ARM テンプレート) を使用して既存のプライベート モバイル ネットワーク用に新しい SIM をプロビジョニングする方法について説明します。

Azure Resource Manager テンプレートは JavaScript Object Notation (JSON) ファイルであり、プロジェクトのインフラストラクチャと構成が定義されています。 このテンプレートでは、宣言型の構文が使用されています。 デプロイしようとしているものを、デプロイを作成する一連のプログラミング コマンドを記述しなくても記述できます。

環境が前提条件を満たしていて、ARM テンプレートの使用に慣れている場合は、 [Azure へのデプロイ] ボタンを選択します。 Azure portal でテンプレートが開きます。

Resource Manager テンプレートを Azure に配置するボタン。

前提条件

  • プライベート モバイル ネットワークをデプロイするために必要なタスクを完了する」で識別したアクティブ サブスクリプションへのアクセス権があるアカウントを使用して Azure portal にサインインできることを確認してください。 このアカウントには、サブスクリプション スコープでの組み込み共同作成者ロールが必要です。
  • プライベート モバイル ネットワークとそれを含むリソース グループに対応するモバイル ネットワーク リソースの名前を識別します。
  • プライベート モバイル ネットワークをデプロイした Azure リージョンを特定します。
  • SIM を追加する新しい SIM グループの名前を選択します。
  • プロビジョニングする SIM に割り当てる SIM ポリシーを特定します。 この SIM ポリシーは、「SIM ポリシーの構成 - Azure portal」の手順に従って事前に作成しておく必要があります。

SIM に必要な情報を収集する

最初に、プロビジョニングする SIM ごとに次の表の値を収集します。

パラメーター名
SIM 名。 SIM 名に使用できるのは、英数字、ダッシュ、アンダースコアだけです。 simName
IC カード識別番号 (ICCID)。 ICCID は特定の物理 SIM または eSIM を識別するもので、SIM の国/地域および発行者に関する情報が含まれます。 ICCID は、省略可能な、89 から始まる 19 から 20 桁の一意の数値です。 integratedCircuitCardIdentifier
国際携帯機器加入者識別番号 (IMSI)。 IMSI は、モバイル ネットワーク内のデバイスまたはユーザーを識別する一意の番号 (通常は 15 桁) です。 internationalMobileSubscriberIdentity
認証キー (Ki)。 Ki は、オペレーターによって SIM に割り当てられた一意の 128 ビット値です。ユーザーを認証するために、生成されたオペレーター コード (OPc) と一緒に使用されます。 これは、16 進数の文字のみを含む 32 文字列でなければなりません。 authenticationKey
生成されたオペレーターコード (OPc)。 OPc は、SIM の Ki とネットワークのオペレーター コード (OP) から取得されます。 パケット コア インスタンスはそれを使用して、標準ベースのアルゴリズムを使用してユーザーを認証します。 OPc は、16 進数の文字のみを含む 32 文字列でなければなりません。 operatorKeyCode
この SIM を使用しているデバイスの種類。 この値は、省略可能な自由形式の文字列です。 これを必要に応じて使用して、企業のプライベート モバイル ネットワークを使用しているデバイスの種類を簡単に識別できます。 deviceType
SIM に割り当てる SIM ポリシー。 これは省略可能ですが、SIM ポリシーが割り当てられていないと、SIM はプライベート モバイル ネットワークを使用できません。 simPolicyId

静的 IP アドレスを割り当てるために必要な情報を収集する

この手順を完了する必要があるのは、次のすべてが該当する場合のみです。

  • 1 つ以上の JSON 配列を使用して、SIM をプロビジョニングしています。
  • パケット コア インスタンスの静的 IP アドレス割り当てを構成した。
  • SIM プロビジョニング中に静的 IP アドレスを SIM に割り当てる必要がある。

プロビジョニングする SIM ごとに次の表の値を収集します。 プライベート モバイル ネットワーク内に複数のデータ ネットワークがあり、各データ ネットワークの異なる静的 IP アドレスをこの SIM に割り当てる必要がある場合は、各 IP アドレスの値を収集します。

データ ネットワーク値を収集する」で説明されているように、各 IP アドレスは、関連するデータ ネットワークを作成するときに静的 IP アドレスの割り当てのために割り当てたプールのものである必要があります。 詳しくは、「ユーザー機器 (UE) の IP アドレス プールを割り当てる」をご覧ください。

Value Azure portal でのフィールド名 JSON パラメータ名
SIM によって使用されるデータ ネットワーク。 該当なし。 staticIpConfiguration.attachedDataNetworkId
SIM によって使用されるネットワーク スライス。 該当なし。 staticIpConfiguration.sliceId
SIM に割り当てる静的 IP アドレス。 該当なし。 staticIpConfiguration.staticIpAddress

SIM 用に 1 つ以上の JSON 配列を準備する

SIM に必要な情報を収集する」で収集した情報を使用して、プロビジョニングする最大 1000 個の SIM のプロパティを含む 1 つ以上の JSON 配列を作成します。 2 つの SIM (SIM1SIM2) のプロパティを含む配列の例を次に示します。

SIM ポリシーまたは静的 IP アドレスを今すぐ割り当てない場合は、simPolicy および/または staticIpConfiguration パラメータを削除できます。

Note

API 要求本文の最大サイズは 4 MB です。 この制限を超えないようにするには、入力する SIM の数を JSON 配列あたり最大 1,000 個とすることをお勧めします。 1,000 個を超える SIM をプロビジョニングする場合は、複数の配列を作成し、それぞれに対してプロビジョニング プロセスを繰り返します。 または、Azure portal を使用して、JSON ファイルごとに最大 10,000 個の SIM をプロビジョニングすることもできます。

[
 {
  "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"
	}
   ]
 }
]

テンプレートを確認する

このクイックスタートで使用されるテンプレートは 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'))]"
    }
  ]
}

このテンプレートには、次の Azure リソースが定義されています。

テンプレートのデプロイ

  1. Azure にサインインして、テンプレートを開くには、次のリンクを選択します。

    Resource Manager テンプレートを Azure にデプロイするボタン。

  2. 前提条件」で取得した情報を使用して、次の値を選択または入力します。

    • [サブスクリプション]: プライベート モバイル ネットワークの作成に必要な Azure サブスクリプションを選択します。
    • [リソース グループ]: プライベート モバイル ネットワークを表すモバイル ネットワーク リソースを含むリソース グループを選択します。
    • リージョン: プライベート モバイル ネットワークをデプロイしたリージョンを選択します。
    • 場所: プライベート モバイル ネットワークをデプロイしたリージョンのコード名を入力します。
    • [Existing Mobile Network Name]\(既存のモバイル ネットワーク名\): プライベート モバイル ネットワークを表すモバイル ネットワーク リソースの名前を入力します。
    • [Existing Sim Policy Name](既存の SIM ポリシー名): SIM に割り当てる SIM ポリシーの名前を入力します。
    • [Sim Group Name](SIM グループ名): 新しい SIM グループの名前を入力します。
    • SIM リソース:SIM 用に 1 つ以上の配列を準備する」で準備した JSON 配列の 1 つを貼り付けます。

    SIM の ARM テンプレートの構成フィールドが表示されている Azure portal のスクリーンショット。

  3. [Review + create](レビュー + 作成) を選択します。

  4. これで、入力した構成値が Azure によって検証されます。 値が検証に合格したことを示すメッセージが表示されます。

    検証に失敗した場合、エラー メッセージが表示され、無効な構成が含まれる [構成] タブにフラグが付きます。 [確認と作成] タブに戻る前に、フラグが付加されたタブを選択し、エラー メッセージを使用して無効な構成を修正してください。

  5. 構成が検証されたら、[作成] を選択して SIM をプロビジョニングできます。 SIM がプロビジョニングされると、Azure portal に確認画面が表示されます。

  6. 1000 個 を超える SIM をプロビジョニングする場合は、JSON 配列ごとにこのプロセスを繰り返します。

デプロイされているリソースを確認する

  1. [リソース グループに移動] を選択します。

    Azure portal のスクリーンショット。ARM テンプレートのデプロイの確認が表示されています。

  2. SIM グループ リソースがリソース グループに作成されていることを確認します。

    新しく作成された SIM グループを含むリソース グループが表示されている Azure portal のスクリーンショット。

  3. SIM グループ リソースを選択し、すべての SIM が正しくプロビジョニングされていることを確認します。

    SIM を含む SIM グループ リソースが表示されている Azure portal のスクリーンショット。

次のステップ