Aracılığıyla paylaş


Azure Event Hubs'ı başka bir bölgeye taşıma

Bu makalede, Event Hubs ad alanı ve yapılandırma ayarlarını başka bir bölgeye nasıl kopyalayabileceğiniz gösterilmektedir.

Azure kaynak grubunda Event Hubs ad alanını içeren başka kaynaklarınız varsa, ilgili tüm kaynakların tek adımda yeni bölgeye taşınabilmesi için şablonu kaynak grubu düzeyinde dışarı aktarmak isteyebilirsiniz. Kaynak grubunu şablona aktarmayı öğrenmek için bkz. Kaynakları bölgeler arasında taşıma (kaynak grubundan).

Önkoşullar

  • Hesabınızın kullandığı hizmetlerin ve özelliklerin hedef bölgede desteklendiğinden emin olun.

  • Ad alanındaki olay hub'ları için yakalama özelliğini etkinleştirdiyseniz Event Hubs ad alanını taşımadan önce Azure Depolama veya Azure Data Lake Store 2. Nesil hesaplarını taşıyın. Ayrıca, bu makalede açıklananlara benzer adımları izleyerek hem Depolama hem de Event Hubs ad alanlarını içeren kaynak grubunu diğer bölgeye taşıyabilirsiniz.

  • Event Hubs ad alanı bir Event Hubs kümesindeyse, bu makaledeki adımları izlemeden önce ayrılmış kümeyi hedef bölgeye taşıyın. Event Hubs kümesi oluşturmak için GitHub'daki hızlı başlangıç şablonunu da kullanabilirsiniz. Şablonda, yalnızca kümeyi oluşturmak için JSON'un ad alanı bölümünü kaldırın.

  • Tüm kaynak bağımlılıklarını belirleyin. Event Hubs'ı nasıl dağıttıysanız, aşağıdaki hizmetlerin hedef bölgede dağıtıma ihtiyacı olabilir :

  • Tüm bağımlı kaynakları tanımlayın. Event Hubs, uygulamaların iletileri yayımlamasına ve iletilere abone olmasına olanak tanıyan bir mesajlaşma sistemidir. Hedefte uygulamanızın, kaynak hedefte sahip olduğu bağımlı hizmetler kümesi için mesajlaşma desteği gerekip gerekmediğini göz önünde bulundurun.

Kesinti süresi

Olası kapalı kalma sürelerini anlamak için bkz. Azure için Bulut Benimseme Çerçevesi: Yeniden konumlandırma yöntemi seçme.

Hizmet Uç Noktaları için Dikkat Edilmesi Gerekenler

Azure Event Hubs için sanal ağ hizmet uç noktaları, belirtilen bir sanal ağa erişimi kısıtlar. Uç noktalar ayrıca IPv4 (internet protokolü sürüm 4) adres aralıkları listesine erişimi kısıtlayabilir. Event Hubs'a bu kaynakların dışından bağlanan tüm kullanıcıların erişimi reddedilir. Hizmet uç noktaları Event Hubs kaynağının kaynak bölgesinde yapılandırıldıysa, hedef bölgede de aynı işlem yapılması gerekir.

Event Hubs'ın hedef bölgeye başarıyla yeniden oluşturulması için VNet ve Alt Ağ önceden oluşturulmalıdır. Bu iki kaynağın taşınması Azure Kaynak Taşıyıcı aracıyla gerçekleştiriliyorsa, hizmet uç noktaları otomatik olarak yapılandırılmaz. Bu nedenle bunların el ile yapılandırılması gerekir. Bu yapılandırma Azure portalı, Azure CLI veya Azure PowerShell üzerinden yapılabilir.

Özel Uç Nokta ile İlgili Dikkat Edilmesi Gerekenler

Azure Özel Bağlantı sanal ağdan Hizmet olarak Azure platformu (PaaS), müşteriye ait veya Microsoft iş ortağı hizmetleri. Özel Bağlantı ağ mimarisini basitleştirir ve verilerin genel İnternet'e açık olmasını ortadan kaldırarak Azure'daki uç noktalar arasındaki bağlantıyı güvence altına alır.

Event Hubs'ın hedef bölgede başarılı bir şekilde yeniden oluşturulması için gerçek rekreasyon gerçekleşmeden önce VNet ve Alt Ağ oluşturulmalıdır.

Hazırlama

Başlamak için bir Resource Manager şablonunu dışarı aktarın. Bu şablon, Event Hubs ad alanınızı açıklayan ayarları içerir.

  1. Azure Portal’ında oturum açın.

  2. Tüm kaynaklar'ı ve ardından Event Hubs ad alanınızı seçin.

  3. Event Hubs Ad Alanı sayfasında, soldaki menüden Otomasyon'un altında Şablonu dışarı aktar'ı seçin.

  4. Şablonu dışarı aktar sayfasında İndir'i seçin.

    Resource Manager şablonunun indirileceği yeri gösteren ekran görüntüsü

  5. Portaldan indirdiğiniz .zip dosyasını bulun ve bu dosyanın sıkıştırmasını istediğiniz bir klasöre açın.

    Bu zip dosyası, şablonun dağıtılacağı şablonu ve betikleri içeren .json dosyalarını içerir.

