Bagikan melalui


Mulai Cepat: Menyiapkan IoT Hub Device Provisioning Service (DPS) dengan Bicep

Anda dapat menggunakan file Bicep untuk menyiapkan sumber daya cloud Azure yang diperlukan secara terprogram untuk menyediakan perangkat Anda. Langkah-langkah ini menunjukkan cara membuat hub IoT dan instans IoT Hub Device Provisioning Service baru dengan file Bicep. IoT Hub juga ditautkan ke sumber daya DPS menggunakan file Bicep. Penautan ini mengizinkan sumber daya DPS untuk menetapkan perangkat ke hub berdasarkan kebijakan alokasi yang Anda konfigurasikan.

Bicep adalah bahasa pemrogram khusus domain (DSL) yang menggunakan sintaks deklaratif untuk menyebarkan sumber daya Azure. Bicep menyediakan sintaks ringkas, keamanan jenis yang andal, dan dukungan untuk penggunaan kembali kode. Bicep menawarkan pengalaman penulisan terbaik untuk solusi infrastructure-as-code di Azure.

Mulai cepat ini menggunakan Azure PowerShell, dan Azure CLI untuk melakukan langkah-langkah terprogram yang diperlukan untuk membuat grup sumber daya dan menyebarkan file Bicep, tetapi Anda dapat dengan mudah menggunakan .NET, Ruby, atau bahasa pemrograman lainnya untuk melakukan langkah-langkah ini dan menyebarkan file Bicep Anda.

Prasyarat

Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.

Tinjau file Bicep

File Bicep yang digunakan dalam mulai cepat berasal dari Templat Mulai Cepat Azure.

Catatan

Saat ini tidak ada dukungan file Bicep untuk membuat pendaftaran dengan sumber daya DPS baru. Ini adalah permintaan umum dan dipahami yang sedang dipertimbangkan untuk implementasi.

@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
      }
    ]
  }
}

Dua sumber daya Azure didefinisikan dalam file Bicep di atas:

Simpan salinan file Bicep secara lokal sebagai main.bicep.

Menerapkan file Bicep

Masuklah ke akun Azure Anda dan pilih langganan Anda.

  1. Masuk ke Azure di prompt perintah:

    az login
    

    Ikuti instruksinya untuk mengautentikasi menggunakan kode dan masuk ke akun Azure Anda melalui browser web.

  2. Jika Anda memiliki beberapa langganan Azure, maka masuk ke Azure akan memberi Anda akses ke semua akun Azure yang terkait dengan informasi masuk Anda.

    az account list -o table
    

    Gunakan perintah berikut untuk memilih langganan yang ingin Anda gunakan untuk menjalankan perintah untuk membuat hub IoT dan sumber daya DPS Anda. Anda dapat menggunakan nama atau ID langganan dari output perintah sebelumnya:

    az account set --subscription {your subscription name or id}
    
  3. Sebarkan file Bicep dengan perintah berikut.

    Tip

    Perintah akan meminta lokasi grup sumber daya. Anda dapat menampilkan daftar lokasi yang tersedia dengan menjalankan perintah terlebih dahulu:

    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}
    

    Ganti {IoT-Hub-name} dengan nama IoT Hub yang unik secara global, ganti {DPS-name} dengan nama sumber daya Device Provisioning Service (DPS) yang unik secara global.

    Pembuatan sumber daya memerlukan waktu beberapa menit.

Meninjau sumber daya yang disebarkan

  1. Untuk memverifikasi penyebaran, jalankan perintah berikut dan cari layanan provisi baru dan hub IoT dalam output:

     az resource list -g exampleRg
    
  2. Untuk memverifikasi bahwa hub sudah ditautkan ke sumber daya DPS, jalankan perintah berikut.

    az iot dps show --name <Your provisioningServiceName>
    

Membersihkan sumber daya

Panduan mulai cepat yang lain dalam koleksi ini dibangun berdasarkan panduan mulai cepat ini. Jika Anda berencana untuk terus bekerja dengan mulai cepat berikutnya atau dengan tutorial, jangan bersihkan sumber daya yang dibuat dalam mulai cepat ini. Jika Anda tidak berencana untuk melanjutkan, Anda dapat menggunakan Azure PowerShell atau Azure CLI untuk menghapus grup sumber daya dan semua sumber dayanya.

Untuk menghapus grup sumber daya dan semua sumber dayanya dari portal Azure, cukup buka grup sumber daya dan pilih Hapus grup sumber daya dan bagian atas.

Untuk menghapus grup sumber daya yang disebarkan:

az group delete --name exampleRG

Anda juga dapat menghapus grup sumber daya dan sumber daya individual menggunakan portal Azure, PowerShell, atau REST API, atau dengan SDK platform yang didukung.

Langkah berikutnya

Dalam mulai cepat ini, Anda menyebarkan hub IoT dan instans Device Provisioning Service, dan menautkan dua sumber daya. Untuk mempelajari cara menggunakan penyetelan ini untuk provisikan perangkat, lanjutkan ke mulai cepat untuk membuat perangkat.