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

Bu makalede Azure Resource Manager şablonları, PowerShell ve Service Bus kaynak sağlayıcısını kullanarak Service Bus kaynaklarının nasıl oluşturulacağı ve dağıtılacağı açıklanır.

Azure Resource Manager şablonları, bir çözüm için dağıtılacak kaynakları tanımlamanıza ve farklı ortamlar için değer girmenize olanak tanıyan parametreler ve değişkenler belirtmenize yardımcı olur. Şablon JSON dilinde yazılır ve dağıtımınız için değer oluşturmak için kullanabileceğiniz ifadelerden oluşur. Azure Resource Manager şablonları yazma ve şablon biçimi hakkında ayrıntılı bilgi için bkz. Azure Resource Manager şablonlarının yapısı ve söz dizimi.

Not

Bu makaledeki örneklerde, Service Bus ad alanı ve mesajlaşma varlığı (kuyruk) oluşturmak için Azure Resource Manager'nin nasıl kullanılacağı gösterilmektedir. Diğer şablon örnekleri için Azure Hızlı Başlangıç Şablonları galerisini ziyaret edin ve Service Bus'ı arayın.

Not

Azure ile etkileşime geçmek için Azure Az PowerShell modülünü kullanmanızı öneririz. Başlamak için bkz. Azure PowerShell'i yükleme. 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ı indirme ve dağıtım için kullanılabilir. GitHub'da şablonların bağlantılarını içeren her biri hakkında ayrıntılı bilgi için aşağıdaki bağlantılara tıklayın:

PowerShell ile dağıtma

Aşağıdaki yordamda, Standart katman Service Bus ad alanı ve bu ad alanı içinde bir kuyruk oluşturan bir Azure Resource Manager şablonu dağıtmak için PowerShell'in nasıl kullanılacağı açıklanmaktadır. Bu örnek, kuyruk şablonuyla Service Bus ad alanı oluşturma işlemini temel alı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ızda oturum açın.
  4. Yoksa yeni bir kaynak grubu oluşturun.
  5. Dağıtımı test edin.
  6. İsterseniz dağıtım modunu ayarlayın.
  7. Şablonu dağıtma.

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

PowerShell yükleme

Azure PowerShell kullanmaya başlama bölümündeki yönergeleri izleyerek Azure PowerShell yükleyin.

Şablon oluşturma

Depoyu kopyalayın veya GitHub'dan servicebus-create-queue şablonunu kopyalayın:

{
  "$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 serviceBusNamespaceName bu dağıtımda oluşturmak istediğiniz Service Bus ad alanının adıyla, değerini serviceBusQueueName ise oluşturmak istediğiniz kuyruğun 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çın ve Azure aboneliğini ayarlayın

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

Connect-AzAccount

Azure hesabınızda 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. değerini, kullanmak istediğiniz Azure aboneliğinin GUID değeriyle değiştirin <YourSubscriptionId> :

Set-AzContext -SubscriptionID <YourSubscriptionId>

Kaynak grubunu ayarlama

Mevcut bir kaynak grubunuz yoksa New-AzResourceGroup komutuyla yeni bir kaynak grubu oluşturun. Kullanmak istediğiniz kaynak grubunun ve konumun adını belirtin. Örnek:

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

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

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

Dağıtımı test etme

cmdlet'ini Test-AzResourceGroupDeployment çalıştırarak dağıtımınızı doğrulayın. Dağıtımı test ederken, tam olarak dağıtımı yürütürken yaptığınız gibi parametreler sağlayın.

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

Dağıtımı oluşturma

Yeni dağıtımı oluşturmak için cmdlet'ini New-AzResourceGroupDeployment çalıştırın ve istendiğinde gerekli parametreleri sağlayın. Parametreler dağıtımınız için bir ad, kaynak grubunuzun adı 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 eksiksiz dağıtımlar.

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

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ırdığınızda 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 Tamamlandı 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 ö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

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