Bu konuda, mavi-yeşil dağıtım yöntemi kullanılarak bir ApsaraDB RDS for PostgreSQL örneğinin büyük sürümünün nasıl yükseltileceği açıklanmaktadır.
Önkoşullar
Örnek, ApsaraDB RDS for PostgreSQL 16 veya daha önceki bir sürümü çalıştırıyor olmalıdır.
Örnek, bir salt okunur örnek veya özel küme örneği olmamalıdır.
Babelfish etkinleştirilmemiş olmalıdır. Küçük motor sürüm numarası
babelfishile bitmemelidir.
Arka plan bilgileri
Mavi-yeşil dağıtımda, kaynak örnek yeni bir örneğe geri yüklenir ve ardından pg_upgrade aracıyla yeni örnek hedef sürüme yükseltilir. Kesim (cutover) işlemi gerçekleştirildiğinde, kaynak örneğin uç noktası otomatik olarak yeni örneğe yönlendirilir.
ApsaraDB RDS for PostgreSQL konsolu, büyük sürüm yükseltmeyi sıfır kesinti süresi modu ve yerinde yükseltme yöntemleriyle de destekler. Farklı yükseltme modlarının karşılaştırması için bkz. Büyük sürüm yükseltme çözümlerine giriş.
Yükseltme ücretleri
Mavi-yeşil dağıtım kullanarak büyük sürüm yükselttiğinizde sistem, kaynak örnek temel alınarak yeni bir örnek oluşturur. Yükseltme tamamlandıktan sonra aşağıdaki faturalama ayrıntılarını dikkate alın:
Kaynak örnek ve yeni örnek için faturalandırma devam eder.
Kaynak örneğin ücretleri ve faturalama yöntemi değişmez.
-
Yeni örneğin faturalama yöntemi, kaynak örnekinden farklı olabilir.
Kaynak örnek faturalama yöntemi
Yeni örnek faturalama yöntemi
Abonelik/kullandıkça öde
kullandıkça öde
Serverless
ServerlessNotMaliyetleri düşürmek için, yeni örnekteki hizmetlerin kararlı olduğunu doğruladıktan sonra yeni örneğin faturalama yöntemini aboneliğe dönüştürmenizi ve kaynak örneği serbest bırakmanızı veya abonelikten çıkmanızı öneririz. Ancak aşağıdaki hususları göz önünde bulundurun:
Kaynak örneğiniz bir abonelik planındaysa ve abonelik süresi henüz dolmamışsa, yeni örnek kalan abonelik süresini devralamaz. Kaynak örneği serbest bırakmak finansal kayba neden olabilir. Abonelikten çıkma kuralları hakkında daha fazla bilgi için bkz. İade politikası.
Kaynak örneği satın alırken indirim aldıysanız, yeni örnek bu indirimi devralmaz. Yükseltmeden önce örnek abonelikten çıkma sayfasına giderek belirli iade tutarını kontrol edin ve işlemi sürdürüp sürdürmeyeceğinizi değerlendirin.
Abonelik örneği için iade tutarı ve zamanlaması, gerçek abonelikten çıkma faturasına tabidir. İade işlemi anında gerçekleşmez.
Dikkat edilmesi gerekenler
-
Hizmet etkisi: Kesim içeren mavi-yeşil dağıtım ile bir örneği yükseltirken, kesim işlemi sırasında kaynak örnek salt okunur duruma getirilir. Bu durum, birkaç dakika süren geçici bir bağlantı kesintisine neden olur. Yükseltmeyi yoğun olmayan saatlerde yapmanızı öneririz. Kesim olmadan yükseltme seçeneğini tercih ederseniz hizmetleriniz etkilenmez.
Kaynak örneğin salt okunur süresi, veritabanı nesnelerinin sayısına bağlıdır. Veritabanı nesne sayısı arttıkça salt okunur süresi uzar. Veritabanı nesne sayısı milyonlara ulaştığında, salt okunur süresi onlarca dakikaya hatta saatlere kadar uzayabilir. Veritabanı nesnelerinin sayısını görüntülemek için
SELECT count(1) FROM pg_class;komutunu çalıştırabilirsiniz.İstemci tarafından algılanan geçici bağlantı kesintisi süresi, DNS önbelleği yenileme süresine bağlıdır. Sanal anahtarı değiştirmeyi deneyebilir ve hizmet kesintisi süresini kullanarak istemcinin DNS önbelleği yenileme süresini tahmin edebilirsiniz.
Yükseltme süresi, örnekteki veritabanı nesnelerinin sayısına bağlıdır. Nesne sayısı ne kadar fazlaysa yükseltme o kadar uzun sürer. Büyük sürüm yükseltme sırasında görev ilerlemesini Görev Merkezi üzerinden izleyebilirsiniz.
Mavi-yeşil dağıtımda, kesim sonrası kaynak örneğin salt okunur duruma gelmesini istemiyorsanız yükseltmeden sonra
rds_force_trans_ro_non_supparametresinioffolarak ayarlayın. Daha fazla bilgi için bkz. Örnek parametrelerini ayarlama.
Sürümler arası yükseltmeler: Yüksek performanslı yerel diskler kullanan ApsaraDB RDS for PostgreSQL 9.4 ve 10 örnekleri yalnızca cloud disk kullanan örneklere yükseltilebilir. Bunları doğrudan en fazla ApsaraDB RDS for PostgreSQL 14 sürümüne yükseltebilirsiniz. PostgreSQL 15 veya sonraki bir sürüme yükseltmek için öncelikle ara bir sürüme (PostgreSQL 9.4, 10, 11, 12, 13 veya 14'e; PostgreSQL 10, 11, 12, 13 veya 14'e yükseltilebilir) yükseltmeniz, ardından PostgreSQL 15 veya sonraki bir sürüme geçmeniz gerekir.
-
Çoğaltma yuvaları:
Kaynak örnek, çoğaltma yuvalarına sahip bir yayıncı ise yükseltme sonrası çoğaltma yuvaları kaybolur.
Kaynak örnek, çoğaltma yuvalarına sahip bir abone ise yükseltme, çoğaltma yuvasının ele geçirilmesi nedeniyle veri senkronizasyon sorunlarına yol açabilir. Çözüm için bkz. Yükseltme sırasında çoğaltma yuvasının ele geçirilmesinden kaynaklanan veri tutarsızlığını nasıl önlerim?
-
Sanal IP adresi: Kesim içeren mavi-yeşil dağıtımda, yükseltme sonrası yeni örneğin sanal IP adresi değişir. Güvenlik duvarı yapılandırmaları gibi ağ bağlantısını kontrol etmeniz gerekir.
Sanal IP adresi değişikliğinin etkisi: Uygulamanızda sanal IP adresini yapılandırdıysanız uygulamanızı yeni sanal IP adresini kullanacak şekilde güncellemeniz gerekir.
Önerilen çözüm: Manuel yapılandırmanın karmaşıklığını önlemek için uygulamanızda doğrudan örneğin uç noktasını yapılandırmanızı öneririz. Örnek uç noktasını elde etme bilgisi için bkz. Uç noktayı ve bağlantı noktası numarasını görüntüleme veya değiştirme.
-
Parametre değişiklikleri:
Hedef sürüm tarafından desteklenmeyen parametreler otomatik olarak silinir.
Değerleri hedef sürüm için geçerli aralığın dışında kalan parametreler, hedef sürümün parametre şablonunun varsayılan değerlerine sıfırlanır.
statement_timeoutdeğeri, yükseltme sırasında geçici olarak0olarak ayarlanır ve sonrasında orijinal değerine geri döndürülür.
-
DTS görevleri:
Örnek, Data Transmission Service (DTS) için kaynak veya hedef konumundaysa yükseltme sonrası DTS görevini yeniden oluşturun.
Eklenti uyumluluk sorunları: Büyük sürüm yükseltmesi yaparken sistem, örneği otomatik olarak en son küçük motor sürümüne günceller; bu durum eklenti uyumluluk sorunlarına neden olabilir.
Yeni örnek, kaynak örneğin Instance Name, etiketlerini, CloudMonitor uyarı kurallarını veya yedekleme verilerini devralmaz.
Adım 1: Yükseltme öncesi kontrol
ApsaraDB RDS konsoluna giriş yapın ve Örnekler sayfasına gidin. Üst gezinme çubuğunda RDS örneğinin bulunduğu bölgeyi seçin. Ardından ilgili RDS örneğini bulun ve örnek kimliğine tıklayın.
-
(İsteğe bağlı) Yükseltilecek örneğin bir salt okunur örneği varsa, uygulamanızdaki salt okunur örnek uç noktasını birincil örneğin uç noktasıyla değiştirin ve ardından salt okunur örneği silin.
NotHizmet kararlılığını sağlamak için uygulama uç noktasını yoğun olmayan saatlerde değiştirmenizi öneririz.
-
Sol gezinme bölmesinde Major Version Upgrade öğesine tıklayın.
NotSol gezinme bölmesinde Major Version Upgrade görüntülenmiyorsa ApsaraDB RDS for PostgreSQL örneğinizin sürümünü ve yapılandırmasını kontrol edin. Daha fazla bilgi için bkz. Önkoşullar.
Upgrade Check sekmesinde Create upgrade check report seçeneğine tıklayın.
Bir yükseltme sürümü seçin, Upgrade Mode seçeneğini Blue-green Deployment olarak ayarlayın ve ardından OK seçeneğine tıklayın. Örnek durumu Örnek Bakımda olarak değişir. Kontrol tamamlandığında durum Çalışıyor haline gelir.
-
Kontrol sonucunu inceleyin: Kontrol sonuçlarını yorumlama yardımı için bkz. ApsaraDB RDS for PostgreSQL büyük sürüm yükseltme kontrol raporunu yorumlama.
Başarılı veya Warning ise Adım 2'ye geçin.
Başarısız ise View Information seçeneğine tıklayın, bildirilen sorunları giderin ve kontrolü yeniden çalıştırın.
Önemli- Sonuç Warning ise bildirilen tüm sorunları giderin ve sonuç Başarılı olana kadar kontrolü yeniden çalıştırın. - Başarılı bir kontrolden sonra birincil örnekte bir eklenti oluşturursanız yükseltmeden önce kontrolü yeniden çalıştırın.
Adım 2: Büyük sürümü yükseltme
Upgrade Instance sekmesine tıklayın, uyarıyı okuyun, Select an upgrade version ve ardından Create Upgrade Task seçeneğine tıklayın.
Açılan iletişim kutusunda mesajı okuyun ve OK seçeneğine tıklayın.
-
Create Major Engine Version Upgrade Task bölümünde, Upgrade Mode seçeneği Blue-green Deployment olarak ayarlanır. Yükseltme parametrelerini yapılandırın. Aşağıdaki tabloda ana parametreler açıklanmaktadır.
Parametre
Açıklama
Storage type
Yeni örnek yalnızca ESSD'leri ve yüksek performanslı cloud diskleri destekler. Bir ESSD seçerseniz performans düzeyini (PL) değiştirebilirsiniz.
Kaynak örnek bir cloud disk kullanıyorsa yeni örnek aynı depolama türünü kullanmalıdır. Kaynak örnek yüksek performanslı yerel disk kullanıyorsa yeni örnek bir ESSD kullanmalıdır.
NotBir ESSD'nin minimum depolama kapasitesi PL'ye göre değişir. PL'yi değiştirdiğinizde örneğin minimum depolama kapasitesi seçilen PL'ye göre otomatik olarak ayarlanır. Yeni değerin gereksinimleri karşıladığından emin olun.
Kaynak örnek yüksek performanslı yerel disk kullanıyorsa yeni örnek yalnızca ESSD kullanabilir.
The Available Zone
Bu parametreler, yeni birincil ve ikincil örnekleri farklı kullanılabilirlik alanlarına yerleştirmenize olanak tanır.
For Available Zone
Primary Instance Switch
Standby Instance Switch
Cutover configuration
Gereksinimlerinize bağlı olarak trafiğin yeni örneğe geçirilip geçirilmeyeceğini seçin.
No cutting: Trafik otomatik olarak geçirilmez. Bu seçenek genellikle resmi yükseltmeden önce hizmetlerinizin yeni sürümle uyumluluğunu test etmek için kullanılır.
Cutover: Trafik otomatik olarak geçirilir. Bu seçenek genellikle hizmetlerinizin yeni sürümde kararlı çalıştığını doğruladıktan sonra resmi yükseltme için kullanılır. Kesimden sonra uygulamanız otomatik olarak yeni örneğe bağlanır. Uygulamanızdaki veritabanı uç noktasını değiştirmeniz gerekmez.
NotKesim işleminden sonra değişikliği geri alamazsınız. Bu seçeneği dikkatle seçin.
Kesim sırasında kaynak örnek salt okunur duruma getirilir; bu durum birkaç dakika süren geçici bir bağlantı kesintisine neden olur. Yükseltmeyi yoğun olmayan saatlerde yapmanızı öneririz. Kesimsiz seçeneği tercih ederseniz hizmetleriniz etkilenmez.
İlk denemeniz için No cutting seçeneğini belirlemenizi öneririz. Uygulama katmanını tamamen test edip doğruladıktan sonra yeni örneği serbest bırakın, yükseltme işlemini tekrarlayın ve nihai yükseltme için Cutover seçeneğini belirleyin.
Storage space
Yeni örnek için depolama kapasitesini seçin.
Instance specification
Yeni örnek için örnek teknik özelliklerini seçin. Örnek teknik özellikleri hakkında daha fazla bilgi için bkz. Birincil ApsaraDB RDS for PostgreSQL örnek türleri.
-
Create Now seçeneğine tıklayın.
Örnek durumu Migrating olarak değiştiğinde yükseltme görevi başlamış demektir.
Bir yükseltme için gereken süre, örnekteki veritabanı nesnelerinin sayısıyla yakından ilişkilidir. Veritabanı nesnesi sayısı ne kadar fazlaysa yükseltme o kadar uzun sürer. Büyük sürüm yükseltme sırasında yükseltme ilerlemesini Görev Merkezi üzerinden izleyebilirsiniz.
ÖnemliBir yükseltme görevi oluşturduktan sonra bunu değiştiremez veya silemezsiniz.
Kaynak örnek Migrating durumundayken parametreleri değiştirme, örneği yeniden başlatma veya serbest bırakma gibi işlemleri yapamazsınız.
Görevi oluştururken Yetersiz Kaynak mesajı görünürse farklı bir Hedef Birincil Kullanılabilirlik Alanı seçeneğine geçin.
-
Yükseltme sonucunu görüntüleyin.
Hem kaynak hem de yeni örneğin durumu Running olduğunda yükseltme tamamlanmış demektir.
NotKesimli mavi-yeşil dağıtım modunda, yükseltme sonrası trafik daha yeni bir sürüm çalışan yeni örneğe otomatik olarak geçirilir.
Kesimsiz mavi-yeşil dağıtım modunda, yükseltme sonrası trafik daha yeni bir sürüm çalışan yeni örneğe otomatik olarak geçirilmez.
Yükseltme tamamlandıktan sonra Upgrade History sekmesine gidin ve hedef yükseltme görevi için Upgrade Log sütunundaki View Information seçeneğine tıklayın. Örneğin salt okunur süresini ve ayrıntılı yükseltme sürecini görüntüleyebilirsiniz. Salt okunur süresi, Cutover Time ile Cutover End Time arasındaki süredir. Bu süre, DNS önbelleği yenilenmediği için örneğe erişilemediği dönemi kapsamaz.
Kesimsiz mavi-yeşil dağıtım için sistem, referansınız ve kesim senaryosunda tahmin yapmanız amacıyla Cutover Time ve Cutover End Time bilgilerini de görüntüler.
Sonraki adımlar
-
Bir örneği kesimli mavi-yeşil dağıtım modunu kullanarak yükseltirseniz hizmetlerinizin yeni örnekte doğru çalıştığını doğruladıktan hemen sonra kaynak örneği serbest bırakın.
Maliyet tasarrufu sağlamak için yeni örneğin faturalama yöntemini aboneliğe değiştirmenizi de öneririz.
NotBir abonelik örneğini son kullanma tarihinden önce serbest bırakırsanız finansal kayba uğrayabilirsiniz.
Kaynak örneği satın alırken indirim aldıysanız yeni örnek bu indirimi devralmaz. Kaynak örnek için gerçek iade tutarı abonelikten çıkma sayfasında belirlenir.
İade tutarı ve işlem süresi nihai abonelikten çıkma faturasına dayanır ve anında gerçekleşmez.
-
(İsteğe bağlı) Yeni örnek salt okunur örnekleri içermez. Yükseltmeden önce bir salt okunur örneği sildiyseniz aşağıdaki adımları uygulayın:
Yeni örnek üzerinde bir ApsaraDB RDS for PostgreSQL salt okunur örneği oluşturun.
Uygulamanızda uygulama uç noktasını birincil örnekten yeni salt okunur örneğin uç noktasına geri değiştirin.
Yükseltme sonuçları
Yükseltme sırasında, Upgrade Result sekmesindeki yükseltme kaydının Upgrade History sütunu aşağıdaki durumlardan birini gösterir.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
API referansı
| API işlemi | Açıklama |
|---|---|
| UpgradeDBInstanceMajorVersionPrecheck | Büyük sürüm yükseltme için yükseltme öncesi kontrolü çalıştırır. |
| DescribeUpgradeMajorVersionPrecheckTask | Yükseltme öncesi kontrol raporunu sorgular. |
| UpgradeDBInstanceMajorVersion | Büyük motor sürümünü yükseltir. |
| DescribeUpgradeMajorVersionTask | Büyük sürüm yükseltme görevlerinin geçmişini sorgular. |