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 :
- Genel IP
- Sanal Ağ
- Event Hubs Ad Alanı
- Event Hubs Kümesi
- Depolama Hesabı
İpucu
Yakalama etkinleştirildiğinde, bir Depolama Hesabını kaynaktan yeniden yerleştirebilir veya hedef bölgede mevcut bir hesabı kullanabilirsiniz.
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.
Azure Portal’ında oturum açın.
Tüm kaynaklar'ı ve ardından Event Hubs ad alanınızı seçin.
Event Hubs Ad Alanı sayfasında, soldaki menüden Otomasyon'un altında Şablonu dışarı aktar'ı seçin.
Şablonu dışarı aktar sayfasında İndir'i seçin.
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.
Şablon dağıtımı'nı seçin.
Azure portalında Oluştur'u seçin.
Düzenleyicide kendi şablonunuzu oluşturun'u seçin.
Dosya yükle'yi seçin ve ardından yönergeleri izleyerek son bölümde indirdiğiniz template.json dosyasını yükleyin.
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-name
ayarlar."$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" }, },
template.json dosyasındaki konum özelliğini hedef bölgede düzenleyin. Bu örnek hedef bölgeyi olarak
centralus
ayarlar."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.
Şablondaki özel uç nokta türündeki kaynakları kaldırın.
{ "type": "Microsoft.EventHub/namespaces/privateEndpointConnections", }
Event Hubs'ınızda bir hizmet uç noktası yapılandırdıysanız bölümünde
networkrulesets
, altındavirtualNetworkRules
hedef alt ağ için kuralı ekleyin. Hizmet uç noktasınınignoreMissingVnetServiceEndpoint
hedef bölgede yapılandırılmaması durumunda IaC'nin Event Hubs'ı dağıtamaması için _ bayrağının olarak ayarlandığındanFalse
emin 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 } },
Şablonu kaydetmek için Kaydet'i seçin.
Yeniden dağıtım
Azure portalda Kaynak oluştur’u seçin.
Markette Ara'ya şablon dağıtımı yazın ve Şablon dağıtımı (özel şablonlar kullanarak dağıt) öğesini seçin.
Düzenleyicide kendi şablonunuzu oluşturun'u seçin.
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.
Özel dağıtım sayfasında şu adımları izleyin:
- Bir Azure aboneliği seçin.
- 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.
- Hedef konumu veya bölgeyi seçin. Mevcut bir kaynak grubunu seçtiyseniz, bu ayar salt okunurdur.
- AYARLAR bölümünde aşağıdaki adımları uygulayın:
Yeni ad alanı adını girin.
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>
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>
- Sayfanın alt kısmındaki Gözden geçir ve oluştur'u seçin.
- Gözden geçir ve oluştur sayfasında ayarları gözden geçirin ve oluştur'u seçin.
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:
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.
Silinecek hedef ad alanını seçin ve araç çubuğundan Sil'i seçin.
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: