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.
Okuma replikası özelliği, PostgreSQL için Azure Veri Tabanı esnek sunucu örneğindeki verileri salt okunur replikaya çoğaltmanıza olanak tanır. Çoğaltmalar PostgreSQL altyapısının yerel fiziksel çoğaltma teknolojisiyle zaman uyumsuz olarak güncelleştirilir. Varsayılan işlem modu, çoğaltma yuvalarını kullanarak çoğaltma akışı yapmaktır. Gerektiğinde, güncellemeleri gerçekleştirmek için dosya tabanlı günlük gönderimi kullanılır. Birincil sunucudan en fazla beş kopyaya çoğaltma yapabilirsiniz.
Çoğaltmalar, normal PostgreSQL için Azure Veri Tabanı esnek sunucu örneklerine benzer şekilde yönettiğiniz yeni sunuculardır. Her okuma replikası için, vCores olarak sağlanan işlem ve GB/ay olarak sağlanan depolama için faturalandırılırsınız.
Okuma replikası oluşturmayı öğrenin.
Okuma amaçlı çoğaltma ne zaman kullanılır?
Okuma replikası özelliği, yoğun okuma gerektiren iş yüklerinin performansını ve ölçeklenebilirliğini artırmaya yardımcı olur. Okuma iş yükleri replikalara, yazma iş yükleri ise birincil sunucuya yönlendirilebilir. Okuma replikaları farklı bir bölgeye de dağıtılabilir ve eğer olağanüstü durum kurtarma gerekirse okuma-yazma sunucusuna yükseltilebilir.
Tipik bir senaryo, BI (İş Zekası) ve analitik iş yüklerinin raporlama için veri kaynağı olarak okuma replikasını kullanmasıdır.
Çünkü replikalar salt okunur olduklarından dolayı, birincildeki yazma kapasitesi yüklerini doğrudan azaltmazlar.
Değerlendirmeler
Okuma replikaları, sorguların yükünün azaltılmasının yararlı olduğu ve küçük bir gecikmenin yönetilebilir olduğu senaryolar için öncelikli olarak tasarlanmıştır. Çoğu iş yükü için birincilden yakın gerçek zamanlı güncellemeler sağlamak üzere optimize edilmiştir, bu da yoğun okuma içeren senaryolar için mükemmel bir çözüm sunar. Ancak, bunların en güncel veri doğruluğu gerektiren zaman uyumlu çoğaltma senaryolarına yönelik olmadığını unutmayın. Çoğaltmadaki veriler sonunda birincil değerle tutarlı hale gelmiş olsa da, genellikle birkaç saniye ile dakika arasında bir gecikme olabilir ve bazı ağır iş yükü veya yüksek gecikmeli senaryolarda bu gecikme saatlere kadar uzatılabilir. Genellikle, birincil ile aynı bölgede bulunan okuma replikaları, coğrafi replikalara göre daha az gecikme süresine sahiptir, çünkü ikinci tür replikalar genellikle coğrafi uzaklıktan kaynaklanan gecikme süresiyle başa çıkar. Coğrafi çoğaltmanın performans etkileri hakkında daha fazla içgörü için Coğrafi çoğaltma makalesine bakın. Replikadaki veriler sonunda ana verilerle tutarlı hale gelir. Bu gecikmeye ayak uydurabilecek iş yükleri için bu özelliği kullanın.
Uyarı
İş yüklerinin çoğunda, okuma amaçlı çoğaltmalar birincil sunucudan neredeyse gerçek zamanlı güncelleştirmeler sunar. Ancak, kalıcı yoğun yazma gerektiren birincil iş yükleriyle, çoğaltma gecikmesi büyümeye devam edebilir ve yalnızca birincil sunucuyla senkronize olmayı başarabilir. Bu, WAL dosyaları yalnızca çoğaltmada alındığında silindiğinden, birincil depolama kullanımını da artırabilir. Yoğun yazma gerektiren iş yükleri tamamlandıktan sonra bu durum devam ederse, okuma çoğaltmasını silip yeniden oluşturmak, çoğaltmanın gecikme sürelerini düzelterek iyi bir duruma gelmesini sağlayabilir. Asenkron okuma replikaları, bu tür ağır yazma iş yükleri için uygun değildir. Uygulamanız için read replikalarını değerlendirirken, tam bir uygulama iş yükü döngüsü boyunca, yoğun ve düşük yoğunluklu zamanlarda, replikadaki gecikmeyi izleyin. Bu, iş yükü döngüsünün çeşitli noktalarında olası gecikmeyi ve beklenen RTO/RPO'yu değerlendirmek için önemlidir.
Kopya oluştur
PostgreSQL için Azure Veri Tabanı esnek sunucu örneği için birincil sunucu, hizmeti destekleyen herhangi bir bölgede dağıtılabilir. Birincil sunucunun çoğaltmalarını aynı bölgede veya PostgreSQL için Azure Veri Tabanı kullanılabilir olduğu farklı genel Azure bölgelerinde oluşturabilirsiniz. Çoğaltma oluşturma özelliği artık bağımsız bulutlardaki bazı Azure bölgelere genişletildi. Çoğaltma oluşturabileceğiniz bağımsız bulut bölgelerinin listesi için Coğrafi çoğaltma makalesine bakın.
Çoğaltma oluşturma iş akışını başlattığınızda, boş bir PostgreSQL için Azure Veri Tabanı esnek sunucu örneği oluşturulur. Yeni sunucu birincil sunucudaki verilerle doldurulur. Aynı bölgede replikaların oluşturulması için bir anlık görüntü yöntemi kullanılır. Bu nedenle, oluşturma zamanı verilerin boyutundan bağımsızdır. Coğrafi çoğaltmalar, birincil örneğin temel yedeklemesi kullanılarak oluşturulur ve daha sonra ağ üzerinden iletilir; bu nedenle oluşturma süresi, birincil boyuta bağlı olarak dakikalar ile birkaç saat arasında değişebilir.
Çoğaltma yalnızca iki koşul karşılandığında başarıyla oluşturulmuş olarak kabul edilir: birincil örneğin tüm yedeği çoğaltmaya kopyalanmalıdır ve işlem günlüklerinin 1 GB'tan fazla gecikme olmadan eşitlenmesi gerekir.
Başarılı bir oluşturma işlemi elde etmek için, yüksek işlem yükü zamanlarında çoğaltma yapmaktan kaçının. Örneğin, diğer kaynaklardan PostgreSQL için Azure Veri Tabanı esnek sunucu örneğine geçiş yaparken veya ağır toplu yükleme işlemleri sırasında çoğaltma oluşturmaktan kaçınmanız gerekir. Şu anda verileri geçiriyor veya büyük miktarda veri yüklüyorsanız, en iyisi önce bu görevi tamamlamaktır. Tamamladıktan sonra yedekleri ayarlamaya başlayabilirsiniz. Geçiş veya toplu yükleme işlemi tamamlandıktan sonra işlem günlüğü boyutunun normal boyutuna geri dönüp dönmediğini denetleyin. Genellikle işlem günlüğü boyutu örneğinizin max_wal_size sunucu parametresinde tanımlanan değere yakın olmalıdır. İşlem günlüğü tarafından kullanılan depolama miktarına ilişkin içgörüler sağlayan İşlem Günlüğü Depolama Kullanılan ölçümünü kullanarak işlem günlüğü depolama alanı ayak izini izleyebilirsiniz. Bu ölçümü izleyerek işlem günlüğü boyutunun beklenen aralıkta olduğundan ve çoğaltma oluşturma işleminin başlatılabilmesinden emin olabilirsiniz.
Önemli
Genel Amaçlı ve Bellek Optimizasyonu sunucu işlem katmanları için Okuma Çoğaltmaları şu anda desteklenmektedir. Patlatılabilir sunucu hesaplama katmanı desteklenmez.
Önemli
Çoğaltma oluşturma, silme ve yükseltme işlemleri gerçekleştirirken birincil sunucu bir güncelleme durumu girer. Bu süre boyunca, sunucu parametrelerini değiştirme, yüksek kullanılabilirlik seçeneklerini değiştirme veya güvenlik duvarlarını ekleme veya kaldırma gibi sunucu yönetimi işlemleri kullanılamaz. Güncelleştirme durumunun yalnızca sunucu yönetimi işlemlerini etkilediğini ve veri düzlemi işlemlerini etkilemediğini unutmayın. Bu, veritabanı sunucunuzun tamamen işlevsel kalacağı ve bağlantıları kabul edebilecek, ayrıca okuma ve yazma trafiğine hizmet edeceği anlamına gelir.
Okuma replikası oluşturmayı öğrenin.
Yapılandırma yönetimi
PostgreSQL için Azure Veri Tabanı esnek bir sunucu örneği için okuma amaçlı çoğaltmalar ayarlarken, ayarlanabilen sunucu yapılandırmalarını, birincil sunucudan devralınan yapılandırmaları ve ilgili sınırlamaları anlamak önemlidir.
Devralınan yapılandırmalar
Okuma amaçlı bir çoğaltma oluşturulduğunda, birincil sunucudan belirli sunucu yapılandırmalarını devralır. Bu yapılandırmalar, replika oluşturulurken veya kurulum sonrası değiştirilebilir. Ancak coğrafi yedekleme gibi belirli ayarlar okuma replikasına kopyalanmaz.
Çoğaltma oluşturma sırasında yapılandırmalar
- Katman, depolama boyutu: "Birincil sunucuya yükselt" işlemi için birincil sunucuyla aynı olmalıdır. "Bağımsız sunucuya yükselt ve çoğaltmadan kaldır" işlemi birincil sunucudan aynı veya daha yüksek olabilir.
- Performans katmanı (IOPS): Ayarlanabilir.
- Veri şifrelemesi: Hizmet tarafından yönetilen anahtarlardan müşteri tarafından yönetilen anahtarlara geçiş dahil ayarlanabilir.
Oluşturma sonrası yapılandırmalar
- Güvenlik duvarı kuralları: Eklenebilir, silinebilir veya değiştirilebilir.
- Katman, depolama boyutu: "Birincil sunucuya yükselt" işlemi için birincil sunucuyla aynı olmalıdır. "Bağımsız sunucuya yükselt ve çoğaltmadan kaldır" işlemi birincil sunucudan aynı veya daha yüksek olabilir.
- Performans katmanı (IOPS): Ayarlanabilir.
- Authentication yöntemi: Ayarlanabilir seçenekler arasında PostgreSQL kimlik doğrulamasından Microsoft Entra geçiş dahildir.
- Sunucu parametreleri: Çoğu ayarlanabilir. Ancak, paylaşılan bellek boyutunu etkileyenler, özellikle de olası "birincil sunucuya yükseltme" senaryolarında birincil ile uyumlu olmalıdır. "Bağımsız sunucuya yükselt ve çoğaltmadan kaldır" işlemi için bu parametreler aynı olmalıdır veya birincil sunucudaki parametreleri aşmalıdır.
- Bakım zamanlaması: Ayarlanabilir.
Okuma amaçlı çoğaltmalarda desteklenmeyen özellikler
Bazı işlevler birincil sunucularla sınırlıdır ve okuma amaçlı çoğaltmalarda ayarlanamaz. Bunlar şunları içerir:
- Yedeklemeler, coğrafi yedeklemeler de dahil olmak üzere.
- Yüksek kullanılabilirlik (HA)
Kaynak PostgreSQL için Azure Veri Tabanı esnek sunucu örneğiniz müşteri tarafından yönetilen anahtarlarla şifreleniyorsa, diğer önemli noktalar için documentation bölümüne bakın.
Katmanlı okuma replikaları oluşturun
Art arda okuma amaçlı çoğaltmalar okuma iş yüklerinin dağıtılmasında yardımcı olabilir ve birincil sunucudaki yükü azaltır. Okuma amaçlı çoğaltmaları farklı bölgelerde (bölgeler arası okuma çoğaltmaları) dağıtmak, okuma trafiğini çeşitli coğrafyalardaki kullanıcılara daha yakın bir şekilde dağıtmanıza yardımcı olabilir. PostgreSQL için Azure Veri Tabanı sunucusuna basamaklı okuma çoğaltmaları ekleyebilirsiniz. Bu, var olan bir okuma çoğaltmasının üzerinde yeni okuma çoğaltmaları oluşturmanıza olanak tanır ve var olan okuma çoğaltması sonraki seviye için kaynak olur.
Birinci düzey okuma çoğaltıcısı, verileri birincil sunucudan asenkron olarak çoğaltır. Daha sonra, ikinci düzey bir okuma replikası, birinci düzey replikadan kaynak alarak oluşturulabilir, böylece iki katmanlı çoğaltma hiyerarşisi oluşturulur. Bu mimari, ölçeklenebilirliği artırarak, birincil sunucunun 5 okuma amaçlı çoğaltmaya izin vermesiyle birlikte en fazla 30 okuma amaçlı çoğaltma sunucusunu destekler ve bu çoğaltmaların her biri 5 ek çoğaltmayı destekler. esnek PostgreSQL için Azure Veri Tabanı sunucu örneğine basamaklı okuma amaçlı çoğaltma eklemek için var olan okuma amaçlı çoğaltmayı seçin (birincil sunucudan oluşturulur) ve 'Çoğaltma' sekmesine gidin ve 'Çoğaltma oluştur'a tıklayın.
Örneğin, birincil sunucunuzda en fazla 5 okuma replikası (birinci düzey) olabilir. Bunlardan biri olan read-replica-1, başka bir çoğaltma read-replica-2'nin (düzey 2) bir parçası olan bir kaynak görevi görebilir.
Önemli noktalar:
- Kaynak okuma replikası başına 5'e kadar okuma replikası oluşturulabilir ve 2 replikasyon düzeyi desteklenebilir.
- Geçiş işlemi, ara okuma çoğaltması (kaynak) ile basamaklı okuma çoğaltması arasında desteklenir.
- Kademeli okuma replikaları olan ara okuma replikaları için ana işlemine terfi desteklenmez.
- Sanal uç noktalar, basamaklı çoğaltmalar için desteklenmez.
- PostgreSQL sürüm 14 ve üzeri olan ara çoğaltmalarda basamaklı okuma çoğaltmaları desteklenir.
Replikaya bağlan
Bir çoğaltma oluşturduğunuzda, birincil sunucunun güvenlik duvarı kurallarını veya sanal ağ hizmet uç noktasını devralır. Bu kurallar, çoğaltma oluşturma sırasında ve sonrasında herhangi bir zamanda değiştirilebilir.
Replika, yönetici hesabını birincil sunucudan devralır. Birincil sunucudaki tüm kullanıcı hesapları okuma replikalarına yansıtılır. Okuma replikasına yalnızca birincil sunucuda bulunan kullanıcı hesaplarını kullanarak bağlanabilirsiniz.
Eşlemeye bağlanmak için iki yöntem vardır:
- Doğrudan Çoğaltma Örneğine : Normal bir PostgreSQL için Azure Veri Tabanı esnek sunucu örneğinde yaptığınız gibi, çoğaltmaya host adı ve geçerli bir kullanıcı hesabını kullanarak bağlanabilirsiniz.
myreplica adında, yönetici kullanıcı adı myadmin olan bir sunucuya
psqlkullanarak replikaya bağlanabilirsiniz:
psql -h myreplica.postgres.database.azure.com -U myadmin postgres
İstemde, kullanıcı hesabının parolasını girin.
Ayrıca, bağlantı işlemini kolaylaştırmak için Azure portalı kullanıma hazır bağlantı dizeleri sağlar. Bunlar Bağlan sayfasında bulunabilir. Hem libpq değişkenleri hem de bash konsolları için uyarlanmış bağlantı dizelerini kapsar.
- Sanal Uç Noktalar aracılığıyla: Sanal uç noktalar makalesinde açıklandığı gibi sanal uç noktaları kullanan alternatif bir bağlantı yöntemi vardır . Sanal uç noktaları kullanarak, şu anda çoğaltma rolünü hangi sunucunun üstlendiği fark etmeksizin, salt okunur uç noktayı sürekli olarak çoğaltmaya işaret edecek şekilde yapılandırabilirsiniz.
Çoğaltmayı izleme
PostgreSQL için Azure Veri Tabanı okuma çoğaltma özelliği, çoğaltma yuvaları mekanizmasını kullanır. Çoğaltma yuvalarının temel avantajı, tüm çoğaltma sunucuları için gereken işlem günlüklerinin (WAL kesimleri) sayısını otomatik olarak ayarlamalarıdır. Bu, çoğaltmalara gönderilmeden önce birincildeki WAL kesimlerinin silinmesini önlediğinden çoğaltmaların eşitlenmemesini önlemeye yardımcı olur. Yaklaşımın dezavantajı, çoğaltma yuvası uzun süre etkin olmadığında birincil sistemde alan tükenmesi riskidir. Böyle durumlarda birincil, depolama kullanımının artımlı büyümesine neden olan WAL dosyalarını biriktirir. Depolama kullanımı %95'e ulaştığında veya kullanılabilir kapasite 5 GiB'den azsa, disk dolu durumlarla ilgili hataları önlemek için sunucu otomatik olarak salt okunur moda geçer.
Bu nedenle, çoğaltma gecikmesinin ve çoğaltma yuvalarının durumunun izlenmesi okuma amaçlı çoğaltmalar için çok önemlidir.
Kullanılan depolama veya depolama yüzdesi ve çoğaltma gecikmeleri belirli eşikleri aştığında, önceden harekete geçebilmek, depolama boyutunu artırmak ve gecikmeli okuma replikalarını silmek için uyarı kuralları ayarlamanızı öneririz. Örneğin, depolama yüzdesi %80 kullanımı aşarsa ve çoğaltma gecikmesi 5 dakikadan uzunsa bir uyarı ayarlayabilirsiniz. Kullanılan İşlem Günlüğü Depolama ölçümü, aşırı depolama kullanımının ana nedeninin WAL dosyalarının birikmesi olup olmadığını gösterir.
İzleme ölçümleri
PostgreSQL için Azure Veri Tabanı hizmeti, çoğaltmayı izlemek için aşağıdaki ölçümleri sağlar.
Okuma replikasyonu için izleme ve uyarılar için gelişmiş ölçümleri kullanabilirsiniz.
Gelişmiş ölçümleri etkinleştirme
- Bu yeni ölçümlerin çoğu varsayılan olarak devre dışıdır . Ancak, varsayılan olarak etkinleştirilen birkaç özel durum vardır. Aşağıdaki tablolardaki en sağdaki sütun, her ölçümün varsayılan olarak etkinleştirilip etkinleştirilmediğini gösterir.
- Varsayılan olarak etkin olmayan ölçümleri etkinleştirmek için sunucu parametresini
metrics.collector_database_activityolarakONayarlayın. Bu parametre dinamiktir ve örneğin yeniden başlatılmasını gerektirmez.
Mantıksal çoğaltma
| Ekran adı | Metri̇k Kimlik | Birim | Description | Boyut | Varsayılan etkin |
|---|---|---|---|---|---|
| En Fazla Mantıksal Çoğaltma Gecikmesi | logical_replication_delay_in_bytes |
byte | Tüm mantıksal çoğaltma yuvalarında maksimum gecikme. | Geçerli değildir | Yes |
Replication
| Ekran adı | Metri̇k Kimlik | Birim | Description | Boyut | Varsayılan etkin |
|---|---|---|---|---|---|
| En Fazla Fiziksel Çoğaltma Gecikmesi | physical_replication_delay_in_bytes |
byte | Tüm zaman uyumsuz fiziksel çoğaltma yuvalarında maksimum gecikme. | Geçerli değildir | Yes |
| Okuma Replikası Gecikmesi | physical_replication_delay_in_seconds |
Saniye | Okuma replikası gecikmesi saniye cinsinden. | Geçerli değildir | Yes |
Daha fazla bilgi edinmek için bkz. Çoğaltma nasıl yapılır makalesini okuyun.
Maksimum Fiziksel Çoğaltma Gecikmesi ölçümü, birincil ve en gecikmeli çoğaltma arasındaki gecikmeyi bayt cinsinden gösterir. Bu ölçüm uygulanabilir ve yalnızca birincil sunucuda kullanılabilir ve yalnızca okuma amaçlı çoğaltmalardan en az biri birincil sunucuya bağlıysa kullanılabilir. Gecikme bilgileri, replikanın birincil ile senkronize olma sürecinde, replika oluşturma sırasında veya çoğaltma devre dışı kaldığında da bulunur.
Okuma Amaçlı Çoğaltma Gecikmesi ölçümü, son yeniden oynatılan işlemden bu yana geçen süreyi gösterir. Örneğin, birincil sunucunuzda hiçbir işlem gerçekleşmiyorsa ve son işlem 5 saniye önce yeniden yürütüldüyse, Okuma Çoğaltma Gecikmesi 5 saniyelik gecikmeyi gösterir. Bu ölçüm uygulanabilir ve yalnızca çoğaltmalarda kullanılabilir.
Çoğaltma gecikmesi iş yükünüz için kabul edilemeyen bir değere ulaştığında sizi bilgilendirecek bir uyarı ayarlayın.
Daha fazla içgörü için birincil sunucuyu doğrudan sorgulayarak tüm replikalarda çoğaltma gecikmesini öğrenin.
Uyarı
Birincil sunucu veya okuma replikası yeniden başlatılırsa, yeniden başlatma ve güncel duruma gelme süresi Çoğaltma Gecikmesi metriğine yansıtılır.
Çoğaltma durumu
Çoğaltma ve yükseltme işleminin ilerleme durumunu ve durumunu izlemek için Azure portalındaki Replication state sütununa bakın. Bu sütun çoğaltma sayfasında bulunur ve okuma replikalarının mevcut durumu ile birincil ile olan bağlantıları hakkında içgörü sağlayan çeşitli durumları gösterir. Azure Resource Manager API'sini kullanan kullanıcılar için, GetReplica API'sini çağırırken durum, replica özellik paketinde ReplicationState olarak görünür.
Olası değerler şunlardır:
| Çoğaltma durumu | Açıklama | Siparişi yükselt | Okuma replikası oluşturma sırası |
|---|---|---|---|
| Yeniden yapılandırma | Yedek-ana bağlantısının başlaması bekleniyor. Kopya veya ilgili bölge, örneğin bir felaket nedeniyle kullanılamaz durumdaysa, daha uzun süre erişilemez olabilir. | 1 | Mevcut Değil |
| Sağlama | Okuma amaçlı çoğaltma sağlanıyor ve iki sunucu arasındaki çoğaltma henüz başlatılmadı. Sağlama tamamlanana kadar okuma amaçlı çoğaltmaya bağlanamazsınız. | Mevcut Değil | 1 |
| Güncelleştirme | Sunucu yapılandırması, yükseltme gibi tetiklenen bir eylemin veya okuma replikası oluşturmanın ardından hazırlık aşamasındadır. | 2 | 2 |
| Ketçap | WAL dosyaları replika üzerinde uygulanıyor. Yükseltme sırasında bu aşamanın süresi, planlanan veya zorlanan olarak seçilen veri eşitleme seçeneğine bağlıdır. | 3 | 3 |
| Etkin | Birincil veritabanına başarıyla bağlanmış olan okuma replikasının sağlıklı durumu. Sunucular durdurulduysa ancak daha önce başarıyla bağlandıysa, durum etkin olarak kalır. | 4 | 4 |
| Bozuk | Sağlıksız bir durum, yükseltme işleminin başarısız olmuş olabileceğini veya replikasının herhangi bir nedenle ana sunucuya bağlanamadığını gösteriyor. Lütfen replikayı silin ve bu sorunu çözmek için replikayı yeniden oluşturun. | Mevcut Değil | Mevcut Değil |
Çoğaltmayı izlemeyi öğrenin.
Değerlendirmeler
Bu bölümde, okuma amaçlı çoğaltma özelliğiyle ilgili önemli noktalar özetlenmektedir. Aşağıdaki konular geçerlidir.
- Güç işlemleri: Başlatma ve durdurma eylemleri dahil olmak üzere güç işlemleri hem birincil hem de çoğaltma sunucularına uygulanabilir. Ancak sistem bütünlüğünü korumak için belirli bir dizi izlenmelidir. Okuma amaçlı çoğaltmaları durdurmadan önce birincil sunucunun durduruldığından emin olun. İşlemlere başlarken, birincil sunucuyu başlatmadan önce çoğaltma sunucularında başlatma eylemini başlatın.
- Sunucuda okuma amaçlı çoğaltmalar varsa, birincil sunucu silinmeden önce okuma amaçlı çoğaltmaların silinmesi gerekir.
- Yerinde ana sürüm yükseltmesi, PostgreSQL için Azure Veri Tabanı esnek sunucu örneği için, sunucuda etkinleştirilmiş olan tüm okuma replikalarının ve basamaklı okuma replikalarının kaldırılmasını gerektirir. Çoğaltmalar silindikten sonra birincil sunucu istenen ana sürüme yükseltilebilir. Yükseltme tamamlandıktan sonra çoğaltma işlemini sürdürmek için çoğaltmaları yeniden oluşturabilirsiniz.
- Yönetici parolasını sıfırlama: Çoğaltma sunucusunda yönetici parolasını sıfırlama şu anda desteklenmiyor. Ayrıca, yönetici parolasının güncellenmesi ve aynı istekte çoğaltma işleminin yükseltilmesi de desteklenmez. Bunu yapmak istiyorsanız, önce çoğaltma sunucusunu yükseltmeniz ve ardından yeni yükseltilen sunucudaki parolayı ayrı olarak güncelleştirmeniz gerekir.
Yeni kopyalar
Okuma amaçlı çoğaltma, yeni PostgreSQL için Azure Veri Tabanı esnek sunucu örneği olarak oluşturulur. Mevcut bir sunucu çoğaltma olarak yapılamaz.
Kaynak taşıma
Kullanıcılar birincil kaynak grubundan farklı bir kaynak grubunda okuma amaçlı çoğaltmalar oluşturabilir. Ancak, okuma amaçlı çoğaltmaların oluşturulduktan sonra başka bir kaynak grubuna taşınması desteklenmez. Ayrıca, çoğaltmaları farklı bir aboneliğe taşımak ve okuma amaçlı çoğaltmaları olan birincil kopyayı başka bir kaynak grubuna veya aboneliğe taşımak desteklenmez.
Depolama otomatik büyütme
PostgreSQL için Azure Veri Tabanı esnek sunucu örneği için okuma amaçlı çoğaltmaları yapılandırırken, çoğaltmalardaki depolama otomatik büyütme ayarının birincil sunucuyla eşleştiğinden emin olmak önemlidir. Depolama otomatik büyütme özelliği, alan yetersizliğini önlemek için veritabanı depolama alanının otomatik olarak artmasına olanak tanır ve bu da veritabanı kesintilerine yol açabilir. Depolama otomatik büyütme ayarlarını etkili bir şekilde yönetme:
- Birincil sunucunun ayarından bağımsız olarak herhangi bir çoğaltmada depolama otomatik büyütme özelliğini etkinleştirebilirsiniz.
- Birincil sunucuda depolama otomatik büyütme etkinleştirildiyse, depolama ölçeklendirme davranışlarında tutarlılık sağlamak için çoğaltmalarda da etkinleştirilmesi gerekir.
- Birincil üzerinde depolama otomatik büyütmeyi etkinleştirmek için önce kopyalarda etkinleştirmeniz gerekir. Bu işlem sırası, çoğaltma bütünlüğünü korumak için çok önemlidir.
- Buna karşılık, depolama otomatik büyütmeyi devre dışı bırakmak istiyorsanız, çoğaltma komplikasyonlarını önlemek için çoğaltmalardan önce birincil sunucuda devre dışı bırakarak başlayın.
Yedekleme ve Geri Yükleme
PostgreSQL için Azure Veri Tabanı esnek sunucu örneğiniz için yedeklemeleri ve geri yüklemeleri yönetirken farklı promotion senaryolarında sunucunun geçerli ve önceki rolünü göz önünde bulundurmanız önemlidir. Hatırlanması gereken önemli noktalar şunlardır:
Birincil sunucuya yükseltme
Okuma amaçlı çoğaltmalardan yedekleme alınmaz: Geçmiş rollerinden bağımsız olarak, yedeklemeler hiçbir zaman okuma amaçlı çoğaltma sunucularından alınmaz.
Geçmiş yedeklemelerin korunması: Bir sunucu bir zamanlar birincilse ve bu süre boyunca yedekleri alınmışsa, bu yedeklemeler korunur. Bunlar, kullanıcı tanımlı saklama süresine kadar saklanır.
Geri Yükleme İşlemi Kısıtlamaları: Okuma amaçlı çoğaltmaya geçmiş bir sunucu için geçmiş yedeklemeler olsa bile geri yükleme işlemleri kısıtlanır. Geri yükleme işlemini yalnızca sunucu birincil role geri yükseltildiğinde başlatabilirsiniz.
Netlik sağlamak için şu noktaları gösteren bir tablo aşağıdadır:
| Sunucu rolü | Yedek alındı | Geri yüklemeye izin verilir |
|---|---|---|
| Primary | Yes | Yes |
| Okuma amaçlı çoğaltma | Hayı | Hayı |
| Okuma replikası birincil olarak terfi ettirildi | Yes | Yes |
Bağımsız sunucuya yükseltme ve çoğaltmadan kaldırma
Sunucu okuma replikası olduğunda hiçbir yedekleme alınmaz. Ancak, bağımsız bir sunucuya yükseltildikten sonra hem yükseltilen sunucuda hem de birincil sunucuda yedeklemeler alınır ve her ikisinde de geri yüklemelere izin verilir.
Ağ Kurma
Okuma amaçlı çoğaltmalar, PostgreSQL için Azure Veri Tabanı esnek sunucu örnekleri tarafından desteklenen tüm ağ seçeneklerini destekler.
Önemli
Birincil sunucu ile okuma amaçlı çoğaltmalar arasındaki çift yönlü iletişim, PostgreSQL için Azure Veri Tabanı kurulumu için çok önemlidir. Azure sanal ağ alt ağı içindeki hedef bağlantı noktası 5432'de trafik göndermek ve almak için bir sağlama olmalıdır.
Yukarıdaki gereksinim, yalnızca eşitleme işlemini kolaylaştırmakla kalmaz, aynı zamanda çoğaltmaların özellikle birincile yükseltme işlemleri sırasında, bir çoğaltmadan birincile doğru iletişim kurmasının gerekebileceği yükseltme mekanizmasının düzgün çalışmasını da sağlar. Ayrıca, Write-Ahead Günlüğü (WAL) arşivlerini depolayan Azure depolama hesabına yönelik bağlantıların veri dayanıklılığını korumasına ve verimli kurtarma işlemlerini etkinleştirmesine izin verilmelidir.
Okuma çoğaltmalarınız için özel erişimi (sanal ağ entegrasyonu) yapılandırma hakkında daha fazla bilgi edinmek ve özel ağ bağlamında Azure bölgeleri ve sanal ağlar arasında çoğaltmanın etkilerini anlamak için Özel ağ ile Azure bölgeleri ve sanal ağlar arasında çoğaltma sayfasına bakın.
Replikasyon yuvası sorunlarını giderme
Nadir durumlarda, çoğaltma yuvalarının neden olduğu yüksek gecikme, birikmiş WAL dosyaları nedeniyle birincil sunucuda depolama kullanımının artmasına neden olabilir. Depolama kullanımı %95'e ulaşırsa veya kullanılabilir kapasite 5 GiB'nin altına düşerse, disk dolu hatalarını önlemek için sunucu otomatik olarak salt okunur moda geçer.
Birincil sunucunun sistem durumunu ve işlevselliğini korumak bir öncelik olduğundan, bu tür uç durumlarda, birincil sunucunun okuma ve yazma trafiği için çalışır durumda kalmasını sağlamak için çoğaltma yuvası bırakılabilir. Bu nedenle, çoğaltma dosya tabanlı günlük gönderim moduna geçer ve bu da daha yüksek çoğaltma gecikmesine neden olabilir.
Depolama kullanımı ve çoğaltma gecikmesini yakından izlemek ve olası sorunları yükseltmeden önce azaltmak için gerekli eylemleri gerçekleştirmek önemlidir.
Sunucu parametreleri
Okuma amaçlı bir çoğaltma oluşturulduğunda, sunucu parametrelerini birincil sunucudan devralır. Bu, tutarlı ve güvenilir bir başlangıç noktası sağlamaktır. Ancak, okuma amaçlı çoğaltma oluşturulduktan sonra birincil sunucudaki sunucu parametrelerinde yapılan değişiklikler otomatik olarak çoğaltılmaz. Bu davranış, okuma amaçlı çoğaltmanın ayrı ayrı ayarlanmasının avantajını sunar. Örneğin, birincil sunucunun parametrelerini değiştirmeden okuma yoğunluklu işlemler için performansını geliştirme. Bu, esneklik ve özelleştirme seçenekleri sağlarken, sunucu parametrelerinin birliği gerektiğinde birincil ve çoğaltması arasında tutarlılık sağlamak için dikkatli ve manuel yönetim gerektirir.
Yöneticiler, okuma amaçlı çoğaltma sunucusundaki sunucu parametrelerini değiştirebilir ve birincil sunucudan farklı değerler ayarlayabilir. Tek istisna, aşağıdaki "Ölçeklendirme" bölümünde de belirtilen ve çoğaltmanın kurtarılmasını etkileyebilecek parametrelerdir: max_connections, max_prepared_transactions, max_locks_per_transaction, max_wal_senders, max_worker_processes. Okuma amaçlı çoğaltmanın kurtarma işleminin sorunsuz olduğundan ve paylaşılan bellek sınırlamalarıyla karşılaşmadığından emin olmak için, bu belirli parametreler her zaman birincil sunucuda yapılandırılanlarla eşdeğer veya daha büyük değerlere ayarlanmalıdır. Okuma amaçlı çoğaltma sunucusundaki parametre değerlerini düşürmeden önce, olası çoğaltma veya kurtarma sorunlarını önlemek için çoğaltma gecikmesinin en düşük düzeyde olduğundan veya çoğaltmanın birincil sunucuya tam olarak yakalandığından emin olun.
Scale
Hizmet katmanını Genel Amaçlı'dan Bellek İyileştirilmiş'e (veya tam tersi) değiştirebilir, işlem kapasitesini (sanal çekirdekleri) artırıp azaltabilir ve depolama alanını yükseltebilirsiniz, ancak aşağıdaki uyarılar geçerlidir.
İşlem ölçeklendirme için:
PostgreSQL için Azure Veri Tabanı hizmeti, çoğaltmaların kurtarma işlemi sırasında paylaşılan belleğin tükenmemesini sağlamak için, çoğaltmalardaki çeşitli parametrelerin ana sunucudaki ayarla eşit veya ondan büyük olmasını gerektirir. Etkilenen parametreler şunlardır:
max_connections,max_prepared_transactions,max_locks_per_transaction,max_wal_senders, .max_worker_processesÖlçeği artırma: Önce bir çoğaltmanın işleminin ölçeğini büyütün, ardından birincil işlem ölçeğini genişletin.
Ölçeği azaltma: Önce birincil sunucunun işlem ölçeğini küçültün, ardından kopya sunucunun ölçeğini küçültün.
Birincildeki işlemin her zaman en küçük replikanın işlem kapasitesine eşit veya daha küçük olması gerektiği.
Depolama ölçeklendirme için:
Ölçeği artırma: Önce bir replikanın depolama alanını ölçeklendirin, ardından birincilin ölçeğini artırın.
Birincildeki depolama boyutu her zaman en küçük çoğaltmadaki depolama boyutuna eşit veya daha küçük olmalıdır.
İlgili içerik
- PostgreSQL için Azure Veri Tabanı içinde Geo-replication.
- PostgreSQL için Azure Veri Tabanı'de okuma replikalarını terfi ettirin.
- PostgreSQL için Azure Veri Tabanı'de okuma amaçlı çoğaltmalar için sanal uç noktalar.
- Creata okuma amaçlı çoğaltma.
- Azure bölgeleri ve sanal ağlar arasında, özel ağ ile çoğaltma.