自システムからの実行環境プロビジョニングする勉強のため、PowerShellからIoT Hub生成を確認してみる。
といっても、「
PowerShell を使用した IoT Hub の作成」に書いてあることを少し変えて試してみただけ。
1. Azure PowerShellをインストールする(自分が試したのはWebPI経由でver. 1.3をインストール)
2. 管理者モードでPowerShellを起動
3. 以下のコマンドを実行
$ Login-AzureRmAccount
4. 以下のような画面が表示されるので、登録しているAzureのアカウントでサインイン
5. IoT Hubを西日本リージョンで作成するため、以下のコマンドを実行し、IoT Hubの展開可能リージョン名を確認
$ ((Get-AzureRmResourceProvider -ProviderNamespace Microsoft.Devices).ResourceTypes | Where-Object ResourceTypeName -eq IoTHubs).Locations
⇒西日本リージョン名はJapan West
6. IoT Hubの所属リソースグループを生成するため、以下のコマンドを実行
⇒ここでは「MyIoTRG1」という名前のリソースグループを生成。
$ New-AzureRmResourceGroup -Name MyIoTRG1 -Location "Japan West"
なお、IoT Hubを既存のリソースグループに所属させる場合、この作業は不要。
7. 以下のようなJson形式のテンプレートファイルを作成する。
⇒ここでは、template.jsonというファイル名で保存。
また、「
PowerShell を使用した IoT Hub の作成」に記載の内容から、リージョンをJapan Westに、SKUはF1(無料)へ変えている。
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"hubName": {
"type": "string"
}
},
"resources": [
{
"apiVersion": "2016-02-03",
"type": "Microsoft.Devices/IotHubs",
"name": "[parameters('hubName')]",
"location": "Japan West",
"sku": {
"name": "F1",
"tier": "Standard",
"capacity": 1
},
"properties": {
"location": "Japan West"
}
}
],
"outputs": {
"hubKeys": {
"value": "[listKeys(resourceId('Microsoft.Devices/IotHubs', parameters('hubName')), '2016-02-03')]",
"type": "object"
}
}
}
8. 以下のコマンドにより、テンプレートに従ってIoT Hubを生成する。
⇒なお、IoT Hub名称は「IoTHubProvTest」としている。
$ New-AzureRmResourceGroupDeployment -ResourceGroupName MyIoTRG1 -TemplateFile C:\work\template.json -hubName IoTHubProvTest
Azureポータルサイトで、指定した名前・リソースグループのIoT Hubが生成されていることを確認してください。