Service Bus şablonlarını kullanarak Azure Resource Manager oluşturma

Bu makalede, Azure Resource Manager şablonları, PowerShell'i ve Service Bus kaynak sağlayıcısını kullanarak Service Bus ve dağıtma açıklanmıştır.

Azure Resource Manager şablonları, bir çözüm için dağıtıla kaynakları tanımlamanıza ve farklı ortamlar için değer girişinizi sağlayan parametreler ve değişkenler belirtmenize yardımcı olur. Şablon JSON ile yazılır ve dağıtımınız için değer oluşturmak üzere kullanabileceğiniz ifadelerden oluşur. Şablon yazma hakkında ayrıntılı Azure Resource Manager ve şablon biçimiyle ilgili bir tartışma için bkz. şablon Azure Resource Manager söz dizimi.

Not

Bu makaledeki örneklerde, Azure Resource Manager ve mesajlaşma varlığı (kuyruk) oluşturmak Service Bus nasıl kullanabileceğiniz gösterlanmıştır. Diğer şablon örnekleri için Azure Hızlı Başlangıç Şablonları galerisini ziyaret edin ve Service Bus.

Not

Bu makalede, Azure ile etkileşim kurmak için önerilen PowerShell modülü olan Azure Az PowerShell modülü kullanılır. Az PowerShell modülünü kullanmaya başlamak için Azure PowerShell’i yükleyin. Az PowerShell modülüne nasıl geçeceğinizi öğrenmek için bkz. Azure PowerShell’i AzureRM’den Az’ye geçirme.

Service Bus Resource Manager şablonları

Bu Service Bus Azure Resource Manager şablonları indirilebilir ve dağıtım için kullanılabilir. Her biri hakkında ayrıntılı bilgi için aşağıdaki bağlantılara tıklayın ve aşağıdaki bağlantılarda GitHub:

PowerShell ile dağıtma

Aşağıdaki yordamda, PowerShell kullanarak ad alanı için Standart Azure Resource Manager ve bu ad alanı içinde Service Bus bir kuyruk oluşturan bir şablon dağıtma işlemi açıkmektedir. Bu örnek, Kuyruk şablonuyla bir Service Bus ad alanı oluşturma'ya dayalıdır. Yaklaşık iş akışı aşağıdaki gibidir:

  1. PowerShell'i yükleyin.
  2. Şablonu ve (isteğe bağlı olarak) bir parametre dosyası oluşturun.
  3. PowerShell'de Azure hesabınızla oturum açın.
  4. Yoksa yeni bir kaynak grubu oluşturun.
  5. Dağıtımı test etmek.
  6. İsterseniz dağıtım modunu ayarlayın.
  7. Şablonu dağıtma.

Uygulama şablonları dağıtma hakkında tam Azure Resource Manager için bkz. Kaynak şablonlarıyla Azure Resource Manager dağıtma.

PowerShell yükleme

Yükleme Azure PowerShell'daki Yönergeleri izleyerek 'i Azure PowerShell.

Şablon oluşturma

Depoyu kopyalayın veya servicebus-create-queue şablonunu 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]"
    }
  }
}

Parametre dosyası oluşturma (isteğe bağlı)

İsteğe bağlı parametre dosyası kullanmak için servicebus-create-queue dosyasını kopyalayın. değerini bu dağıtımda oluşturmak istediğiniz Service Bus ad alanının adıyla, değerini ise oluşturmak istediğiniz kuyruğun serviceBusNamespaceName serviceBusQueueName adıyla değiştirin.

{
    "$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"
        }
    }
}

Daha fazla bilgi için Parametreler makalesine bakın.

Azure'da oturum açma ve Azure aboneliğini ayarlama

Bir PowerShell isteminde aşağıdaki komutu çalıştırın:

Connect-AzAccount

Azure hesabınızla oturum açmanız istenir. Oturum açtıktan sonra, kullanılabilir aboneliklerinizi görüntülemek için aşağıdaki komutu çalıştırın:

Get-AzSubscription

Bu komut, kullanılabilir Azure aboneliklerinin listesini döndürür. Aşağıdaki komutu çalıştırarak geçerli oturum için bir abonelik seçin. yerine <YourSubscriptionId> kullanmak istediğiniz Azure aboneliğinin GUID'sini kullanın:

Set-AzContext -SubscriptionID <YourSubscriptionId>

Kaynak grubunu ayarlama

Mevcut bir kaynak grubunuz yoksa New-AzResourceGroup komutuyla yeni bir kaynak grubu oluşturun. Kaynak grubunun adını ve kullanmak istediğiniz konumu girin. Örnek:

New-AzResourceGroup -Name MyDemoRG -Location "West US"

Başarılı olursa, yeni kaynak grubunun bir özeti görüntülenir.

ResourceGroupName : MyDemoRG
Location          : westus
ProvisioningState : Succeeded
Tags              :
ResourceId        : /subscriptions/<GUID>/resourceGroups/MyDemoRG

Dağıtımı test etme

cmdlet'ini çalıştırarak Test-AzResourceGroupDeployment dağıtımınızı doğrulama. Dağıtımı test etmek için, tam olarak dağıtımı yürütürken olduğu gibi parametreleri girin.

Test-AzResourceGroupDeployment -ResourceGroupName MyDemoRG -TemplateFile <path to template file>\azuredeploy.json

Dağıtımı oluşturma

Yeni dağıtımı oluşturmak için New-AzResourceGroupDeployment cmdlet'ini çalıştırın ve istendiğinde gerekli parametreleri girin. Parametreler dağıtımınız için bir ad, kaynak grubu adının ve şablon dosyasının yolunu veya URL'sini içerir. Mode parametresi belirtilmezse varsayılan Artımlı değeri kullanılır. Daha fazla bilgi için bkz. Artımlı ve tam dağıtımlar.

Aşağıdaki komut, PowerShell penceresindeki üç parametreyi girmenizi sağlar:

New-AzResourceGroupDeployment -Name MyDemoDeployment -ResourceGroupName MyDemoRG -TemplateFile <path to template file>\azuredeploy.json

Bunun yerine bir parametre dosyası belirtmek için aşağıdaki komutu kullanın:

New-AzResourceGroupDeployment -Name MyDemoDeployment -ResourceGroupName MyDemoRG -TemplateFile <path to template file>\azuredeploy.json -TemplateParameterFile <path to parameters file>\azuredeploy.parameters.json

Dağıtım cmdlet'ini çalıştırarak satır içi parametreleri de kullanabilirsiniz. Komut aşağıdaki gibidir:

New-AzResourceGroupDeployment -Name MyDemoDeployment -ResourceGroupName MyDemoRG -TemplateFile <path to template file>\azuredeploy.json -parameterName "parameterValue"

Tam bir dağıtımı çalıştırmak için Mode parametresini Complete olarak ayarlayın:

New-AzResourceGroupDeployment -Name MyDemoDeployment -Mode Complete -ResourceGroupName MyDemoRG -TemplateFile <path to template file>\azuredeploy.json

Dağıtımı doğrulama

Kaynaklar başarıyla dağıtılırsa, PowerShell penceresinde dağıtımın bir özeti görüntülenir:

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

Sonraki adımlar

Yeni bir şablon dağıtmak için temel iş akışını ve komutları Azure Resource Manager gördünüz. Daha ayrıntılı bilgi için aşağıdaki bağlantıları ziyaret edin: