このクイック スタートでは、 Azure Resource Manager テンプレート (ARM テンプレート) を使用してイベント ハブを作成します。 ARM テンプレートをデプロイして、 Event Hubs 型の名前空間を 1 つのイベント ハブと共に作成します。
[前提条件]
- Azure サブスクリプションをお持ちでない場合は、始める前に無料アカウントを作成してください。
- Azure Event Hubs を初めて使用する場合は、 Event Hubs の概要 と Event Hubs の機能に関するページを参照してください。
テンプレートを確認する
このクイックスタートで使用されるテンプレートは Azure クイックスタート テンプレートからのものです。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.5.6.12127",
"templateHash": "16940368634879422816"
}
},
"parameters": {
"projectName": {
"type": "string",
"metadata": {
"description": "Specifies a project name that is used to generate the Event Hub name and the Namespace name."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Specifies the Azure location for all resources."
}
},
"eventHubSku": {
"type": "string",
"defaultValue": "Standard",
"allowedValues": [
"Basic",
"Standard"
],
"metadata": {
"description": "Specifies the messaging tier for Event Hub Namespace."
}
}
},
"variables": {
"eventHubNamespaceName": "[format('{0}ns', parameters('projectName'))]",
"eventHubName": "[parameters('projectName')]"
},
"resources": [
{
"type": "Microsoft.EventHub/namespaces",
"apiVersion": "2021-11-01",
"name": "[variables('eventHubNamespaceName')]",
"location": "[parameters('location')]",
"sku": {
"name": "[parameters('eventHubSku')]",
"tier": "[parameters('eventHubSku')]",
"capacity": 1
},
"properties": {
"isAutoInflateEnabled": false,
"maximumThroughputUnits": 0
}
},
{
"type": "Microsoft.EventHub/namespaces/eventhubs",
"apiVersion": "2021-11-01",
"name": "[format('{0}/{1}', variables('eventHubNamespaceName'), variables('eventHubName'))]",
"properties": {
"messageRetentionInDays": 7,
"partitionCount": 1
},
"dependsOn": [
"[resourceId('Microsoft.EventHub/namespaces', variables('eventHubNamespaceName'))]"
]
}
]
}
テンプレートで定義されているリソースは次のとおりです。
その他のテンプレート サンプルについては、 Azure クイック スタート テンプレートに関するページを参照してください。
テンプレートをデプロイする
Azure portal ユーザー インターフェイスの使用
環境が前提条件を満たしていて、ARM テンプレートの使用に慣れている場合は、 [Azure へのデプロイ] ボタンを選択します。 テンプレートが Azure portal で開きます。
既存の リソース グループ を選択するか、リソース グループを作成して選択します。
リージョンを選択 します。
プロジェクトの一意の名前を入力します。 この名前は、Event Hubs 名前空間と名前空間内のイベント ハブの名前を生成するために使用されます。
[Review + create](レビュー + 作成) を選択します。
[確認および作成] ページで、 [作成] を選択します。
Azure Cloud Shell の使用
Azure Cloud Shell を使用してテンプレートをデプロイするには:
次のコード ブロックから [ Cloud Shell を開く ] を選択し、指示に従って Azure Cloud Shell にサインインします。
$projectName = Read-Host -Prompt "Enter a project name that is used for generating resource names" $location = Read-Host -Prompt "Enter the location (i.e. centralus)" $resourceGroupName = "${projectName}rg" $templateUri = "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.eventhub/eventhubs-create-namespace-and-eventhub/azuredeploy.json" New-AzResourceGroup -Name $resourceGroupName -Location $location New-AzResourceGroupDeployment -ResourceGroupName $resourceGroupName -TemplateUri $templateUri -projectName $projectName Write-Host "Press [ENTER] to continue ..."イベント ハブの作成には少し時間がかかります。
[ コピー] を選択して PowerShell スクリプトをコピーします。
シェル コンソールを右クリックし、[ 貼り付け] を選択します。
Enter キーを押してコマンドを実行します。
デプロイメントを検証する
デプロイを確認するには、 Azure portal からリソース グループを開くか、次の Azure PowerShell スクリプトを使用します。 Cloud Shell がまだ開いている場合は、最初の行 (Read-Host) をコピーまたは実行する必要はありません。
$projectName = Read-Host -Prompt "Enter the same project name that you used in the last procedure"
$resourceGroupName = "${projectName}rg"
$namespaceName = "${projectName}ns"
Get-AzEventHub -ResourceGroupName $resourceGroupName -Namespace $namespaceName
Write-Host "Press [ENTER] to continue ..."
リソースをクリーンアップする
Azure リソースが不要になったら、リソース グループを削除してデプロイしたリソースをクリーンアップします。 Cloud Shell がまだ開いている場合は、最初の行 (Read-Host) をコピーまたは実行する必要はありません。
$projectName = Read-Host -Prompt "Enter the same project name that you used in the last procedure"
$resourceGroupName = "${projectName}rg"
Remove-AzResourceGroup -ResourceGroupName $resourceGroupName
Write-Host "Press [ENTER] to continue ..."
次のステップ
この記事では、Event Hubs 名前空間と、名前空間にイベント ハブを作成しました。 イベント ハブとの間でイベントを送信または受信するためのステップ バイ ステップの手順については、以下のイベントの送受信のチュートリアルを参照してください。
- .NET Core
- ジャワ
- Python
- JavaScript
- 進む
- C (送信のみ)
- Apache Storm (受信のみ)