Bagikan melalui


Menskalakan sumber daya di server fleksibel Azure Database for PostgreSQL

BERLAKU UNTUK: Azure Database for PostgreSQL - Server Fleksibel

Server fleksibel Azure Database for PostgreSQL mendukung opsi penskalaan vertikal dan horizontal.

Penskalaan vertikal: Anda dapat menskalakan secara vertikal dengan menambahkan lebih banyak sumber daya ke instans server fleksibel Azure Database for PostgreSQL, seperti meningkatkan jumlah CPU dan memori yang ditetapkan instans. Throughput jaringan instans Anda bergantung pada nilai yang Anda pilih untuk CPU dan memori.

Setelah instans server fleksibel Azure Database for PostgreSQL dibuat, Anda dapat mengubah secara independen:

  • CPU (vCore).
  • Jumlah penyimpanan.
  • Periode retensi cadangan.

Jumlah vCore dapat ditingkatkan atau diturunkan skalanya, tetapi ukuran penyimpanan hanya dapat ditingkatkan. Anda juga dapat menskalakan periode retensi cadangan, naik atau turun, dari 7 hingga 35 hari. Sumber daya dapat diskalakan dengan menggunakan beberapa alat, misalnya, portal Azure atau Azure CLI.

Catatan

Setelah meningkatkan ukuran penyimpanan, Anda tidak dapat kembali ke ukuran penyimpanan yang lebih kecil.

Penskalaan horizontal: Anda dapat menskalakan secara horizontal dengan membuat replika baca. Replika baca memungkinkan Anda menskalakan beban kerja baca ke instans server fleksibel Azure Database for PostgreSQL yang terpisah. Ini tidak memengaruhi performa dan ketersediaan instans utama.

Saat Anda mengubah jumlah vCore atau tingkat komputasi, instans dimulai ulang agar jenis server baru berlaku. Selama waktu ini, sistem beralih ke jenis server baru. Tidak ada koneksi baru yang dapat dibuat, dan semua transaksi yang tidak dilakukan digulung balik.

Waktu keseluruhan yang diperlukan untuk menghidupkan ulang server Anda tergantung pada proses pemulihan crash dan aktivitas database pada saat mulai ulang. Mulai ulang biasanya memakan waktu satu menit atau kurang, tetapi bisa beberapa menit. Waktu tergantung pada aktivitas transaksional ketika mulai ulang dimulai.

Jika aplikasi Anda sensitif terhadap hilangnya transaksi dalam penerbangan yang mungkin terjadi selama penskalaan komputasi, sebaiknya terapkan pola coba lagi transaksi.

Menskalakan penyimpanan tidak memerlukan menghidupkan ulang server dalam banyak kasus. Demikian pula, perubahan periode retensi cadangan adalah operasi online. Untuk meningkatkan waktu mulai ulang, kami sarankan Anda melakukan operasi skala selama jam sibuk. Pendekatan itu mengurangi waktu yang diperlukan untuk menghidupkan ulang server database.

Penskalaan waktu henti mendekati nol

Penskalaan waktu henti mendekati nol adalah fitur yang dirancang untuk meminimalkan waktu henti saat Anda memodifikasi tingkat penyimpanan dan komputasi. Jika Anda mengubah jumlah vCore atau mengubah tingkat komputasi, server akan dimulai ulang untuk menerapkan konfigurasi baru. Selama transisi ke server baru ini, tidak ada koneksi baru yang dapat dibuat.

Biasanya, proses ini dapat memakan waktu antara 2 hingga 10 menit dengan penskalakan reguler. Dengan fitur penskalakan downtime hampir nol baru, durasi ini dikurangi menjadi kurang dari 30 detik. Pengurangan waktu henti selama sumber daya penskalaan ini meningkatkan ketersediaan keseluruhan instans database Anda.

Cara kerjanya

Saat Anda memperbarui instans server fleksibel Azure Database for PostgreSQL dalam skenario penskalaan, kami membuat salinan baru server Anda (VM) dengan konfigurasi yang diperbarui. Kami menyinkronkannya dengan salinan Anda saat ini, dan beralih ke salinan baru dengan gangguan 30 detik. Kemudian kita menghentikan server lama. Proses ini terjadi semua tanpa biaya tambahan untuk Anda.

Proses ini memungkinkan pembaruan yang mulus sambil meminimalkan waktu henti dan memastikan efisiensi biaya. Proses penskalaan ini dipicu ketika perubahan dilakukan pada tingkat penyimpanan dan komputasi. Pengalaman ini tetap konsisten untuk server ketersediaan tinggi (HA) dan non-HA. Fitur ini diaktifkan di semua wilayah Azure. Tidak ada tindakan pelanggan yang diperlukan untuk menggunakan kemampuan ini.

Untuk server yang dikonfigurasi replika baca, operasi penskalaan harus mengikuti urutan tertentu untuk memastikan konsistensi data dan meminimalkan waktu henti. Untuk detail tentang urutan tersebut, lihat penskalaan dengan replika baca.

Catatan

Proses penskalakan waktu henti mendekati nol adalah operasi default . Ketika batasan berikut ditemui, sistem beralih ke penskalaan reguler, yang melibatkan lebih banyak waktu henti dibandingkan dengan penskalaan waktu henti mendekati nol.

Ekspektasi waktu henti yang tepat

  • Durasi waktu henti: Dalam kebanyakan kasus, waktu henti berkisar antara 10 hingga 30 detik.
  • Pertimbangan lain: Setelah peristiwa penskalaan, ada periode DNS Time-To-Live (TTL) yang melekat sekitar 30 detik. Periode ini tidak dikontrol secara langsung oleh proses penskalakan. Ini adalah bagian standar dari perilaku DNS. Dari perspektif aplikasi, total waktu henti yang dialami selama penskalaan bisa berada di kisaran 40 hingga 60 detik.

Pertimbangan dan batasan

  • Agar penskalaan waktu henti mendekati nol berfungsi, aktifkan semua koneksi masuk/keluar antara IP di subnet yang didelegasikan saat Anda menggunakan jaringan terintegrasi jaringan virtual. Jika koneksi ini tidak diaktifkan, proses penskalakan waktu henti mendekati nol tidak berfungsi dan penskalakan terjadi melalui alur kerja penskalakan standar.
  • Penskalakan waktu henti mendekati nol tidak berfungsi jika ada batasan kapasitas regional atau batas kuota pada langganan pelanggan.
  • Penskalaan waktu henti mendekati nol tidak berfungsi untuk server replika karena hanya didukung di server utama. Untuk server replika, server secara otomatis melalui proses penskalaan reguler.
  • Penskalakan waktu henti mendekati nol tidak berfungsi jika server yang disuntikkan jaringan virtual dengan subnet yang didelegasikan tidak memiliki alamat IP yang dapat digunakan yang memadai. Jika Anda memiliki server mandiri, diperlukan satu alamat IP tambahan. Untuk server dengan ketersediaan tinggi, diperlukan dua alamat IP tambahan.
  • Slot replikasi logis tidak dipertahankan selama peristiwa failover waktu henti hampir nol. Untuk mempertahankan slot replikasi logis dan memastikan konsistensi data setelah operasi skala, gunakan ekstensi pg_failover_slot . Untuk informasi selengkapnya, lihat Mengaktifkan ekstensi di server fleksibel.
  • Untuk server berkemampuan HA, penskalaan waktu henti mendekati nol saat ini diaktifkan untuk sekumpulan wilayah terbatas. Lebih banyak wilayah akan diaktifkan secara bertahas berdasarkan kapasitas regional.