Aracılığıyla paylaş


PostgreSQL için Azure Cosmos DB'de yüksek kullanılabilirlik

Önemli

PostgreSQL için Azure Cosmos DB artık yeni projeler için desteklenmemektedir. Bu hizmeti yeni projeler için kullanmayın. Bunun yerine, şu iki hizmetlerden birini kullanın:

Yüksek kullanılabilirlik (HA), bir kümedeki her düğümün yedek kopyalarını koruyarak veritabanı kapalı kalma süresini en aza indirir. Bir düğüm kapanırsa, PostgreSQL için Azure Cosmos DB, başarısız düğümden gelen bağlantıları yedek düğüme yönlendirir. Yük devretme işlemi birkaç dakika içinde gerçekleşir ve veritabanı kümesindeki terfi edilmiş düğümler, PostgreSQL senkron akış replikasyonu sayesinde her zaman güncel verilere sahiptir.

Bir kümedeki tüm birincil düğümler, düğümler arasında daha iyi gecikme süresi için tek bir kullanılabilirlik alanında sağlanır. Tercih edilen kullanılabilirlik alanı, tüm küme düğümlerini uygulamanın dağıtıldığı aynı kullanılabilirlik alanına yerleştirmenizi sağlar. Bu yakınlık, uygulama-veritabanı gecikme süresini azaltarak performansı daha da geliştirebilir. Bekleme düğümleri başka bir erişilebilirlik bölgesine yerleştirilir. Azure portalı , kümedeki her birincil düğümün kullanılabilirlik bölgesini görüntüler . REST API'leri gibi programlı yöntemlerden birini kullanarak kümedeki her düğümün kullanılabilirlik bölgesini de de kontrol edebilirsiniz.

HA etkinleştirilmemiş olsa bile, her düğümün Azure Depolama hizmeti tarafından tutulan üç eşzamanlı çoğaltmaya sahip kendi yerel olarak yedekli depolama alanı (LRS) vardır. Tek bir çoğaltma hatası varsa, Azure Depolama hizmeti tarafından algılanır ve saydam olarak yeniden oluşturulur. LRS depolama dayanıklılığı için bu sayfadaki ölçümlere bakın.

HA etkinleştirildiğinde PostgreSQL için Azure Cosmos DB, kümedeki her birincil düğüm için bir bekleme düğümü çalıştırır. Ana sistem ve yedek, eşzamanlı PostgreSQL replikasyonu kullanır. Bu çoğaltma, birincil düğüm başarısız olursa müşterilerin öngörülebilir kapalı kalma süresine sahip olmasını sağlar. Özetle, hizmetimiz birincil düğümlerde bir hata algılar ve sıfır veri kaybıyla bekleme düğümlerine yük devreder.

Koordinatör düğümünde HA'nın avantajlarından yararlanmak için veritabanı uygulamalarının bırakılan bağlantıları ve başarısız işlemleri algılayıp yeniden denemesi gerekir. Yeni terfi ettirilen koordinatöre aynı bağlantı dizgisi ile erişilebilir.

Yüksek kullanılabilirlik durumları

Kurtarma üç aşamaya ayrılabilir: algılama, yük devretme ve tam kurtarma. PostgreSQL için Azure Cosmos DB her düğümde düzenli sistem durumu denetimleri çalıştırır ve dört başarısız denetimden sonra bir düğümün devre dışı olduğunu belirler. PostgreSQL için Azure Cosmos DB, bir yedeği birincil düğüm durumuna yükseltir (yük devretme) ve ileride yedek olacak yeni bir düğüm oluşturur. Akış replikasyonu başlar ve yeni düğüm güncel duruma getirilir. Tüm veriler çoğaltıldığında düğüm tam kurtarma aşamasına ulaşmıştır.

PostgreSQL için Azure Cosmos DB, yük devretme ilerleme durumunu Azure portalındaki kümeler için Genel Bakış sayfasında görüntüler.

  • İyi durumda: HA etkinleştirilir ve düğüm bekleme konumuna tam olarak çoğaltılır.
  • Yük devretme devam ediyor: Birincil düğümde bir arıza algılandı ve yedek düğüme yük devretme başlatıldı. Bu durum, hazır bekleyen düğüme yük devretme tamamlandıktan sonra hazır oluşturma durumuna geçer ve bekleyen düğüm yeni birincil olur.
  • Yedek oluşturuluyor: Önceki yedek birincil konumuna yükseltildi ve bunun için yeni bir yedek oluşturuluyor. Yeni ikincil hazır olduğunda, bu durum devam eden çoğaltma'ya geçer.
  • Çoğaltma devam ediyor: Yeni bekleme düğümü sağlanır ve veri eşitleme işlemi devam ediyor. Tüm veriler yeni bekleme konumuna çoğaltıldıktan sonra, birincil ve bekleme düğümleri arasında zaman uyumlu çoğaltma etkinleştirilir ve düğümlerin durumu sağlıklı duruma geri döner.
  • Hayır: BU düğümde HA etkin değil.

Sonraki adımlar