إنشاء مركز إنترنت الأشياء باستخدام قالب Azure Resource Manager (PowerShell)

تعرف على كيفية استخدام قالب Azure Resource Manager لإنشاء مركز إنترنت الأشياء ومجموعة مستهلكين. قوالب «Resource Manager» هي ملفات JSON تحدد الموارد التي تحتاج إلى توزيعها للحل الخاص بك. لمزيد من المعلومات حول تطوير قوالب Resource Manager، راجع وثائق Azure Resource Manager.

إذا لم يكن لديك اشتراك في Azure، فأنشئ free account قبل البدء.

إنشاء مركز IoT

قالب Resource Manager المستخدم في هذه البداية السريعة هو من قوالب Azure Quickstart. فيما يلي نسخة من القالب:

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "iotHubName": {
      "type": "string",
      "minLength": 3,
      "metadata": {
        "description": "Specifies the name of the IoT Hub."
      }
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]",
      "metadata": {
        "description": "Location for all resources."
      }
    },
    "skuName": {
      "type": "string",
      "defaultValue": "F1",
      "metadata": {
        "description": "Specifies the IotHub SKU."
      }
    },
    "capacityUnits": {
      "type": "int",
      "minValue": 1,
      "maxValue": 1,
      "defaultValue": 1,
      "metadata": {
        "description": "Specifies the number of provisioned IoT Hub units. Restricted to 1 unit for the F1 SKU. Can be set up to maximum number allowed for subscription."
      }
    }
  },
  "variables": {
    "consumerGroupName": "[concat(parameters('iotHubName'), '/events/cg1')]"
  },
  "resources": [
    {
      "type": "Microsoft.Devices/IotHubs",
      "apiVersion": "2021-03-31",
      "name": "[parameters('iotHubName')]",
      "location": "[parameters('location')]",
      "properties": {
        "eventHubEndpoints": {
          "events": {
            "retentionTimeInDays": 1,
            "partitionCount": 2
          }
        },
        "cloudToDevice": {
          "defaultTtlAsIso8601": "PT1H",
          "maxDeliveryCount": 10,
          "feedback": {
            "ttlAsIso8601": "PT1H",
            "lockDurationAsIso8601": "PT60S",
            "maxDeliveryCount": 10
          }
        },
        "messagingEndpoints": {
          "fileNotifications": {
            "ttlAsIso8601": "PT1H",
            "lockDurationAsIso8601": "PT1M",
            "maxDeliveryCount": 10
          }
        }
      },
      "sku": {
        "name": "[parameters('skuName')]",
        "capacity": "[parameters('capacityUnits')]"
      }
    },
    {
      "type": "Microsoft.Devices/iotHubs/eventhubEndpoints/ConsumerGroups",
      "apiVersion": "2021-03-31",
      "name": "[variables('consumerGroupName')]",
      "properties": {
        "name": "cg1"
      },
      "dependsOn": [
        "[resourceId('Microsoft.Devices/IotHubs', parameters('iotHubName'))]"
      ]
    }
  ]
}

ينشئ القالب موزع Azure Iot مع ثلاث نقاط نهاية (eventhub ومن السحابة إلى الجهاز والمراسلة) ومجموعة مستهلكين. لمزيد من عينات القوالب، راجع قوالب التشغيل السريع ل Azure. يمكن العثور على مخطط قالب Iot Hub هنا.

هناك عدة طرق لنشر قالب. يمكنك استخدام Azure PowerShell في هذا البرنامج التعليمي.

لتشغيل البرنامج النصي PowerShell، حدد تجربته لفتح Azure Cloud shell. للصق البرنامج النصي، انقر بزر الماوس الأيمن فوق shell، ثم حدد لصق:

$resourceGroupName = Read-Host -Prompt "Enter the Resource Group name"
$location = Read-Host -Prompt "Enter the location (i.e. centralus)"
$iotHubName = Read-Host -Prompt "Enter the IoT Hub name"

New-AzResourceGroup -Name $resourceGroupName -Location "$location"
New-AzResourceGroupDeployment `
    -ResourceGroupName $resourceGroupName `
    -TemplateUri "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.devices/iothub-with-consumergroup-create/azuredeploy.json" `
    -iotHubName $iotHubName

كما ترون من البرنامج النصي PowerShell ، فإن القالب المستخدم هو من قوالب Azure Quickstart. لاستخدام ملف القالب الخاص بك، تحتاج أولا إلى تحميل ملف القالب إلى Cloud shell، ثم استخدام -TemplateFile مفتاح التبديل لتحديد اسم الملف. على سبيل المثال، راجع نشر القالب.

الخطوات التالية

الآن قمت بنشر مركز إنترنت الأشياء باستخدام قالب Azure Resource Manager، قد ترغب في استكشاف المزيد:

لمعرفة المزيد حول التطوير ل IoT Hub، راجع المقالات التالية:

لمزيد من استكشاف إمكانات IoT Hub، راجع: