Hızlı Başlangıç: Bicep ile IoT Hub Cihazı Sağlama Hizmeti'ni (DPS) ayarlama
Cihazlarınızı sağlamak için gerekli Azure bulut kaynaklarını program aracılığıyla ayarlamak için bicep dosyasını kullanabilirsiniz. Bu adımlar, Bicep dosyasıyla IoT hub'ı ve yeni bir IoT Hub Cihazı Sağlama Hizmeti örneğinin nasıl oluşturulacağını gösterir. IoT Hub, Bicep dosyası kullanılarak DPS kaynağına da bağlanır. Bu bağlama, DPS kaynağının yapılandırdığınız ayırma ilkelerine göre cihazları hub'a atamasını sağlar.
Bicep, Azure kaynaklarını dağıtmak için bildirim temelli söz dizimi kullanan, etki alanına özgü bir dildir (DSL). Kısa sözdizimi, güvenilir tür güvenliği ve kod yeniden kullanımı için destek sağlar. Bicep, Azure'daki kod olarak altyapı çözümleriniz için en iyi yazma deneyimini sunar.
Bu hızlı başlangıçta Kaynak grubu oluşturmak ve Bicep dosyasını dağıtmak için gerekli programlı adımları gerçekleştirmek için Azure PowerShell ve Azure CLI kullanılır, ancak bu adımları gerçekleştirmek ve Bicep dosyanızı dağıtmak için .NET, Ruby veya diğer programlama dillerini kolayca kullanabilirsiniz.
Önkoşullar
Azure aboneliğiniz yoksa başlamadan önce birücretsiz Azure hesabı oluşturun.
Azure Cloud Shell'de Bash ortamını kullanın. Daha fazla bilgi için bkz . Azure Cloud Shell'de Bash için hızlı başlangıç.
CLI başvuru komutlarını yerel olarak çalıştırmayı tercih ediyorsanız Azure CLI'yı yükleyin . Windows veya macOS üzerinde çalışıyorsanız Azure CLI’yi bir Docker kapsayıcısında çalıştırmayı değerlendirin. Daha fazla bilgi için bkz . Docker kapsayıcısında Azure CLI'yi çalıştırma.
Yerel yükleme kullanıyorsanız az login komutunu kullanarak Azure CLI ile oturum açın. Kimlik doğrulama işlemini tamamlamak için terminalinizde görüntülenen adımları izleyin. Diğer oturum açma seçenekleri için bkz . Azure CLI ile oturum açma.
İstendiğinde, ilk kullanımda Azure CLI uzantısını yükleyin. Uzantılar hakkında daha fazla bilgi için bkz. Azure CLI ile uzantıları kullanma.
Yüklü sürümü ve bağımlı kitaplıkları bulmak için az version komutunu çalıştırın. En son sürüme yükseltmek için az upgrade komutunu çalıştırın.
- Azure PowerShell'i yerel olarak kullanmayı seçerseniz:
- Az PowerShell modülünün en son sürümünü yükleyin.
- Connect-AzAccount cmdlet'ini kullanarak Azure hesabınıza bağlanın.
- Azure Cloud Shell'i kullanmayı seçerseniz:
- Daha fazla bilgi için bkz . Azure Cloud Shell'e genel bakış.
Bicep dosyasını gözden geçirme
Bu hızlı başlangıçta kullanılan Bicep dosyası Azure Hızlı Başlangıç Şablonları'ndan alınmıştı.
Not
Şu anda yeni DPS kaynaklarıyla kayıt oluşturmak için Bicep dosya desteği yoktur. Bu, uygulama için dikkate alınmakta olan yaygın ve anlaşılır bir istektir.
@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
}
]
}
}
Yukarıdaki Bicep dosyasında iki Azure kaynağı tanımlanmıştır:
- Microsoft.Devices/iothubs: Yeni bir Azure IoT Hub oluşturur.
- Microsoft.Devices/provisioningservices: Zaten bağlı olan yeni IoT Hub ile yeni bir Azure IoT Hub Cihaz Sağlama Hizmeti oluşturur.
Bicep dosyasının bir kopyasını main.bicep olarak yerel olarak kaydedin.
Bicep dosyasını dağıtma
Azure hesabınızda oturum açın ve aboneliğinizi seçin.
Komut isteminde Azure'da oturum açın:
az login
Kodu kullanarak kimlik doğrulaması gerçekleştirmek için yönergeleri uygulayın ve bir web tarayıcısı üzerinden Azure hesabınızda oturum açın.
Birden fazla Azure aboneliğiniz varsa Azure’da oturum açtığınızda, kimlik bilgilerinizle ilişkili tüm Azure hesaplarınıza erişim izni elde edersiniz.
az account list -o table
IoT hub'ınızı ve DPS kaynaklarınızı oluşturmak üzere komutları çalıştırmak için kullanmak istediğiniz aboneliği seçmek için aşağıdaki komutu kullanın. Önceki komutun çıkışında yer alan abonelik adını veya kimliği kullanabilirsiniz:
az account set --subscription {your subscription name or id}
Bicep dosyasını aşağıdaki komutlarla dağıtın.
İpucu
Komutlar bir kaynak grubu konumu ister. Önce komutunu çalıştırarak kullanılabilir konumların listesini görüntüleyebilirsiniz:
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} öğesini genel olarak benzersiz bir IoT Hub adıyla değiştirin, {DPS-name} öğesini genel olarak benzersiz bir Cihaz Sağlama Hizmeti (DPS) kaynak adıyla değiştirin.
Kaynakların oluşturulması birkaç dakika sürer.
Dağıtılan kaynakları gözden geçirme
Dağıtımı doğrulamak için aşağıdaki komutu çalıştırın ve çıktıda yeni sağlama hizmetini ve IoT hub'ını arayın:
az resource list -g exampleRg
Hub'ın DPS kaynağına zaten bağlı olduğunu doğrulamak için aşağıdaki komutu çalıştırın.
az iot dps show --name <Your provisioningServiceName>
Kaynakları temizleme
Bu koleksiyondaki diğer hızlı başlangıçlar, bu hızlı başlangıcı temel alır. Sonraki hızlı başlangıçlarla veya öğreticilerle çalışmaya devam etmek istiyorsanız, bu hızlı başlangıçta oluşturulan kaynakları temizlemeyin. Devam etmek istemiyorsanız, kaynak grubunu ve tüm kaynaklarını silmek için Azure PowerShell veya Azure CLI kullanabilirsiniz.
Bir kaynak grubunu ve tüm kaynaklarını Azure portalından silmek için kaynak grubunu açıp Kaynak grubunu sil'i ve üstteki öğesini seçmeniz gerekir.
Dağıtılan kaynak grubunu silmek için:
az group delete --name exampleRG
Azure portalı, PowerShell veya REST API'lerini kullanarak veya desteklenen platform SDK'larıyla kaynak gruplarını ve tek tek kaynakları da silebilirsiniz.
Sonraki adımlar
Bu hızlı başlangıçta bir IoT hub'ı ve Bir Cihaz Sağlama Hizmeti örneği dağıttınız ve iki kaynağı bağladınız. Bu kurulumu kullanarak cihaz sağlamayı öğrenmek için cihaz oluşturma hızlı başlangıcına geçin.