Share via


快速入門:使用 Bicep 設定 IoT 中樞裝置佈建服務 (DPS)

您可以使用 Bicep 檔案,以程式設計方式設定佈建裝置所需的 Azure 雲端資源。 這些步驟說明如何使用 Bicep 檔案建立 IoT 中樞和新的 IoT 中樞裝置佈建服務執行個體。 IoT 中樞也會使用 Bicep 檔案連結至 DPS 資源。 此連結可讓 DPS 資源根據您設定的配置原則,將裝置指派給中樞。

Bicep 是使用宣告式語法來部署 Azure 資源的特定領域語言 (DSL)。 其提供簡潔的語法、可靠的類型安全,並支援程式碼重複使用。 Bicep 能夠為您在 Azure 中的基礎結構即程式碼解決方案,提供最佳的製作體驗。

本快速入門使用 Azure PowerShellAzure CLI 來執行建立資源群組及部署範本所需的程式設計步驟,但您可以輕鬆地 .NET、Ruby 或其他程式設計語言來執行這些步驟及部署您的 Bicep 檔案。

必要條件

如果您沒有 Azure 訂用帳戶,請在開始之前先建立 Azure 免費帳戶

檢閱 Bicep 檔案

此快速入門中使用的 Bicep 檔案是來自 Azure 快速入門範本

注意

目前沒有 Bicep 檔案支援使用新的 DPS 資源建立註冊。 這是考慮實作時常見且可理解的要求。

@description('Specify the name of the Iot hub.')
param iotHubName string

@description('Specify the name of the provisioning service.')
param provisioningServiceName string

@description('Specify the location of the resources.')
param location string = resourceGroup().location

@description('The SKU to use for the IoT Hub.')
param skuName string = 'S1'

@description('The number of IoT Hub units.')
param skuUnits int = 1

var iotHubKey = 'iothubowner'

resource iotHub 'Microsoft.Devices/IotHubs@2021-07-02' = {
  name: iotHubName
  location: location
  sku: {
    name: skuName
    capacity: skuUnits
  }
  properties: {}
}

resource provisioningService 'Microsoft.Devices/provisioningServices@2022-02-05' = {
  name: provisioningServiceName
  location: location
  sku: {
    name: skuName
    capacity: skuUnits
  }
  properties: {
    iotHubs: [
      {
        connectionString: 'HostName=${iotHub.properties.hostName};SharedAccessKeyName=${iotHubKey};SharedAccessKey=${iotHub.listkeys().value[0].primaryKey}'
        location: location
      }
    ]
  }
}

以上 Bicep 檔案中定義了兩個 Azure 資源:

在本機上將 Bicep 檔案的複本儲存為 main.bicep

部署 Bicep 檔案

登入您的 Azure 帳戶並選取您的訂用帳戶。

  1. 在命令提示字元登入 Azure:

    az login
    

    依照指示使用程式碼進行驗證,並透過網頁瀏覽器登入 Azure 帳戶。

  2. 如果您有多個 Azure 訂用帳戶,則登入 Azure 會授予您所有與認證相關聯之 Azure 帳戶的存取權。

    az account list -o table
    

    使用下列命令,選取您想要用來執行命令以建立 IoT 中樞和 DPS 資源的訂用帳戶。 您可以使用來自上一個命令之輸出內的訂用帳戶名稱或識別碼︰

    az account set --subscription {your subscription name or id}
    
  3. 使用下列命令來部署 Bicep 檔案。

    提示

    命令會提示您輸入資源群組位置。 請先執行下列命令,以便檢視可用位置清單:

    az account list-locations -o table

    az group create --name exampleRG --location eastus
    az deployment group create --resource-group exampleRG --template-file main.bicep --parameters iotHubName={IoT-Hub-name} provisioningServiceName={DPS-name}
    

    {IoT-Hub-name} 取代為全域唯一的 IoT 中樞名稱,將 {DPS-name} 取代為全域唯一的裝置佈建服務 (DPS) 資源名稱。

    建立資源需要一些時間。

檢閱已部署的資源

  1. 若要驗證部署,請執行下列命令,並在輸出中尋找新的佈建服務和 IoT 中樞:

     az resource list -g exampleRg
    
  2. 若要驗證中樞已連結至 DPS 資源,請執行下列命令。

    az iot dps show --name <Your provisioningServiceName>
    

清除資源

此集合中的其他快速入門會以本快速入門為基礎。 如果您打算繼續進行後續的快速入門或教學課程,請勿清除在此快速入門中建立的資源。 如果您不打算繼續,可以使用 Azure PowerShell 或 Azure CLI 刪除資源群組及其所有資源。

若要從 Azure 入口網站刪除資源群組及其資源,只要開啟資源群組,然後選取頂端的 [刪除資源群組]

若要刪除已部署的資源群組:

az group delete --name exampleRG

您也可以使用 Azure 入口網站、PowerShell 或 REST API,或使用支援的平台 SDK 來刪除資源群組和個別資源。

下一步

在本快速入門中,您已部署 IoT 中樞和裝置佈建服務執行個體,並已連結這兩個資源。 若要了解如何使用這項設定來佈建裝置,請繼續進行建立裝置的快速入門。