Şablonu değiştirme

Event Hubs ad alanı adını ve bölgesini değiştirerek şablonu değiştirin.

  1. Şablon dağıtımı'nı seçin.

  2. Azure portalında Oluştur'u seçin.

  3. Düzenleyicide kendi şablonunuzu oluşturun'u seçin.

  4. Dosya yükle'yi seçin ve ardından yönergeleri izleyerek son bölümde indirdiğiniz template.json dosyasını yükleyin.

  5. template.json dosyasında, ad alanı adının varsayılan değerini ayarlayarak Event Hubs ad alanını adlandırın. Bu örnek Event Hubs ad alanı adının varsayılan değerini olarak namespace-nameayarlar.

     "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
     "contentVersion": "1.0.0.0",
     "parameters": {
         "namespaces_name": {
             "defaultValue": "namespace-name",
             "type": "String"
         },
     },
    
  6. template.json dosyasındaki konum özelliğini hedef bölgede düzenleyin. Bu örnek hedef bölgeyi olarak centralusayarlar.

    "resources": [
        {
            "type": "Microsoft.KeyVault/vaults",
            "apiVersion": "2023-07-01",
            "name": "[parameters('vaults_name')]",
            "location": "centralus",
    
        },
    
    ]
    
    
     "resources": [
     {
         "type": "Microsoft.EventHub/namespaces",
         "apiVersion": "2023-01-01-preview",
         "name": "[parameters('namespaces_name')]",
         "location": "centralus",
    
      },
     {
         "type": "Microsoft.EventHub/namespaces/authorizationrules",
         "apiVersion": "2023-01-01-preview",
         "name": "[concat(parameters('namespaces_name'), '/RootManageSharedAccessKey')]",
         "location": "centralus",
         "dependsOn": [
             "[resourceId('Microsoft.EventHub/namespaces', parameters('namespaces_name'))]"
         ],
         "properties": {
             "rights": [
                 "Listen",
                 "Manage",
                 "Send"
             ]
         }
     },
     {
         "type": "Microsoft.EventHub/namespaces/networkrulesets",
         "apiVersion": "2023-01-01-preview",
         "name": "[concat(parameters('namespaces_name'), '/default')]",
         "location": "centralus",
         "dependsOn": [
             "[resourceId('Microsoft.EventHub/namespaces', parameters('namespaces_name'))]"
         ],
         "properties": {
             "publicNetworkAccess": "Enabled",
             "defaultAction": "Deny",
             "virtualNetworkRules": [
                 {
                     "subnet": {
                         "id": "[concat(parameters('virtualNetworks_vnet_akv_externalid'), '/subnets/default')]"
                     },
                     "ignoreMissingVnetServiceEndpoint": false
                 }
             ],
             "ipRules": [],
             "trustedServiceAccessEnabled": false
         }
     },
     {
         "type": "Microsoft.EventHub/namespaces/privateEndpointConnections",
         "apiVersion": "2023-01-01-preview",
         "name": "[concat(parameters('namespaces_peterheesbus_name'), '/81263915-15d5-4f14-8d65-25866d745a66')]",
         "location": "centralus",
         "dependsOn": [
             "[resourceId('Microsoft.EventHub/namespaces', parameters('namespaces_peterheesbus_name'))]"
         ],
         "properties": {
             "provisioningState": "Succeeded",
             "privateEndpoint": {
                 "id": "[parameters('privateEndpoints_pvs_eventhub_externalid')]"
             },
             "privateLinkServiceConnectionState": {
                 "status": "Approved",
                 "description": "Auto-Approved"
             }
         }
     }
    

    Bölge konum kodlarını almak için bkz . Azure Konumları. Bir bölgenin kodu, orta ABD = merkezi olan ve boşluk içermeyen bölge adıdır.

  7. Şablondaki özel uç nokta türündeki kaynakları kaldırın.

     {
         "type": "Microsoft.EventHub/namespaces/privateEndpointConnections",
    
     }
    
  8. Event Hubs'ınızda bir hizmet uç noktası yapılandırdıysanız bölümünde networkrulesets , altında virtualNetworkRuleshedef alt ağ için kuralı ekleyin. Hizmet uç noktasının ignoreMissingVnetServiceEndpointhedef bölgede yapılandırılmaması durumunda IaC'nin Event Hubs'ı dağıtamaması için _ bayrağının olarak ayarlandığından Falseemin olun.

    _parameter.json_

    {
      "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
      "contentVersion": "1.0.0.0",
      "parameters": {
    
        "target_vnet_externalid": {
          "value": "virtualnetwork-externalid"
        },
        "target_subnet_name": {
          "value": "subnet-name"
        }
      }
    }
    

    _template.json

    {
        "type": "Microsoft.EventHub/namespaces/networkrulesets",
        "apiVersion": "2023-01-01-preview",
        "name": "[concat(parameters('namespaces_name'), '/default')]",
        "location": "centralus",
        "dependsOn": [
            "[resourceId('Microsoft.EventHub/namespaces', parameters('namespaces_name'))]"
        ],
        "properties": {
            "publicNetworkAccess": "Enabled",
            "defaultAction": "Deny",
            "virtualNetworkRules": [
                {
                    "subnet": {
                        "id": "[concat(parameters('target_vnet_externalid), concat('/subnets/', parameters('target_subnet_name')]"
                    },
                    "ignoreMissingVnetServiceEndpoint": false
                }
            ],
            "ipRules": [],
            "trustedServiceAccessEnabled": false
        }
    },
    
    
  9. Şablonu kaydetmek için Kaydet'i seçin.

Yeniden dağıtım

  1. Azure portalda Kaynak oluştur’u seçin.

  2. Markette Ara'ya şablon dağıtımı yazın ve Şablon dağıtımı (özel şablonlar kullanarak dağıt) öğesini seçin.

  3. Düzenleyicide kendi şablonunuzu oluşturun'u seçin.

  4. Dosya yükle'yi seçin ve ardından yönergeleri izleyerek son bölümde değiştirdiğiniz template.json dosyasını yükleyin.

  5. Özel dağıtım sayfasında şu adımları izleyin:

    1. Bir Azure aboneliği seçin.
    2. Mevcut bir kaynak grubunu seçin veya oluşturun. Kaynak ad alanı bir Event Hubs kümesindeyse, hedef bölgede küme içeren kaynak grubunu seçin.
    3. Hedef konumu veya bölgeyi seçin. Mevcut bir kaynak grubunu seçtiyseniz, bu ayar salt okunurdur.
    4. AYARLAR bölümünde aşağıdaki adımları uygulayın:
      1. Yeni ad alanı adını girin.

        Resource Manager şablonunu dağıtma

      2. Kaynak ad alanınız bir Event Hubs kümesindeyse, dış kimliğin parçası olarak kaynak grubunun ve Event Hubs kümesinin adlarını girin.

        /subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<CLUSTER'S RESOURCE GROUP>/providers/Microsoft.EventHub/clusters/<CLUSTER NAME>
        
      3. Ad alanınızdaki Event Hubs olayları yakalamak için bir Depolama hesabı kullanıyorsa, alan için StorageAccounts_<original storage account name>_external kaynak grubu adını ve depolama hesabını belirtin.

        /subscriptions/0000000000-0000-0000-0000-0000000000000/resourceGroups/<STORAGE'S RESOURCE GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE ACCOUNT NAME>
        
    5. Sayfanın alt kısmındaki Gözden geçir ve oluştur'u seçin.
    6. Gözden geçir ve oluştur sayfasında ayarları gözden geçirin ve oluştur'u seçin.
  6. Ağ yapılandırma ayarlarının (özel uç noktalar) yeni Event Hubs'da yeniden yapılandırılması gerekir.

Atma veya temizleme

Dağıtımdan sonra, yeniden başlamak isterseniz hedef Event Hubs ad alanını silebilir ve bu makalenin Hazırlama ve Taşıma bölümlerinde açıklanan adımları yineleyebilirsiniz.

Değişiklikleri işlemek ve bir Event Hubs ad alanının taşınmasını tamamlamak için özgün bölgedeki Event Hubs ad alanını silin. Ad alanını silmeden önce ad alanında tüm olayları işlediğinize emin olun.

Azure portalını kullanarak Event Hubs ad alanını (kaynak veya hedef) silmek için:

  1. Azure portalının üst kısmındaki arama penceresinde Event Hubs yazın ve arama sonuçlarından Event Hubs'ı seçin. Event Hubs ad alanlarını bir listede görürsünüz.

  2. Silinecek hedef ad alanını seçin ve araç çubuğundan Sil'i seçin.

    Ad alanını sil - düğmesini gösteren ekran görüntüsü

  3. Ad Alanını Sil sayfasında, ad alanı adını yazarak silme işlemini onaylayın ve ardından Sil'i seçin.

Sonraki adımlar

Bu nasıl yapılır makalesinde Event Hubs ad alanını bir bölgeden diğerine taşımayı öğrendiniz.

Event Hubs kümesini bir bölgeden başka bir bölgeye taşıma yönergeleri için Event Hubs'ı başka bir bölgeye taşıma makalesine bakın.

Kaynakları bölgeler arasında taşıma ve Azure'da olağanüstü durum kurtarma hakkında daha fazla bilgi edinmek için bkz: