Melakukan migrasi ke cluster tujuan yang ada

Halaman ini menjelaskan cara memigrasikan database ke cluster AlloyDB untuk PostgreSQL yang sudah ada dan dibuat langsung di AlloyDB untuk PostgreSQL.

Jalur ini berguna untuk skenario saat cluster tujuan Anda dikelola oleh tim yang berbeda, atau jika Anda perlu membuat cluster di luar Database Migration Service untuk mengonfigurasi flag kustom tertentu, rentang IP yang telah dialokasikan, atau topologi jaringan VPC yang kompleks. Jika migrasi Anda memiliki persyaratan yang berbeda, pertimbangkan untuk mengikuti alur migrasi yang berbeda. Untuk mengetahui informasi selengkapnya, lihat Memulai migrasi PostgreSQL ke AlloyDB untuk PostgreSQL.

Secara umum, migrasi berkelanjutan mengikuti langkah-langkah berikut:

  1. Konfigurasikan database sumber agar Database Migration Service dapat mereplikasi data Anda.
  2. Siapkan konektivitas jaringan antara database sumber dan Google Cloud.
  3. Siapkan dan konfigurasi cluster AlloyDB untuk PostgreSQL tujuan yang ada.
  4. Membuat profil koneksi sumber dan tugas migrasi berkelanjutan.
  5. Memulai dan memantau tugas migrasi berkelanjutan.
  6. Mempromosikan tugas migrasi dan memindahkan aplikasi Anda untuk menggunakan database baru.

Biaya

Dalam dokumen ini, Anda akan menggunakan komponenGoogle Cloudyang dapat ditagih berikut:

Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda, gunakan kalkulator harga.

Sebelum memulai

  1. Verifikasi apakah jalur migrasi ini dapat sepenuhnya mendukung skenario Anda. Lihat halaman berikut:
    • Sumber dan tujuan yang didukung di halaman Ringkasan skenario mencantumkan semua versi sumber dan tujuan yang didukung.
    • Batasan umum menjelaskan batasan operasional, jenis data yang didukung, dan batas performa. Database Migration Service untuk AlloyDB untuk PostgreSQL mendukung migrasi berkelanjutan.
  2. Pertimbangkan region tempat Anda ingin membuat cluster tujuan. Database Migration Service adalah produk yang sepenuhnya regional, yang berarti semua entity yang terkait dengan migrasi Anda (profil koneksi sumber, tugas migrasi, dan cluster tujuan) harus berada di satu region Google Cloud .
  3. Di konsol Google Cloud , pada halaman pemilih project, pilih atau buat Google Cloud project.

    Buka pemilih project

  4. Aktifkan API Database Migration Service, AlloyDB untuk PostgreSQL, dan Compute Engine.

    Mengaktifkan API

Peran yang diperlukan

Untuk mendapatkan izin yang Anda perlukan guna melakukan migrasi PostgreSQL homogen ke AlloyDB untuk PostgreSQL dengan Database Migration Service, minta administrator untuk memberi Anda peran IAM yang diperlukan pada project Anda:

Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses dalam dokumentasi Identity and Access Management.

Peran yang telah ditetapkan ini berisi izin yang diperlukan untuk melakukan migrasi PostgreSQL homogen dengan Database Migration Service. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk melakukan migrasi PostgreSQL homogen ke cluster AlloyDB untuk PostgreSQL yang ada dengan Database Migration Service:

  • datamigration.*
  • alloydb.clusters.get
  • alloydb.clusters.list
  • alloydb.clusters.update
  • alloydb.instances.get
  • alloydb.instances.list
  • alloydb.instances.update
  • alloydb.operations.get
  • alloydb.users.list
  • alloydb.users.get
  • alloydb.users.create
  • alloydb.users.update

Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

Menyiapkan database sumber

Untuk menyiapkan database sumber untuk migrasi, ikuti langkah-langkah berikut:

  1. Pilih dan konfigurasikan metode konektivitas jaringan sumber Anda.
  2. Konfigurasikan instance database sumber Anda. Secara umum, hal ini mencakup langkah-langkah berikut:
    1. Instal ekstensi PostgreSQL pglogical (versi 2.2.1 atau yang lebih baru) di database sumber dan di semua database yang akan dimigrasikan.
    2. Konfigurasikan parameter PostgreSQL: tetapkan wal_level = logical, dan pastikan nilai yang memadai untuk max_replication_slots, max_wal_senders, dan max_worker_processes.
    3. Berikan hak istimewa replikasi kepada pengguna migrasi Anda, dan konfigurasikan pg_hba.conf untuk mengizinkan koneksi masuk dari cluster AlloyDB untuk PostgreSQL tujuan.

    Untuk petunjuk mendetail, lihat Mengonfigurasi database sumber.

  3. Buat profil koneksi sumber.

Menyiapkan dan mengonfigurasi cluster tujuan

Saat bermigrasi ke cluster AlloyDB untuk PostgreSQL yang ada (seperti cluster yang telah disediakan sebelumnya oleh tim lain atau dikelola dengan Terraform), pastikan cluster tersebut memenuhi semua prasyarat Database Migration Service sebelum membuat tugas migrasi:

  1. Kesiapan cluster dan status data:
    • Cluster tujuan harus dalam status RUNNABLE dan harus memiliki instance utama yang aktif.
    • Cluster harus berada di region Google Cloud yang sama dengan tugas migrasi dan profil koneksi Anda.
    • Cluster hanya dapat dikaitkan dengan satu tugas migrasi aktif dalam satu waktu.
    • Cluster tujuan hanya boleh berisi database sistem default (postgres, template0, template1) tanpa tabel pengguna.
  2. Konfigurasi flag database: Aktifkan flag alloydb.enable_pglogical di cluster AlloyDB untuk PostgreSQL tujuan Anda. Flag ini diperlukan untuk decoding dan penyerapan replikasi logis. Untuk petunjuk tentang cara memperbarui flag, lihat Mengonfigurasi flag database dalam dokumentasi AlloyDB untuk PostgreSQL.
  3. Kredensial dan izin pengguna database: Pastikan akun pengguna administratif postgres (atau akun migrasi khusus yang diberi peran alloydbsuperuser) ada di cluster tujuan Anda. Database Migration Service terhubung ke tujuan Anda dengan hak administratif untuk mengelola pelanggan replikasi dan menyinkronkan skema.
  4. Persyaratan konektivitas jaringan: Pastikan jaringan cluster tujuan Anda dikonfigurasi dengan benar untuk berkomunikasi dengan database sumber sesuai dengan metode konektivitas yang Anda pilih:
    • Private Service Connect: Jika cluster tujuan Anda mendukung Private Service Connect, pastikan cluster tersebut dikonfigurasi dengan lampiran jaringan dan pemilihan rute Private Service Connect yang sesuai untuk menjangkau jaringan sumber Anda. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi Private Service Connect dalam dokumentasi AlloyDB untuk PostgreSQL.
    • Peering Virtual Private Cloud (Akses Layanan Pribadi/IP Pribadi): Cluster tujuan harus memiliki akses layanan pribadi yang dikonfigurasi di jaringan Virtual Private Cloud yang melakukan peering dengan atau merutekan ke database sumber Anda (seperti dengan Cloud VPN atau Cloud Interconnect). Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi akses layanan pribadi dalam dokumentasi AlloyDB untuk PostgreSQL.
    • Daftar IP publik yang diizinkan: Jika database sumber Anda dapat diakses melalui internet publik, pastikan firewall sumber Anda mengizinkan koneksi masuk dari alamat IP keluar instance utama AlloyDB untuk PostgreSQL tujuan.
    • Tunnel SSH terbalik atau VM proxy TCP: Jika database sumber Anda berada di luar Google Cloud tanpa peering pribadi langsung, pastikan VM Compute Engine perantara (bastion host atau proxy TCP) di-deploy di subnet yang dapat dijangkau oleh jaringan Virtual Private Cloud cluster tujuan. Untuk mengetahui detailnya, lihat Metode jaringan.
  5. Pemberitahuan penurunan versi instance utama dan penguncian tulis:
    • Database Migration Service mendemosikan instance utama tujuan yang ada agar berfungsi sebagai pelanggan replikasi eksternal selama proses migrasi. Anda harus mengonfirmasi penurunan ini saat mengonfigurasi tugas migrasi di konsol Google Cloud dengan memasukkan ID cluster tujuan.
    • Mendemosikan instance utama tidak akan menempatkan database ke dalam mode hanya baca yang ketat, tetapi Anda harus menghindari operasi tulis pada tabel atau database yang berpartisipasi dalam migrasi untuk mencegah konflik replikasi dan penyimpangan data. Untuk mengetahui informasi selengkapnya, lihat Batasan untuk migrasi ke cluster tujuan yang ada.

Membuat dan menjalankan tugas migrasi

Untuk mengonfigurasi dan menjalankan migrasi berkelanjutan ke cluster tujuan yang ada, lakukan langkah-langkah berikut:

  1. Opsional: Jika Anda ingin mengelola sertifikat atau kunci enkripsi Anda sendiri untuk tugas migrasi, siapkan kunci enkripsi yang diperlukan.
  2. Membuat dan menjalankan tugas migrasi untuk cluster tujuan yang ada.

    Anda dapat memantau progres migrasi, serta kondisi cluster tujuan dengan fitur kemampuan observasi Database Migration Service. Lihat Metrik tugas migrasi.

Menyelesaikan migrasi

Saat Anda memutuskan untuk mengalihkan traffic aplikasi ke cluster AlloyDB untuk PostgreSQL yang baru, selesaikan migrasi dengan mengikuti langkah-langkah berikut:

  1. Hentikan semua operasi tulis di database sumber Anda. Anda dapat mengonfigurasi database sumber ke mode hanya baca untuk mempertahankan ketersediaan kueri sekaligus mencegah modifikasi baru.
  2. Mempromosikan tugas migrasi. Mempromosikan tugas migrasi akan menyinkronkan semua transaksi CDC yang tersisa, menghentikan replikasi dari sumber, dan mempromosikan instance utama AlloyDB untuk PostgreSQL ke cluster utama mandiri yang beroperasi penuh.
  3. Opsional: Verifikasi data migrasi untuk kelengkapan dan integritas baris.

Langkah berikutnya

Pelajari lebih lanjut fitur dan kemampuan pengelolaan AlloyDB untuk PostgreSQL. Lihat Ringkasan AlloyDB untuk PostgreSQL.