Mengelola update pemeliharaan AlloyDB menggunakan cluster penyiapan

Untuk meminimalkan risiko pada workload produksi AlloyDB untuk PostgreSQL, Anda dapat menggunakan cluster staging untuk menguji fitur, performa, dan fungsi baru sebelum menerapkan update ke sistem produksi. Cluster staging adalah salinan cluster produksi yang menambahkan lapisan kontrol ke proses update pemeliharaan. Dengan menggunakan cluster staging untuk menguji update pemeliharaan, Anda dapat mengidentifikasi dan mengatasi potensi masalah di lingkungan non-produksi. Pendekatan ini mengurangi risiko waktu nonaktif dan penurunan performa di sistem produksi.

Update pemeliharaan ke AlloyDB bersifat berkala, sering kali bulanan. Update mencakup fitur baru, perbaikan bug, upgrade kompatibilitas database, dan perbaikan terkait keamanan. Meskipun rilis AlloyDB kompatibel dengan versi sebelumnya, sebaiknya uji rilis baru di lingkungan staging untuk memastikan stabilitas dan prediktabilitas database untuk aplikasi penting di cluster produksi Anda. Untuk mengetahui informasi selengkapnya, lihat Ringkasan pemeliharaan.

Untuk menggunakan cluster staging, ikuti langkah-langkah tingkat tinggi berikut:

  1. Menyiapkan cluster staging.
  2. Mengonfigurasi masa pemeliharaan di cluster produksi.
  3. Mengelola update cluster staging.
  4. Mengelola update cluster produksi.

Pendekatan validasi staging untuk pemeliharaan AlloyDB ini memastikan lingkungan produksi Anda tetap stabil, berperforma baik, dan aman sekaligus mendapatkan manfaat dari fitur dan patch AlloyDB terbaru.

Diagram berikut menunjukkan hubungan antara cluster staging dan cluster produksi, serta alur operasional proses update:

Hubungan antara cluster produksi dan staging

Untuk mempelajari lebih lanjut cara kerja update pemeliharaan dengan cluster AlloyDB, lihat Ringkasan pemeliharaan. Untuk mempelajari lebih lanjut cara mengelola masa pemeliharaan, lihat Mengelola masa pemeliharaan cluster AlloyDB untuk PostgreSQL.

Sebelum memulai

Project yang Anda gunakan harus diaktifkan untuk mengakses AlloyDB. Google Cloud

Untuk menyiapkan cluster staging, Anda harus membuat atau sudah memiliki cluster produksi AlloyDB. Untuk mengetahui informasi selengkapnya, lihat Membuat cluster dan instance utamanya.

Anda harus memiliki salah satu peran IAM berikut di Google Cloud project yang Anda gunakan:

  • roles/alloydb.admin: peran IAM bawaan Admin AlloyDB
  • roles/owner: peran IAM dasar Pemilik
  • roles/editor: peran IAM dasar Editor

Jika Anda tidak memiliki salah satu peran ini, hubungi Administrator Organisasi untuk meminta akses.

Menyiapkan cluster staging

Kunci keberhasilan strategi staging-first adalah memastikan cluster staging Anda mirip dengan lingkungan produksi dan menerima update sebelum produksi. Anda mengonfigurasi strategi staging-first saat tidak menetapkan masa pemeliharaan di cluster staging. AlloyDB pertama-tama mengupdate cluster tanpa masa pemeliharaan.

Membuat cluster staging dari cadangan produksi

Deploy cluster staging yang mencerminkan lingkungan produksi Anda, dan pastikan cluster staging memiliki versi, konfigurasi, dan data AlloyDB yang sama dengan cluster produksi.

Untuk memastikan cluster staging identik dengan lingkungan produksi, gunakan perintah restore untuk meng-clone database produksi ke cluster staging dan memastikan kesamaan data serta konfigurasi yang cocok. Sebaiknya pisahkan lingkungan staging dan produksi di project yang berbeda.

Anda dapat menggunakan dua metode berikut untuk membuat cadangan produksi:

  • Buat cluster staging baru dengan melakukan pemulihan penuh cadangan cluster produksi yang ada. Metode ini tidak melibatkan pemulihan database. Namun, bergantung pada jadwal pencadangan, data dapat berusia hingga 24 jam. Untuk menggunakan metode ini, lihat Memulihkan cluster dari cadangan tersimpan.
  • Buat cluster staging baru dengan melakukan pemulihan point-in-time (PITR) ke waktu tertentu dari cadangan database produksi yang ada, termasuk ke waktu terbaru. Dengan opsi ini, Anda mendapatkan data terbaru, dan metodenya lebih mudah. Meskipun, bergantung pada waktu pencadangan PITR terakhir, mungkin perlu waktu lebih lama untuk memulihkan atau memulihkan data ke waktu yang Anda tentukan. Untuk menggunakan metode ini, lihat Menggunakan pemulihan point-in-time (PITR).

Memastikan masa pemeliharaan tidak ditetapkan di cluster staging

Jangan tetapkan masa pemeliharaan untuk cluster staging. Secara default, cluster AlloyDB yang baru dibuat, bahkan yang Anda pulihkan dari cadangan, tidak memiliki masa pemeliharaan yang ditetapkan. Ini adalah status yang benar untuk lingkungan staging Anda. AlloyDB mengupdate cluster yang tidak memiliki masa pemeliharaan terjadwal sebelum mengupdate cluster dengan masa pemeliharaan terjadwal.

Anda dapat memverifikasi bahwa tidak ada masa pemeliharaan yang ditetapkan sebagai berikut:

Konsol

  1. Buka halaman Clusters.

    Buka Cluster

  2. Klik cluster di kolom Resource Name. Halaman Overview akan terbuka.

  3. Di halaman Overview, di bagian Maintenance, lihat detail masa pemeliharaan untuk cluster Anda.

  4. Opsional: Di halaman Systems insights, Anda dapat melihat detail status operasi pemeliharaan, seperti Events Timeline.

  5. Untuk melihat Pengelolaan Pemeliharaan Terpadu, masukkan "Cloud Hub maintenance" di kotak penelusuran dan pilih Maintenance. Di halaman ini, Anda dapat melihat ringkasan pemeliharaan, pemeliharaan yang dikontrol Google, dan detail pemeliharaan yang direncanakan.

gcloud

  1. Untuk menggunakan gcloud CLI, Anda dapat menginstal dan melakukan inisialisasi Google Cloud CLI, atau Anda dapat menggunakan Cloud Shell.

    gcloud alloydb clusters describe STAGING_CLUSTER_ID \
        --region=LOCATION_ID \
        --project=PROJECT_ID
  2. Cari kolom maintenanceSchedule di output. Jika tidak ada masa pemeliharaan yang ditetapkan, kolom ini tidak ada atau kosong. Jika, karena alasan apa pun, masa pemeliharaan ditetapkan, hapus.

    gcloud alloydb clusters update STAGING_CLUSTER_ID \
        --region=LOCATION_ID \
        --clear-maintenance-window \
        --project=PROJECT_ID

Mengelola beberapa saluran rilis untuk beberapa lingkungan non-produksi

Jika organisasi Anda memiliki irama rilis yang terdefinisi dengan baik dan kuat serta memiliki beberapa lingkungan non-produksi, Anda mungkin ingin menerapkan rilis baru langkah demi langkah. Misalnya, Anda mungkin ingin menerapkan rilis dalam urutan berikut:

  1. Lingkungan pengembangan
  2. Lingkungan uji mutu
  3. Lingkungan staging

Untuk mendapatkan kontrol yang lebih terperinci atas jadwal rilis di AlloyDB, Anda dapat menggunakan pemeliharaan mandiri. Pemeliharaan mandiri memungkinkan Anda menerapkan rilis baru secara manual ke lingkungan mana pun kapan saja.

Untuk menerapkan jenis irama rilis ini, ikuti langkah-langkah tingkat tinggi berikut:

  1. Terapkan penolakan pemeliharaan ke semua lingkungan non-produksi Anda untuk memastikan lingkungan tersebut tidak menerima update secara otomatis.
  2. Gunakan pemeliharaan mandiri untuk menerapkan update ke lingkungan non-produksi berdasarkan jadwal yang Anda tentukan.

Mengonfigurasi masa pemeliharaan di cluster produksi

Untuk cluster produksi, penting untuk menjadwalkan masa pemeliharaan. Hal ini memberi Anda kontrol atas waktu terjadinya update dan memungkinkan Anda menyelaraskannya dengan periode traffic rendah bisnis Anda.

Menetapkan masa pemeliharaan di cluster produksi

Jadwalkan masa pemeliharaan untuk cluster produksi Anda. Pilih hari dan jam saat sistem produksi Anda mengalami beban terendah. Total waktu yang diperlukan untuk satu peristiwa pemeliharaan dapat bervariasi.

AlloyDB otomatis menunda update ke cluster produksi Anda selama setidaknya satu minggu setelah mengupdate cluster staging. Jika menemukan masalah setelah update cluster staging, Anda dapat menolak update pemeliharaan produksi hingga 30 hari, dan bekerja sama dengan Google Cloud Dukungan untuk menyelesaikan masalah.

Tetapkan masa pemeliharaan di cluster produksi Anda sebagai berikut:

Konsol

  1. Buka halaman Clusters.

    Buka Cluster

  2. Klik cluster di kolom Resource Name.

  3. Di halaman Overview, di bagian Maintenance, klik Edit. Jendela konfigurasi akan terbuka.

  4. Di bagian Preferred maintenance window, pilih hari dalam seminggu untuk masa pemeliharaan ini. Opsi default-nya adalah "Any window".

    Saat Anda membuat cluster, AlloyDB akan menetapkan masa pemeliharaan default ini ke cluster tersebut.

  5. Jika Anda memilih hari untuk update pemeliharaan, pilih jam dalam sehari untuk masa pemeliharaan.

  6. Klik Update untuk menyimpan perubahan.

gcloud

Untuk menggunakan gcloud CLI, Anda dapat menginstal dan melakukan inisialisasi Google Cloud CLI, atau Anda dapat menggunakan Cloud Shell.

Untuk mengambil detail konfigurasi cluster AlloyDB, jalankan perintah berikut menggunakan gcloud alloydb clusters update perintah.

gcloud alloydb clusters update PRODUCTION_CLUSTER_ID \
    --region=LOCATION_ID \
    --maintenance-window-day=DAY_OF_WEEK \
    --maintenance-window-hour=HOUR_OF_DAY \
    --project=PROJECT_ID

Lakukan penggantian berikut:

  • PRODUCTION_CLUSTER_ID: ID cluster produksi Anda.
  • LOCATION_ID: Google Cloud region.
  • DAY_OF_WEEK: hari pilihan untuk pemeliharaan, seperti SUNDAY.
  • HOUR_OF_DAY: jam pilihan untuk pemeliharaan dalam UTC (0-23).

    Contoh berikut menunjukkan cara menetapkan masa pemeliharaan untuk hari Minggu pukul 02.00 UTC:

    gcloud alloydb clusters update my-prod-cluster \
        --region=us-central1 \
        --maintenance-window-day=SUNDAY \
        --maintenance-window-hour=2 \
        --project=my-production-project

Memverifikasi masa pemeliharaan di cluster produksi

Untuk mengonfirmasi bahwa masa pemeliharaan ditetapkan untuk cluster produksi Anda, jalankan gcloud alloydb clusters describe perintah:

gcloud alloydb clusters describe PRODUCTION_CLUSTER_ID \
--region=LOCATION_ID \
--project=PROJECT_ID

Output akan menampilkan kolom maintenanceSchedule dengan hari dan jam pemeliharaan yang ditentukan.

Mengaktifkan notifikasi pemeliharaan

Sebaiknya aktifkan notifikasi tentang peristiwa pemeliharaan terjadwal untuk cluster produksi Anda. Notifikasi ini membantu Anda merencanakan waktu untuk memulai pengujian.

Untuk mengaktifkan notifikasi pemeliharaan, ikuti langkah-langkah berikut:

  1. Buka halaman Clusters.

    Buka Cluster

  2. Klik cluster di kolom Resource Name. Halaman Overview akan terbuka.

  3. Di halaman Overview, di bagian Maintenance, klik Show details untuk meluaskan bagian tersebut. Kemudian, klik Edit di baris Notifications. Halaman Communication akan terbuka.

  4. Di halaman Communication, pilih tab Product communications.

  5. Di baris untuk AlloyDB, di kolom Email, aktifkan tombol notifikasi ke posisi On.

Setelah Anda mengonfigurasi masa pemeliharaan untuk cluster produksi, AlloyDB akan mengupdatenya paling cepat tujuh hari setelah update cluster staging. Jika memilih untuk menerima notifikasi, Anda akan menerima notifikasi email bahwa update pemeliharaan dijadwalkan untuk cluster produksi Anda.

Update cluster staging

Gunakan lingkungan staging untuk memvalidasi update produksi mendatang.

Memeriksa status pra-update

Karena cluster staging tidak memiliki masa pemeliharaan, cluster ini termasuk yang pertama menerima update. Namun, AlloyDB tidak mengirimkan notifikasi untuk cluster yang tidak dikonfigurasi dengan masa pemeliharaan. Meski demikian, Anda dapat memantau waktu terjadinya update pemeliharaan menggunakan Logs Explorer di Google Cloud konsol.

  1. Di Google Cloud konsol, buka halaman Logs Explorer:

    Buka Logs Explorer

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil dengan subjudul Logging.

  2. Pilih All Resources, pilih cluster staging, lalu klik Apply.

  3. Pilih All lognames, pilih maintenance_events, lalu klik Apply.

  4. Di panel Timeline, pilih rentang waktu saat cluster staging Anda menerima update.

Melakukan verifikasi fungsional pasca-update

Setelah AlloyDB mengupdate cluster staging, lakukan pengujian fungsional untuk mengonfirmasi bahwa update aman dan sesuai untuk diterapkan ke lingkungan produksi Anda.

Melakukan verifikasi performa pasca-update

Verifikasi cluster staging Anda setelah update pemeliharaan selesai. Nilai dampak performa apa pun pada database Anda setelah update cluster staging. Lakukan pengujian fungsional dan performa yang komprehensif untuk memastikan aplikasi Anda berperilaku seperti yang diharapkan dan memenuhi SLA performa.

Untuk memastikan stabilitas dan pengoperasian yang optimal, lakukan hal berikut:

  • Bandingkan baseline pra-update dengan metrik utama.
  • Jalankan pengujian beban untuk mengidentifikasi regresi.
  • Analisis performa kueri.
  • Pantau penggunaan resource.

Mengambil tindakan berdasarkan hasil verifikasi

Tinjau hasil verifikasi dan lakukan tindakan berikut berdasarkan hasilnya:

  • Verifikasi berhasil: jika pengujian fungsional dan performa di cluster staging berhasil, berarti lingkungan staging Anda bebas error dan Anda dapat mengizinkan pemeliharaan produksi dilanjutkan sesuai jadwal di jendela terjadwalnya. Bersiaplah untuk update produksi dan beri tahu pemangku kepentingan yang relevan.
  • Verifikasi gagal: jika pengujian fungsional dan performa di cluster staging gagal dan Anda mengalami error fungsional, penurunan performa, atau perilaku yang tidak terduga di lingkungan staging setelah update pemeliharaan, Anda harus menolak pemeliharaan produksi.

Menolak peristiwa pemeliharaan terjadwal

Untuk menolak peristiwa pemeliharaan terjadwal untuk cluster produksi, Anda harus menetapkan tanggal mulai, tanggal akhir, dan waktu saat interval dimulai dan berakhir.

Tanggal mulai dan akhir harus dalam format berikut: YYYY-MM-DD. Tanggal mulai, tanggal akhir, dan waktu semuanya dalam zona waktu UTC.

Untuk menggunakan gcloud CLI, Anda dapat menginstal dan melakukan inisialisasi Google Cloud CLI, atau Anda dapat menggunakan Cloud Shell.

Untuk menambahkan periode penolakan pemeliharaan ke cluster AlloyDB, selesaikan langkah-langkah berikut:

  1. Jalankan perintah dengan flag , , dan :gcloud alloydb clusters updatedeny-maintenance-period-start-datedeny-maintenance-period-end-datedeny-maintenance-period-time

    gcloud alloydb clusters update CLUSTER_ID \
        --region LOCATION_ID \
        --deny-maintenance-period-start-date START_DATE \
        --deny-maintenance-period-end-date END_DATE \
        --deny-maintenance-period-time TIME
  2. Ganti kode berikut:

    • CLUSTER_ID: cluster yang akan dikonfigurasi untuk periode bebas pemeliharaan.
    • LOCATION_ID: region tempat cluster ini berada—misalnya, us-central1. Google Cloud
    • START_DATE: tanggal mulai periode bebas pemeliharaan dalam format UTC YYYY-MM-DD.
    • END_DATE: akhir periode bebas pemeliharaan dalam format UTC YYYY-MM-DD.
    • TIME: waktu periode bebas pemeliharaan dalam format UTC HH:MM. Jam direpresentasikan dalam format 24 jam dengan nilai berkisar dari 00:00 hingga 23:59—misalnya, 16:45.
  3. Dokumentasikan semua masalah, termasuk pesan error, metrik performa, dan langkah-langkah untuk mereproduksi masalah.

  4. Buka kasus dukungan prioritas tinggi dengan Google Cloud dan berikan semua masalah yang didokumentasikan. Google Cloud akan bekerja sama dengan Anda untuk menganalisis dan menyelesaikan masalah.

Update cluster produksi

Jika verifikasi staging berhasil dan Anda mengizinkan pemeliharaan produksi dilanjutkan, update akan terjadi selama masa pemeliharaan terjadwal.

Memverifikasi masa pemeliharaan

Untuk memantau peristiwa pemeliharaan mendatang di cluster produksi, ikuti langkah-langkah berikut:

Konsol

  1. Buka halaman Clusters.

    Buka Cluster

  2. Klik cluster di kolom Resource Name. Halaman Overview akan terbuka.

  3. Di halaman Overview, di bagian Maintenance, lihat detail masa pemeliharaan untuk cluster Anda.

  4. Opsional: Di halaman Systems insights, Anda dapat melihat detail status operasi pemeliharaan, seperti Events Timeline.

  5. Untuk melihat Pengelolaan Pemeliharaan Terpadu, masukkan "Cloud Hub maintenance" di kotak penelusuran dan pilih Maintenance. Di halaman ini, Anda dapat melihat ringkasan pemeliharaan, pemeliharaan yang dikontrol Google, dan detail pemeliharaan yang direncanakan.

gcloud

Untuk menggunakan gcloud CLI, Anda dapat menginstal dan melakukan inisialisasi Google Cloud CLI, atau Anda dapat menggunakan Cloud Shell.

Jalankan perintah berikut menggunakan gcloud alloydb clusters describe:

gcloud alloydb clusters describe PRODUCTION_CLUSTER_ID \
    --region=LOCATION_ID \
    --project=PROJECT_ID

Jika peristiwa pemeliharaan direncanakan, output akan menyertakan maintenanceSchedule dan startTime. Jika memilih untuk menerima notifikasi, Anda juga akan menerima notifikasi email.

Memantau produksi selama masa pemeliharaan

Meskipun Google Cloud mengotomatiskan proses pemeliharaan, sebaiknya Anda memantau lingkungan produksi Anda untuk hal berikut selama masa pemeliharaan terjadwal:

  • Kondisi aplikasi: pantau log aplikasi dan health check untuk mengetahui tanda-tanda gangguan.
  • Konektivitas database: pastikan aplikasi Anda dapat terhubung kembali ke database setelah gangguan.
  • Metrik AlloyDB: gunakan Google Cloud Monitoring untuk mengamati metrik AlloyDB—CPU, memori, koneksi, dan latensi replikasi—dan untuk memastikan metrik tersebut kembali ke tingkat yang diharapkan setelah update.

Verifikasi update pasca-pemeliharaan

Setelah update pemeliharaan selesai, verifikasi lingkungan produksi Anda untuk mengetahui indikator performa dan fungsi penting.

  • Fungsi aplikasi utama: jalankan pengujian cepat fitur aplikasi yang paling penting.
  • Pemeriksaan performa dasar: tinjau dasbor untuk mengetahui lonjakan latensi atau penggunaan resource.

Langkah berikutnya