Topik ini menjelaskan cara menggunakan fitur migrasi cloud satu klik untuk memigrasikan database PostgreSQL yang dikelola sendiri pada instance Elastic Compute Service (ECS) atau di pusat data lokal ke ApsaraDB RDS for PostgreSQL. Fitur ini menggunakan replikasi streaming fisik dan menyediakan proses migrasi yang cepat, sederhana, serta stabil yang mendukung berbagai skenario untuk meningkatkan efisiensi migrasi.
Prasyarat
Instance ApsaraDB RDS for PostgreSQL target harus memenuhi persyaratan berikut:
Versi utama dari instance harus sama dengan versi utama database PostgreSQL yang dikelola sendiri. PostgreSQL 10 dan yang lebih baru didukung.
CatatanUntuk migrasi lintas versi utama, seperti dari PostgreSQL 10 ke ApsaraDB RDS for PostgreSQL 13, Anda harus terlebih dahulu menyelesaikan migrasi cloud satu klik sesuai dengan dokumen ini. Kemudian, Anda dapat meningkatkan versi utama instance ApsaraDB RDS for PostgreSQL. Untuk informasi lebih lanjut, lihat Tingkatkan versi utama database.
Instance harus merupakan instans utama. Instans read-only tidak mendukung migrasi cloud satu klik.
Kelas penyimpanan instance harus berupa disk cloud.
Instance harus kosong. Ruang penyimpanan yang tersedia harus lebih besar atau sama dengan ukuran total data dari database PostgreSQL yang dikelola sendiri.
Database PostgreSQL yang dikelola sendiri harus memenuhi persyaratan berikut:
Jaringan
Sumber migrasi
Persyaratan konfigurasi jaringan
Database PostgreSQL yang dikelola sendiri pada instance ECS Alibaba Cloud atau instance ApsaraDB RDS for PostgreSQL
Instance ECS sumber atau instance ApsaraDB RDS for PostgreSQL harus berada dalam VPC yang sama dengan instance ApsaraDB RDS for PostgreSQL target. Jika mereka berada di VPC yang berbeda, Anda harus menggunakan Cloud Enterprise Network (CEN) untuk menghubungkannya. Untuk informasi lebih lanjut, lihat Cloud Enterprise Network.
Database PostgreSQL yang dikelola sendiri di pusat data lokal yang terhubung ke VPC
Anda harus membuat koneksi jaringan pribadi antara pusat data lokal dan instance ApsaraDB RDS for PostgreSQL target. Untuk informasi lebih lanjut tentang konfigurasi, lihat Hubungkan VPC ke IDC lokal.
Jika Anda memigrasikan database PostgreSQL yang dikelola sendiri dari instance ECS, Anda harus mengonfigurasi grup keamanan ECS tersebut. Untuk informasi lebih lanjut, lihat (Opsional) Konfigurasikan grup keamanan ECS.
File postgresql.conf telah dikonfigurasi. Untuk informasi lebih lanjut, lihat Konfigurasikan file postgresql.conf.
Akun migrasi telah dibuat. Untuk informasi lebih lanjut, lihat Buat akun migrasi.
File pg_hba.conf telah diperbarui. Untuk informasi lebih lanjut, lihat Perbarui file pg_hba.conf.
Firewall server telah dikonfigurasi. Untuk informasi lebih lanjut, lihat Konfigurasikan firewall server.
Catatan
Operasi baca dan tulis diizinkan pada database PostgreSQL yang dikelola sendiri selama tugas migrasi cloud. Namun, jangan lakukan operasi lain pada instans sumber, seperti migrasi lainnya, restart, atau peningkatan dan penurunan instans.
Langkah 1: Jalankan evaluasi migrasi cloud
Pergi ke halaman Instans. Di bilah navigasi atas, pilih wilayah tempat instance RDS berada. Kemudian, temukan instance RDS dan klik ID instance tersebut.
Di panel navigasi di sebelah kiri, klik One-Click Cloud Migration/Disaster Recovery. Lalu, klik tab Feasibility Evaluation.
Pada langkah Select Scenario and Source Type dari wizard konfigurasi, atur Skenario ke Cloud Migration, pilih sumber migrasi, dan kemudian klik Next.
Pada langkah Target Instance Configuration, klik Next.
Pada langkah Source Instance Configuration, pilih kotak centang untuk semua item konfigurasi yang telah Anda selesaikan, dan kemudian klik Next.
CatatanUntuk informasi lebih lanjut tentang langkah Source Instance Configuration, lihat (Opsional) Konfigurasikan grup keamanan ECS, Buat akun migrasi, dan Perbarui file pg_hba.conf.
Pada langkah Start Feasibility Evaluation, Anda dapat mengonfigurasi informasi instance sumber.
Parameter
Deskripsi
Migration Task Name
Sistem secara otomatis menghasilkan nama. Tidak diperlukan perubahan.
Source VPC IP/DNS
Untuk migrasi satu klik dari database PostgreSQL yang dikelola sendiri pada instance ECS, konfigurasikan IP privat instance ECS tersebut. Untuk informasi lebih lanjut, lihat Lihat alamat IP.
Untuk migrasi cloud satu klik dari database PostgreSQL yang dikelola sendiri di pusat data lokal, masukkan alamat IP privat pusat data tersebut.
Source Instance Port
Port dari database PostgreSQL yang dikelola sendiri. Jalankan perintah
netstat -a | grep PGSQLuntuk melihat port.Username
migratetest, akun database yang Anda buat pada langkah Buat akun migrasi.Password
123456, kata sandi untuk akun database yang Anda buat pada langkah Buat akun migrasi.Klik Create Feasibility Evaluation Task.
CatatanStatus instance berubah menjadi Maintaining Instance selama tugas evaluasi kelayakan.
Ketika evaluasi migrasi selesai, Anda dapat melihat status tugas di daftar Cloud Migration pada tab Feasibility Evaluation.
Anda hanya dapat melanjutkan ke langkah migrasi cloud jika Status adalah Successful. Untuk informasi lebih lanjut, lihat Langkah 2: Migrasi ke cloud.
Jika Status adalah Failed, Anda dapat mengklik View Report di kolom Tindakan dan memperbaiki masalah berdasarkan pesan kesalahan. Untuk informasi lebih lanjut tentang kesalahan umum, lihat Interpretasi laporan evaluasi migrasi cloud.
Setelah Anda memperbaiki kesalahan, klik Re-evaluate di kolom Tindakan untuk menjalankan tugas evaluasi lagi.

Langkah 2: Migrasi ke cloud
Anda hanya dapat melakukan langkah ini setelah evaluasi migrasi cloud berhasil.
Pergi ke halaman Instans. Di bilah navigasi atas, pilih wilayah tempat instance RDS berada. Kemudian, temukan instance RDS dan klik ID instance tersebut.
Di panel navigasi kiri, klik One-Click Cloud Migration/Disaster Recovery. Pada tab Cloud Migration, klik Buat Tugas Migrasi Cloud.
Di jendela Create Cloud Migration Task, pilih tugas evaluasi cloud migrasi yang berhasil dari daftar Associated Evaluation Task. Ini adalah tugas dari Langkah 1: Jalankan evaluasi migrasi cloud.
CatatanSetelah Anda memilih Associated Evaluation Task, parameter Source Database Type, Source IP/DNS, Source Instance Port, dan Username akan terisi otomatis dan tidak memerlukan konfigurasi.
Klik Start Cloud Migration untuk secara otomatis memulai tugas migrasi.
PeringatanSelama tugas migrasi cloud, status instance berubah menjadi Migrating Data. Anda masih dapat membaca dan menulis ke database PostgreSQL yang dikelola sendiri. Namun, jangan lakukan operasi lain, seperti memulai migrasi lain, me-restart instance, atau meningkatkan atau menurunkan instance. Operasi ini akan menyebabkan tugas migrasi gagal.
Lakukan alih bencana.
Dalam daftar tugas migrasi cloud, klik tautan di kolom Cloud Migration Phase untuk melihat kemajuan tugas.

Ketika migrasi memasuki fase Incremental Synchronization, klik Switch To Cloud di kolom Actions. Ini mempromosikan instance ApsaraDB RDS for PostgreSQL menjadi database utama, yang kemudian mulai menyediakan layanan.
Di jendela Switch To Cloud, atur instance sumber menjadi read-only atau hentikan operasi tulis dari aplikasi Anda.
CatatanAtur instance sumber menjadi read-only:
Jika instance sumber adalah instance ApsaraDB RDS for PostgreSQL, konfigurasikan sebagai berikut:
Anda dapat menggunakan fitur Atur parameter instance untuk mengatur parameter rds_force_trans_ro_non_sup dari instance sumber ke on.
Jalankan pernyataan berikut untuk memutus semua sesi yang ada.
SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE usename not in ('replicator', 'monitor', 'pgsql', 'aurora') AND pid != pg_backend_pid();
Jika instance sumber adalah database yang dikelola sendiri, konfigurasikan sebagai berikut:
-- Atur database menjadi read-only ALTER SYSTEM SET default_transaction_read_only=on; -- Muat ulang konfigurasi parameter untuk menerapkan perubahan SELECT pg_reload_conf(); -- Putus semua sesi yang ada SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE usename not in ('replicator', 'monitor', 'pgsql', 'aurora') AND pid != pg_backend_pid();
Pilih semua kotak centang, klik Switch Now, dan tunggu hingga migrasi selesai.
