Tworzenie zasobów usługi Service Bus przy użyciu szablonów usługi Azure Resource Manager
W tym artykule opisano sposób tworzenia i wdrażania zasobów usługi Service Bus przy użyciu szablonów usługi Azure Resource Manager, programu PowerShell i dostawcy zasobów usługi Service Bus.
Szablony usługi Azure Resource Manager ułatwiają definiowanie zasobów do wdrożenia dla rozwiązania oraz określanie parametrów i zmiennych, które umożliwiają wprowadzanie wartości wejściowych dla różnych środowisk. Szablon jest napisany w formacie JSON i składa się z wyrażeń, których można użyć do konstruowania wartości dla wdrożenia. Aby uzyskać szczegółowe informacje na temat pisania szablonów usługi Azure Resource Manager oraz omówienie formatu szablonu, zobacz strukturę i składnię szablonów usługi Azure Resource Manager.
Uwaga
W przykładach w tym artykule pokazano, jak za pomocą usługi Azure Resource Manager utworzyć przestrzeń nazw usługi Service Bus i jednostkę obsługi komunikatów (kolejka). Aby zapoznać się z innymi przykładami szablonów, odwiedź galerię Szablony szybkiego startu platformy Azure i wyszukaj usługę Service Bus.
Uwaga
Do interakcji z platformą Azure zalecamy używanie modułu Azure Az w programie PowerShell. Aby rozpocząć, zobacz Instalowanie programu Azure PowerShell. Aby dowiedzieć się, jak przeprowadzić migrację do modułu Az PowerShell, zobacz Migracja programu Azure PowerShell z modułu AzureRM do modułu Az.
Szablony usługi Resource Manager usługi Service Bus
Te szablony usługi Azure Resource Manager usługi Service Bus są dostępne do pobrania i wdrożenia. Kliknij następujące linki, aby uzyskać szczegółowe informacje o każdym z nich, z linkami do szablonów w witrynie GitHub:
- Tworzenie przestrzeni nazw usługi Service Bus
- Tworzenie przestrzeni nazw usługi Service Bus z kolejką
- Tworzenie przestrzeni nazw usługi Service Bus z tematem i subskrypcją
- Tworzenie przestrzeni nazw usługi Service Bus z kolejką i regułą autoryzacji
- Tworzenie przestrzeni nazw usługi Service Bus z tematem, subskrypcją i regułą
Wdrażanie przy użyciu programu PowerShell
W poniższej procedurze opisano sposób wdrażania szablonu usługi Azure Resource Manager przy użyciu programu PowerShell, który tworzy przestrzeń nazw usługi Service Bus w warstwie Standardowa oraz kolejkę w tej przestrzeni nazw. Ten przykład jest oparty na szablonie Tworzenie przestrzeni nazw usługi Service Bus z kolejką . Przybliżony przepływ pracy wygląda następująco:
- Zainstaluj program PowerShell.
- Utwórz szablon i (opcjonalnie) plik parametrów.
- W programie PowerShell zaloguj się do konta platformy Azure.
- Utwórz nową grupę zasobów, jeśli nie istnieje.
- Przetestuj wdrożenie.
- W razie potrzeby ustaw tryb wdrażania.
- Wdrażanie szablonu.
Aby uzyskać pełne informacje na temat wdrażania szablonów usługi Azure Resource Manager, zobacz Wdrażanie zasobów przy użyciu szablonów usługi Azure Resource Manager.
Instalowanie programu PowerShell
Zainstaluj program Azure PowerShell, postępując zgodnie z instrukcjami w temacie Wprowadzenie do programu Azure PowerShell.
Utwórz szablon
Sklonuj repozytorium lub skopiuj szablon servicebus-create-queue z usługi GitHub:
{
"$schema": "https://schema.management.azure.com/schemas/2014-04-01-preview/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"serviceBusNamespaceName": {
"type": "string",
"metadata": {
"description": "Name of the Service Bus namespace"
}
},
"serviceBusQueueName": {
"type": "string",
"metadata": {
"description": "Name of the Queue"
}
}
},
"variables": {
"defaultSASKeyName": "RootManageSharedAccessKey",
"authRuleResourceId": "[resourceId('Microsoft.ServiceBus/namespaces/authorizationRules', parameters('serviceBusNamespaceName'), variables('defaultSASKeyName'))]",
"sbVersion": "2017-04-01"
},
"resources": [
{
"apiVersion": "2017-04-01",
"name": "[parameters('serviceBusNamespaceName')]",
"type": "Microsoft.ServiceBus/Namespaces",
"location": "[resourceGroup().location]",
"sku": {
"name": "Standard"
},
"properties": {},
"resources": [
{
"apiVersion": "2017-04-01",
"name": "[parameters('serviceBusQueueName')]",
"type": "Queues",
"dependsOn": [
"[concat('Microsoft.ServiceBus/namespaces/', parameters('serviceBusNamespaceName'))]"
],
"properties": {
"lockDuration": "PT5M",
"maxSizeInMegabytes": "1024",
"requiresDuplicateDetection": "false",
"requiresSession": "false",
"defaultMessageTimeToLive": "P10675199DT2H48M5.4775807S",
"deadLetteringOnMessageExpiration": "false",
"duplicateDetectionHistoryTimeWindow": "PT10M",
"maxDeliveryCount": "10",
"autoDeleteOnIdle": "P10675199DT2H48M5.4775807S",
"enablePartitioning": "false",
"enableExpress": "false"
}
}
]
}
],
"outputs": {
"NamespaceConnectionString": {
"type": "string",
"value": "[listkeys(variables('authRuleResourceId'), variables('sbVersion')).primaryConnectionString]"
},
"SharedAccessPolicyPrimaryKey": {
"type": "string",
"value": "[listkeys(variables('authRuleResourceId'), variables('sbVersion')).primaryKey]"
}
}
}
Tworzenie pliku parametrów (opcjonalnie)
Aby użyć pliku parametrów opcjonalnych, skopiuj plik servicebus-create-queue . Zastąp wartość serviceBusNamespaceName
nazwą przestrzeni nazw usługi Service Bus, którą chcesz utworzyć w tym wdrożeniu, i zastąp wartość serviceBusQueueName
nazwą kolejki, którą chcesz utworzyć.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"serviceBusNamespaceName": {
"value": "<myNamespaceName>"
},
"serviceBusQueueName": {
"value": "<myQueueName>"
},
"serviceBusApiVersion": {
"value": "2017-04-01"
}
}
}
Aby uzyskać więcej informacji, zobacz artykuł Parameters (Parametry ).
Zaloguj się do platformy Azure i ustaw subskrypcję platformy Azure
W wierszu polecenia programu PowerShell uruchom następujące polecenie:
Connect-AzAccount
Zostanie wyświetlony monit o zalogowanie się do konta platformy Azure. Po zalogowaniu uruchom następujące polecenie, aby wyświetlić dostępne subskrypcje:
Get-AzSubscription
To polecenie zwraca listę dostępnych subskrypcji platformy Azure. Wybierz subskrypcję dla bieżącej sesji, uruchamiając następujące polecenie. Zastąp <YourSubscriptionId>
ciąg identyfikatorem GUID subskrypcji platformy Azure, której chcesz użyć:
Set-AzContext -SubscriptionID <YourSubscriptionId>
Ustawianie grupy zasobów
Jeśli nie masz istniejącej grupy zasobów, utwórz nową grupę zasobów za pomocą polecenia New-AzResourceGroup . Podaj nazwę grupy zasobów i lokalizacji, której chcesz użyć. Na przykład:
New-AzResourceGroup -Name MyDemoRG -Location "West US"
W przypadku powodzenia zostanie wyświetlone podsumowanie nowej grupy zasobów.
ResourceGroupName : MyDemoRG
Location : westus
ProvisioningState : Succeeded
Tags :
ResourceId : /subscriptions/<GUID>/resourceGroups/MyDemoRG
Testowanie wdrożenia
Zweryfikuj Test-AzResourceGroupDeployment
wdrożenie, uruchamiając polecenie cmdlet . Podczas testowania wdrożenia podaj parametry dokładnie tak, jak podczas wykonywania wdrożenia.
Test-AzResourceGroupDeployment -ResourceGroupName MyDemoRG -TemplateFile <path to template file>\azuredeploy.json
Tworzenie wdrożenia
Aby utworzyć nowe wdrożenie, uruchom New-AzResourceGroupDeployment
polecenie cmdlet i po wyświetleniu monitu podaj niezbędne parametry. Parametry zawierają nazwę wdrożenia, nazwę grupy zasobów oraz ścieżkę lub adres URL do pliku szablonu. Jeśli parametr Mode nie zostanie określony, zostanie użyta wartość domyślna incremental. Aby uzyskać więcej informacji, zobacz Przyrostowe i kompletne wdrożenia.
Następujące polecenie wyświetla monit o trzy parametry w oknie programu PowerShell:
New-AzResourceGroupDeployment -Name MyDemoDeployment -ResourceGroupName MyDemoRG -TemplateFile <path to template file>\azuredeploy.json
Aby zamiast tego określić plik parametrów, użyj następującego polecenia:
New-AzResourceGroupDeployment -Name MyDemoDeployment -ResourceGroupName MyDemoRG -TemplateFile <path to template file>\azuredeploy.json -TemplateParameterFile <path to parameters file>\azuredeploy.parameters.json
Możesz również użyć wbudowanych parametrów podczas uruchamiania polecenia cmdlet wdrażania. Polecenie to wygląda następująco:
New-AzResourceGroupDeployment -Name MyDemoDeployment -ResourceGroupName MyDemoRG -TemplateFile <path to template file>\azuredeploy.json -parameterName "parameterValue"
Aby uruchomić pełne wdrożenie, ustaw parametr Mode na Ukończono:
New-AzResourceGroupDeployment -Name MyDemoDeployment -Mode Complete -ResourceGroupName MyDemoRG -TemplateFile <path to template file>\azuredeploy.json
Weryfikowanie wdrożenia
Jeśli zasoby zostaną pomyślnie wdrożone, w oknie programu PowerShell zostanie wyświetlone podsumowanie wdrożenia:
DeploymentName : MyDemoDeployment
ResourceGroupName : MyDemoRG
ProvisioningState : Succeeded
Timestamp : 4/19/2017 10:38:30 PM
Mode : Incremental
TemplateLink :
Parameters :
Name Type Value
=============== ========================= ==========
serviceBusNamespaceName String <namespaceName>
serviceBusQueueName String <queueName>
serviceBusApiVersion String 2017-04-01
Następne kroki
Znasz już podstawowy przepływ pracy i polecenia dotyczące wdrażania szablonu usługi Azure Resource Manager. Aby uzyskać bardziej szczegółowe informacje, odwiedź następujące linki: