Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede, Azure portalını kullanarak etkin bir coğrafi çoğaltma önbelleğini yapılandırmayı öğreneceksiniz.
Etkin coğrafi çoğaltma, azure bölgelerine yayılan tek bir önbellekte en fazla beş Azure Yönetilen Redis örneğini gruplandırır. Tüm örnekler yerel, birincil önbellekler gibi davranır. Bir uygulama, okuma ve yazma istekleri için hangi örnek veya örneklerin kullanılacağına karar verir.
Uyarı
Azure bölgeleri arasında veri aktarımı standart bant genişliği fiyatlarıyla ücretlendirilir.
Etkin coğrafi çoğaltma nasıl çalışır?
Etkin coğrafi çoğaltma, verileri kıtalar arasında dağıtılabilir Redis örnekleri arasında sorunsuz bir şekilde dağıtmak için çakışmasız çoğaltılmış veri türlerini (CRDT' ler) kullanır. Bu örnekler, bir örneğe yazma işleminin otomatik olarak aynı coğrafi çoğaltma grubundaki diğer örneklere yansıtıldığı etkin-etkin bir yapılandırmaya bağlanır. Bu çift yönlü veri çoğaltması, verilerin birincil çoğaltmadan coğrafi çoğaltmaya çoğaltıldığı ancak diğer yönde çoğaltılmadığı tek yönlü etkin-pasif çoğaltma yaklaşımlarından farklıdır. Bu, çeşitli şekillerde yaygın olarak kullanılan güçlü bir araçtır:
Önbelleğe alma özelliğini kullanıcılara daha yakın dağıtarak yerel gecikme süresi sağlama. Etkin coğrafi olarak çoğaltılmış Redis örneklerinden oluşan bir ağ kullanarak önbellekleri her bölgedeki kullanıcılara coğrafi olarak daha yakın bir konuma yerleştirerek gecikme süresini azaltabilir ve uygulama performansını geliştirebilirsiniz.
Genel uygulamalar eşitleniyor. Coğrafi olarak çoğaltılan önbellekler tek bir Redis örneği gibi göründüğünden, verileri bölgelere göre segmentlere ayırmanıza gerek kalmadan verileri genel olarak dağıtabilirsiniz. Örneğin, her coğrafi bölge için ayrı bir puan tablosu sağlamak yerine dünya çapındaki tüm kullanıcılar için bir oyun puan tablosu sağlamak için tek bir Redis sıralamalı kümesi kullanabilirsiniz.
Bölgesel kesintilerden kaynaklanan kapalı kalma süresini ve riski azaltma. Coğrafi çoğaltma grubundaki her Redis örneği, gruptaki diğer örneklerden alınan en son verilerle sürekli güncelleştirildiğinden, veriler bölgesel bir kesinti sırasında iyi korunur. Uygulamalar geçici olarak gruptaki diğer örneklerden birini kullanmaya geçebilir ve bölge yeniden çevrimiçi olduğunda Redis örneği, coğrafi olarak çoğaltılmış diğer önbelleklerdeki verilerle otomatik olarak yeniden yüklenir.
Etkin coğrafi çoğaltmanın nasıl çalıştığına ilişkin daha ayrıntılı bir döküm için bkz . Etkin-Etkin coğrafi dağıtım (CRDTS tabanlı)
Kullanılabilirlik kapsamı
Katman | Bellek için İyileştirilmiş, Dengeli, İşlem için İyileştirilmiş | Flash İçin Optimize Edilmiş |
---|---|---|
Mevcut | Evet (B0 ve B1 hariç) | Evet |
Önemli
Dengeli B0 ve B1 SKU'ları etkin coğrafi çoğaltmayı desteklemez.
Etkin coğrafi çoğaltma ön koşulları
Etkin coğrafi çoğaltma kullanırken birkaç kısıtlama vardır:
Etkin coğrafi çoğaltma yalnızca Azure Yönetilen Redis yüksek kullanılabilirlik yapılandırmasındaysa, yani çoğaltmayı kullandığında desteklenir.
Yalnızca RediSearch ve RedisJSON modülleri desteklenir
Flash İçin İyileştirilmiş katmanında yalnızca Çıkarma Yok çıkarma ilkesi kullanılabilir. Tüm çıkarma ilkeleri diğer katmanlarda desteklenir.
Etkin coğrafi çoğaltma daha üstün bir deneyim sağladığından veri kalıcılığı desteklenmez.
Coğrafi çoğaltma grubundaki tüm önbellekler aynı yapılandırmaya sahip olmalıdır. Örneğin, tüm önbellekler aynı SKU, kapasite, çıkarma ilkesi, kümeleme ilkesi, modüller ve TLS ayarına sahip olmalıdır.
Coğrafi çoğaltma grubundaki bir örnek ölçeklendirilirse, başka bir ölçeklendirme gerçekleşmeden önce bu gruptaki diğer örneklerin aynı boyuta ölçeklendirilmesi gerekir. Daha fazla bilgi için bkz. Coğrafi çoğaltma grubundaki örnekleri ölçeklendirme.
Etkin coğrafi çoğaltma kullanırken
FLUSHALL
veFLUSHDB
Redis komutlarını kullanamazsınız. Komutların yasaklanması verilerin istenmeden silinmesini önler. Bunun yerine boşaltma işlemini kullanın.
Etkin coğrafi çoğaltma grubu oluşturma veya böyle bir gruba katılma
Yeni bir Azure Yönetilen Redis kaynağı oluştururken Etkin coğrafi çoğaltma sekmesini seçin. Çalışma bölmesinde Yeni grup oluştur'u veya Var olan gruba katıl'ı seçin. Formları gerektiği gibi doldurun.
- İlk önbellek örneği için yeni bir çoğaltma grubu oluşturun. Dilerseniz listeden mevcut bir çoğaltma grubunu da seçebilirsiniz.
Bitirmek için Yapılandır'ı seçin.
İlk önbelleğin başarıyla oluşturulmasını bekleyin. İşlem tamamlandığında Etkin coğrafi çoğaltma, Yapılandırıldı olarak ayarlanmış olur. Coğrafi çoğaltma grubundaki her önbellek örneği için önceki adımları yineleyin.
Etkin bir coğrafi çoğaltma grubuna mevcut bir örneği ekleme
Etkin bir coğrafi çoğaltma grubuna mevcut bir önbellek örneği eklemek için REST API'yi kullanarak zorla bağlantı eylemi gerçekleştirebilirsiniz.
Bağlı olan önbellek örneğindeki tüm veriler atılır. Örnek ayrıca coğrafi çoğaltma grubuna katılırken birkaç dakika boyunca geçici olarak kullanılamaz. Portal ve CLI desteği bu özellik için henüz kullanılamıyor.
Etkin bir coğrafi çoğaltma grubundan bir önbellek örneğini kaldırma
Etkin bir coğrafi çoğaltma grubundan bir önbellek örneğini kaldırmak için örneği silmeniz yeterlidir. Kalan örnekler kendilerini otomatik olarak yeniden yapılandırır.
Bölgesel kesinti olduğunda bağlantıyı kaldırmayı zorlama
Etkin coğrafi çoğaltma, Azure Managed Redis kullanırken kullanılabilirliği önemli ölçüde artıran güçlü bir özelliktir. Ancak bölgesel bir kesinti olması ihtimaline karşı önbelleklerinizi hazırlamak için adımlar atmanız gerekir.
Örneğin, şu ipuçlarını göz önünde bulundurun:
Bir bölge kapanırsa coğrafi çoğaltma grubundaki diğer hangi önbelleğe geçileceğini önceden belirleyin.
Tüm uygulamaların ve istemcilerin tanımlanan yedekleme önbelleğine erişebilmesi için güvenlik duvarlarının ayarlandığından emin olun.
Coğrafi çoğaltma grubundaki her önbelleğin kendi erişim anahtarı vardır. Yedekleme önbelleğini hedeflerken uygulamanın farklı erişim anahtarlarına nasıl geçiş yapacağını belirleyin.
Coğrafi çoğaltma grubundaki bir önbellek devre dışı kalırsa coğrafi çoğaltma grubundaki tüm önbelleklerde meta veriler birikmeye başlar. Yazma işlemleri tüm önbelleklerle yeniden eşitleninceye kadar meta veriler atılamaz. Meta verilerin birikmesini engellemek için, devre dışı olan önbelleğin bağlantısını zorla kaldırabilirsiniz. Önbellekteki kullanılabilir belleği izlemeyi ve özellikle yoğun yazma iş yükleri için bellek baskısı varsa bağlantıyı kaldırmayı göz önünde bulundurun.
Devre kesici düzeni de kullanılabilir. Bölgesel kesinti yaşayan bir önbellekten trafiği otomatik olarak aynı coğrafi çoğaltma grubundaki bir yedekleme önbelleğine yönlendirmek için düzeni kullanın. Yeniden yönlendirmeyi etkinleştirmek için Azure Traffic Manager veya Azure Load Balancer gibi Azure hizmetlerini kullanın.
Bölgesel kesinti nedeniyle çoğaltma grubunuzdaki önbelleklerden birinin kullanılamaması durumunda, kullanılamayan önbelleği çoğaltma grubundan zorla kaldırabilirsiniz.
Çoğaltma grubundaki kalan önbellekler, kullanılamayan önbellekle paylaşılmayan meta verileri depolamaya başladığından, kullanılamayan önbelleği kaldırmalısınız. Bu durumda, çoğaltma grubunuzdaki kullanılabilir önbelleklerin belleği tükenebilir.
Azure portalına gidin ve çoğaltma grubundaki kullanılabilir durumda olan önbelleklerden birini seçin.
Çalışma bölmesindeki ayarları görmek için soldaki Kaynak menüsünde Etkin coğrafi çoğaltma'yı seçin.
Bağlantısını zorla kaldırmanız gereken önbelleği, kutusunu işaretleyerek seçin.
Bağlantıyı zorla kaldır'ı seçin ve Tamam'ı seçerek işlemi onaylayın.
Etkilenen bölgenin kullanılabilirliği yeniden sağlandıktan sonra, etkilenen önbelleği silmeniz ve çoğaltma grubunuza geri eklemek için yeniden oluşturmanız gerekir.
Azure CLI veya PowerShell kullanarak etkin coğrafi çoğaltmayı ayarlama
Azure Komut Satırı Arayüzü (Azure CLI)
Yeni bir önbellek ve coğrafi çoğaltma grubu oluşturmak veya mevcut bir coğrafi çoğaltma grubuna yeni bir önbellek eklemek için Azure CLI'yi kullanın. Daha fazla bilgi için bkz. az redisenterprise create.
Azure CLI'yi kullanarak yeni bir coğrafi çoğaltma grubunda yeni bir Azure Managed Redis örneği oluşturma
Bu örnekte, Doğu ABD bölgesinde Cache1 adlı yeni bir Azure Managed Redis Dengeli B10 örneği oluşturulmaktadır. Ardından önbellek, replicationGroup adlı yeni bir etkin coğrafi çoğaltma grubuna eklenir:
az redisenterprise create --location "East US" --cluster-name "Cache1" --sku "Balanced_B10" --resource-group "myResourceGroup" --group-nickname "replicationGroup" --linked-databases id="/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache1/databases/default"
Etkin coğrafi çoğaltmayı düzgün şekilde yapılandırmak için, oluşturulan önbellek örneğinin kimliği --linked-databases
parametresiyle eklenmelidir. Kimlik şu biçimdedir:
/subscriptions/<your-subscription-ID>/resourceGroups/<your-resource-group-name>/providers/Microsoft.Cache/redisEnterprise/<your-cache-name>/databases/default
Azure CLI kullanarak mevcut bir coğrafi çoğaltma grubunda yeni Azure Managed Redis örneği oluşturma
Bu örnekte, Batı ABD bölgesinde Cache2 adlı yeni bir Dengeli B10 önbellek örneği oluşturulmaktadır. Ardından betik, önbelleği önceki bir yordamda replicationGroup
etkin coğrafi çoğaltma grubu oluşturma işlemine ekler. Bu şekilde, Ccahe1 ile etkin-etkin bir yapılandırmaya bağlanır.
az redisenterprise create --location "West US" --cluster-name "Cache2" --sku "Balanced_B10" --resource-group "myResourceGroup" --group-nickname "replicationGroup" --linked-databases id="/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache1/databases/default" --linked-databases id="/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache2/databases/default"
Daha önce olduğu gibi, parametresini kullanarak hem Cache1 hem de --linked-databases
'yi listelemeniz gerekir.
Azure PowerShell
Yeni bir önbellek ve coğrafi çoğaltma grubu oluşturmak veya mevcut bir coğrafi çoğaltma grubuna yeni bir önbellek eklemek için Azure PowerShell'i kullanın. Daha fazla bilgi için bkz. New-AzRedisEnterpriseCache.
PowerShell'i kullanarak yeni bir coğrafi çoğaltma grubunda yeni bir Azure Managed Redis örneği oluşturma
Bu örnekte, Doğu ABD bölgesinde Cache1 adlı yeni bir Azure Managed Redis Dengeli B10 önbellek örneği oluşturulmaktadır. Ardından önbellek, replicationGroup adlı yeni bir etkin coğrafi çoğaltma grubuna eklenir:
New-AzRedisEnterpriseCache -Name "Cache1" -ResourceGroupName "myResourceGroup" -Location "East US" -Sku "Balanced_B10" -GroupNickname "replicationGroup" -LinkedDatabase '{id:"/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache1/databases/default"}'
Etkin coğrafi çoğaltmayı düzgün şekilde yapılandırmak için, oluşturulan önbellek örneğinin kimliği -LinkedDatabase
parametresiyle eklenmelidir. Kimlik şu biçimdedir:
/subscriptions/<your-subscription-ID>/resourceGroups/<your-resource-group-name>/providers/Microsoft.Cache/redisEnterprise/<your-cache-name>/databases/default
PowerShell'i kullanarak mevcut bir coğrafi çoğaltma grubunda yeni Azure Managed Redis örneği oluşturma
Bu örnekte, Batı ABD bölgesinde Cache2 adlı yeni bir Dengeli B10 önbellek örneği oluşturulmaktadır. Ardından betik önbelleği önceki yordamda oluşturulan replicationGroup adlı etkin coğrafi çoğaltma grubuna ekler. Sonuç olarak, iki önbellek Cache1 ve Cache2 etkin-etkin bir yapılandırmada bağlanır.
New-AzRedisEnterpriseCache -Name "Cache2" -ResourceGroupName "myResourceGroup" -Location "West US" -Sku "Balanced_B10" -GroupNickname "replicationGroup" -LinkedDatabase '{id:"/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache1/databases/default"}', '{id:"/subscriptions/34b6ecbd-ab5c-4768-b0b8-bf587aba80f6/resourceGroups/myResourceGroup/providers/Microsoft.Cache/redisEnterprise/Cache2/databases/default"}'
Daha önce olduğu gibi, parametresini kullanarak hem Cache1 hem de -LinkedDatabase
'yi listelemeniz gerekir.
Coğrafi çoğaltma grubundaki örnekleri ölçeklendirme
Etkin coğrafi çoğaltma kullanacak şekilde yapılandırılmış örnekleri ölçeklendirmek mümkündür. Ancak, farklı önbellek boyutlarının karışımından oluşan bir coğrafi çoğaltma grubu sorunlara yol açabilir. Bu sorunların ortaya çıkmasını önlemek için, bir coğrafi çoğaltma grubundaki tüm önbelleklerin aynı boyutta ve performans katmanında olması gerekir.
Ölçeklendirme için boyut veya katmanın değiştirilmesi gerektiğinden ve coğrafi çoğaltma grubundaki tüm örneklerin aynı anda ölçeklendirilmesi zor olduğundan Azure Yönetilen Redis'in bir kilitleme mekanizması vardır. Coğrafi çoğaltma grubundaki bir örneği ölçeklendirirseniz, temel alınan VM ölçeklendirilir, ancak diğer örnekler de ölçeklendirilene kadar kullanılabilir bellek özgün boyuta eşlenir. Kalan örnekler için diğer ölçeklendirme işlemleri, ölçeklendirilecek ilk önbellekle aynı yapılandırmayla eşleşene kadar kilitlenir.
Ölçeklendirme örneği
Örneğin, coğrafi çoğaltma grubunuzda tüm Bellek için İyileştirilmiş M10 örnekleri olmak üzere üç örneğiniz olabilir:
Örnek Adı | Redis00 | Redis01 | Redis02 |
---|---|---|---|
Türü | Bellek İçin İyileştirilmiş M10 | Bellek İçin İyileştirilmiş M10 | Bellek İçin İyileştirilmiş M10 |
Diyelim bu coğrafi çoğaltma grubundaki her örneği İşlem İçin İyileştirilmiş X20 örneğine ölçeklendirmek istiyorsunuz. İlk olarak önbelleklerden birini X20'ye ölçeklendirirsiniz:
Örnek Adı | Redis00 | Redis01 | Redis02 |
---|---|---|---|
Türü | İşlem İçin İyileştirilmiş X20 | Bellek İçin İyileştirilmiş M10 | Bellek İçin İyileştirilmiş M10 |
Bu noktada Redis01
ve Redis02
örnekleri yalnızca İşlem İçin İyileştirilmiş X20 örneğinin ölçeğini artırabilir. Diğer tüm ölçeklendirme işlemleri engellenir.
Uyarı
Bu Redis00
noktada örneğin daha fazla ölçeklendirmesi engellenmez. Ancak bir kez Redis01
engellenir veya Redis02
İşlem için İyileştirilmiş X20 olacak şekilde ölçeklendirilir.
Her örnek aynı katmana ve boyuta ölçeklendirildikten sonra tüm ölçeklendirme kilitleri kaldırılır:
Örnek Adı | Redis00 | Redis01 | Redis02 |
---|---|---|---|
Türü | İşlem İçin İyileştirilmiş X20 | İşlem İçin İyileştirilmiş X20 | İşlem İçin İyileştirilmiş X20 |
Boşaltma işlemi
Yanlışlıkla veri kaybı olasılığı nedeniyle FLUSHALL
ve FLUSHDB
Redis komutlarını coğrafi çoğaltma grubunda bulunan herhangi bir önbellek örneğiyle kullanamazsınız. Bunun yerine, Etkin coğrafi çoğaltma çalışma bölmesinin en üstünde bulunan Önbellekleri Temizle düğmesini kullanın.
Coğrafi çoğaltma Ölçümü
Azure Yönetilen Redis'teki Coğrafi Çoğaltma durumu ölçümü, coğrafi olarak çoğaltılan kümelerin durumunu izlemeye yardımcı olur. Coğrafi çoğaltmalar arasındaki eşitleme durumunu izlemek için bu ölçümü kullanırsınız.
Azure portalında Coğrafi Çoğaltma sağlıklı ölçümünü izlemek için:
Azure portalını açın ve Azure Yönetilen Redis örneğinizi seçin.
Kaynak menüsünde İzleme bölümünün altında Ölçümler'i seçin.
Ölçüm Ekle'yi seçin ve Coğrafi Çoğaltma durumu ölçümünü seçin.
Gerekirse, belirli coğrafi çoğaltmalar için filtreler uygulayın.
Coğrafi çoğaltma sağlıklı ölçümü 60 dakikadan fazla süreyle sürekli olarak iyi durumda olmayan bir değer (0) yayıyorsa sizi bilgilendirecek bir uyarı yapılandırabilirsiniz.
Yeni Uyarı Kuralı'nı seçin.
Ölçüm değeri en az 60 dakika (önerilen süre) için 0 ise tetiklenecek koşulu tanımlayın.
Bildirimler için eylem grupları ekleyin; örneğin: e-posta, SMS ve diğerleri.
Uyarıyı kaydedin.
Redis Enterprise önbelleğiniz için uyarıları ayarlama hakkında daha fazla bilgi için Redis Caches'i izleme bölümündeki uyarı bölümüne bakın.
Önemli
Azure veya müşteri tarafından başlatılan bakım olayları veya ölçeklendirme gibi rutin işlemler nedeniyle bu ölçüm geçici olarak iyi durumda olmayabilir. Hatalı alarmları önlemek için, 60 dakikalık bir gözlem penceresi ayarlamanızı öneririz; burada ölçüm, müdahale gerektiren bir sorunu gösterdiğinden uyarı oluşturmak için uygun zaman olarak iyi durumda kalmaya devam eder.
Coğrafi çoğaltmalar arasında eşitleme sorunlarına neden olabilecek yaygın İstemci tarafı sorunları
Özel hashtag'lerin kullanımı – Redis'te özel hashtag'lerin kullanılması verilerin parçalar arasında eşit olmayan bir şekilde dağıtılmasını sağlayabilir ve bu da coğrafi çoğaltmalarda performans sorunlarına ve eşitleme sorunlarına neden olabilir, bu nedenle veritabanının birden çok anahtar işlemi gerçekleştirmesi gerekmediği sürece özel hashtag'leri kullanmaktan kaçının.
Büyük anahtar boyutu - Büyük anahtarlar coğrafi çoğaltmalar arasında eşitleme sorunları oluşturabilir. Sorunsuz performansı ve güvenilir çoğaltmayı korumak için coğrafi çoğaltma kullanırken anahtar boyutlarını 500 MB'ın altında tutmanızı öneririz. Tek tek anahtar boyutu 2 GB'a yaklaşırsa önbellek coğrafi çoğaltma durumu sorunlarıyla karşı karşıyadır.
Azure CLI veya PowerShell kullanarak önbellekleri boşaltma
Azure CLI ve PowerShell, boşaltma işlemini tetiklemek amacıyla da kullanılabilir. Azure CLI'yi kullanma hakkında daha fazla bilgi için bkz. az redisenterprise database flush. PowerShell'i kullanma hakkında daha fazla bilgi için bkz. Invoke-AzRedisEnterpriseCacheDatabaseFlush.
Önemli
Önbellekleri Boşalt özelliğini kullanırken dikkatli olun. Düğme seçildiğinde geçerli önbellekten ve coğrafi çoğaltma grubundaki TÜM bağlı önbelleklerden tüm veriler kaldırılır.
Azure rol tabanlı erişim denetimini kullanarak özelliğe erişimi yönetin. Tüm önbellekleri boşaltma erişimi yalnızca yetkili kullanıcılara verilmelidir.