Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Cihazlarınızı sağlamak için gerekli Azure bulut kaynaklarını program aracılığıyla ayarlamak için bir Azure Resource Manager şablonu (ARM şablonu) kullanabilirsiniz. Bu adımlar, ARM şablonuyla ioT hub'ı ve yeni bir IoT Hub Cihazı Sağlama Hizmeti oluşturmayı gösterir. IoT hub'ı da şablonu kullanarak DPS kaynağına 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.
Azure Resource Manager şablonu, projenizin altyapısını ve yapılandırmasını tanımlayan bir JavaScript Nesne Gösterimi (JSON) dosyasıdır. Şablon deklaratif sözdizimi kullanır. Dağıtımı oluşturmak için programlama komutlarının sırasını yazmadan hedeflenen dağıtımınızı açıklarsınız.
Bu hızlı başlangıçta, kaynak grubu oluşturmak ve şablonu dağıtmak için gerekli programlı adımları gerçekleştirmek için Azure portalı ve Azure CLI kullanılmaktadır. Ancak, bu adımları gerçekleştirmek ve şablonunuzu dağıtmak için PowerShell, .NET, Ruby veya diğer programlama dillerini de kullanabilirsiniz.
Ortamınız önkoşulları karşılıyorsa ve ARM şablonlarını kullanmayı zaten biliyorsanız Azure'a Dağıt düğmesini seçtiğinizde şablon Azure portalında dağıtım için açılır.
Azure hesabınız yoksa, başlamadan önce ücretsiz hesap oluşturun.
Önkoşullar
Azure Cloud Shell'de Bash ortamını kullanın. Daha fazla bilgi için bkz . Azure Cloud Shell'i kullanmaya başlama.
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 kullanarak Azure'da kimlik doğrulaması.
İ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 ve yönetme.
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.
Şablonu gözden geçirme
Bu hızlı başlangıçta kullanılan şablon Azure Hızlı Başlangıç Şablonlarından alınmıştır.
Not
Şu anda yeni DPS kaynaklarıyla kayıt oluşturmak için ARM şablonu desteği yoktur. Bu, uygulama için dikkate alınmakta olan yaygın ve anlaşılır bir istektir.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.12.40.16777",
"templateHash": "13184692430416822033"
}
},
"parameters": {
"iotHubName": {
"type": "string",
"metadata": {
"description": "Specify the name of the Iot hub."
}
},
"provisioningServiceName": {
"type": "string",
"metadata": {
"description": "Specify the name of the provisioning service."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Specify the location of the resources."
}
},
"skuName": {
"type": "string",
"defaultValue": "S1",
"metadata": {
"description": "The SKU to use for the IoT Hub."
}
},
"skuUnits": {
"type": "int",
"defaultValue": 1,
"metadata": {
"description": "The number of IoT Hub units."
}
}
},
"variables": {
"iotHubKey": "iothubowner"
},
"resources": [
{
"type": "Microsoft.Devices/IotHubs",
"apiVersion": "2021-07-02",
"name": "[parameters('iotHubName')]",
"location": "[parameters('location')]",
"sku": {
"name": "[parameters('skuName')]",
"capacity": "[parameters('skuUnits')]"
},
"properties": {}
},
{
"type": "Microsoft.Devices/provisioningServices",
"apiVersion": "2022-02-05",
"name": "[parameters('provisioningServiceName')]",
"location": "[parameters('location')]",
"sku": {
"name": "[parameters('skuName')]",
"capacity": "[parameters('skuUnits')]"
},
"properties": {
"iotHubs": [
{
"connectionString": "[format('HostName={0};SharedAccessKeyName={1};SharedAccessKey={2}', reference(resourceId('Microsoft.Devices/IotHubs', parameters('iotHubName')), '2021-07-02').hostName, variables('iotHubKey'), listkeys(resourceId('Microsoft.Devices/IotHubs', parameters('iotHubName')), '2021-07-02').value[0].primaryKey)]",
"location": "[parameters('location')]"
}
]
},
"dependsOn": [
"[resourceId('Microsoft.Devices/IotHubs', parameters('iotHubName'))]"
]
}
]
}
Önceki şablonda 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 örneği oluşturur.
Şablonu dağıtma
Portal kullanarak dağıtım yapma
Azure'da oturum açmak ve şablonu dağıtım için açmak için aşağıdaki görüntüyü seçin. Şablon yeni bir IoT hub'ı ve DPS kaynağı oluşturur. Yeni IoT hubu, DPS kaynağına bağlıdır.
Aşağıdaki değerleri seçin veya girin ve Gözden Geçir + Oluştur'u seçin.
Aşağıdaki alanlar için aksi belirtilmedikçe, IoT hub'ı ve DPS kaynağını oluşturmak için varsayılan değeri kullanın.
Alan Açıklama Abonelik Azure aboneliği seçin. Kaynak grubu Yeni oluştur'u seçin, kaynak grubu için benzersiz bir ad girin ve ardından Tamam'ı seçin. Bölge Kaynaklarınız için bir bölge seçin. Örneğin, Doğu ABD. Dayanıklılık ve güvenilirlik için Kullanılabilirlik Alanları destekleyen bölgelerden birine dağıtmanızı öneririz. IoT Hub Adı IoT hub'ı için .azure-devices.net ad alanında genel olarak benzersiz olması gereken bir ad girin. Dağıtımı doğrularken sonraki bölümde hub adı gerekir. Sağlama Hizmeti Adı Yeni Cihaz Sağlama Hizmeti (DPS) kaynağı için bir ad girin. Adın .azure-devices-provisioning.net ad alanı içinde genel olarak benzersiz olması gerekir. Dağıtımı doğrularken sonraki bölümde DPS adı gerekir. Sonraki ekranda terimleri okuyun. Tüm koşulları kabul ediyorsanız Oluştur'u seçin.
Dağıtımın tamamlanması birkaç dakika sürer.
Azure portalına ek olarak Azure PowerShell, Azure CLI ve REST API'yi de kullanabilirsiniz. Diğer dağıtım yöntemlerini öğrenmek için bkz. ARM şablonları ve Azure PowerShell ile kaynakları dağıtma.
Azure CLI ile dağıtma
Azure CLI'nin kullanılması için 2.6 veya üzeri bir sürüm gerekir. Azure CLI'yi yerel olarak çalıştırıyorsanız şu komutu çalıştırarak sürümünüzü doğrulayın: az --version
Azure hesabınızda oturum açın ve aboneliğinizi seçin.
Azure CLI'yi portalda çalıştırmak yerine yerel olarak çalıştırıyorsanız oturum açmanız gerekir. Komut isteminde oturum açmak için az login komutunu çalıştırın:
az loginKodu 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. Kullanabileceğiniz Azure hesaplarını listelemek için aşağıdaki az account list komutunu kullanın:
az account list -o tableIoT hub'ınızı ve DPS kaynaklarınızı oluşturmak üzere komutlarını çalıştırmak için kullanmak istediğiniz aboneliği seçmek için aşağıdaki az account set komutunu kullanın. Önceki komutun çıkışında yer alan abonelik adını veya kimliği kullanabilirsiniz:
az account set --subscription {your subscription name or id}Aşağıdaki komutları kopyalayıp CLI isteminize yapıştırın. Ardından Enter tuşunu seçerek komutları yürütebilirsiniz.
İpucu
Komutlar bir kaynak grubu konumu ister. Önce aşağıdaki komutu çalıştırarak kullanılabilir konumların listesini görüntüleyebilirsiniz:
az account list-locations -o tableread -p "Enter a project name that is used for generating resource names:" projectName && read -p "Enter the location (i.e. centralus):" location && templateUri="https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.devices/iothub-device-provisioning/azuredeploy.json" && resourceGroupName="${projectName}rg" && az group create --name $resourceGroupName --location "$location" && az deployment group create --resource-group $resourceGroupName --template-uri $templateUri && echo "Press [ENTER] to continue ..." && readKomutlar sizden aşağıdaki bilgileri ister. Her değeri belirtin ve Enter tuşunu seçin.
Parametre Açıklama Proje adı Bu parametrenin değeri, tüm kaynakları barındıracak bir kaynak grubu oluşturmak için kullanılır. Dize rg, kaynak grubu adınızın değerinin sonuna eklenir.konum Bu değer, tüm kaynakların oluşturulduğu bölgedir. iotHubName IoT hub'ı için .azure-devices.net ad alanında genel olarak benzersiz olması gereken bir ad girin. Dağıtımı doğrularken sonraki bölümde hub adı gerekir. provisioningServiceName Yeni Cihaz Sağlama Hizmeti (DPS) kaynağı için bir ad girin. Adın .azure-devices-provisioning.net ad alanı içinde genel olarak benzersiz olması gerekir. Dağıtımı doğrularken sonraki bölümde DPS adı gerekir. Azure CLI, şablonu dağıtmak için kullanılır. Azure CLI'ya ek olarak Azure PowerShell, Azure portalı ve REST API'sini de kullanabilirsiniz. Diğer dağıtım yöntemlerini öğrenmek için bkz . Şablonları dağıtma.
Dağıtılan kaynakları gözden geçirme
Dağıtımı doğrulamak için aşağıdaki az resource list komutunu çalıştırarak kaynakları listeleyin ve çıktıda yeni sağlama hizmetini ve IoT hub'ını arayın:
az resource list -g "${projectName}rg"Hub'ın zaten DPS kaynağına bağlı olduğunu doğrulamak için aşağıdaki az iot dps show komutunu çalıştırın.
az iot dps show --name <Your provisioningServiceName>iotHubsüyesine bağlı hub'lara dikkat edin.
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 portalını veya Azure CLI'yi kullanabilirsiniz.
Kaynak grubunu ve tüm kaynaklarını Azure portalından silmek için kaynak grubunu açmanız ve üstteki Kaynak grubunu sil'i seçmeniz gerekir.
Azure CLI kullanılarak dağıtılan kaynak grubunu silmek için:
az group delete --name "${projectName}rg"
Aşağıdaki seçeneklerden herhangi birini kullanarak kaynak gruplarını ve tek tek kaynakları da silebilirsiniz:
- Azure portalı
- PowerShell
- REST API'leri
- Azure Resource Manager veya IoT Hub Cihazı Sağlama Hizmeti için yayımlanan desteklenen platform SDK'ları
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.