Menggunakan migrasi terkelola dengan layanan Dataproc Metastore

Halaman ini menunjukkan cara memulai dan mengelola migrasi terkelola Dataproc Metastore.

Anda dapat mengonfigurasi migrasi menggunakan Dataproc Metastore API.

Sebelum memulai

Mulai migrasi

Saat Anda menjalankan start migration, Dataproc Metastore akan terhubung ke Cloud SQL dan menggunakan Cloud SQL sebagai database backend-nya. Selama proses ini, Dataproc Metastore menjalankan pipeline yang menyalin data dari Cloud SQL ke database-nya sendiri (Spanner).

Dataproc Metastore akan terus menggunakan Cloud SQL sebagai backend-nya dan mereplikasi data hingga proses complete migration dipanggil.

Sebelum memulai migrasi, pastikan Anda telah menyiapkan prasyarat migrasi terkelola.

Pertimbangan memulai migrasi

  • Layanan Dataproc Metastore hanya dapat menjalankan satu migrasi dalam satu waktu.

  • Migrasi akan tetap aktif hingga Anda menyelesaikan proses migrasi. Tidak ada batas waktu untuk menyelesaikan migrasi Anda. Misalnya, migrasi dapat berlangsung selama 1 hari, 30 hari, atau satu tahun.

  • Pencadangan terjadwal tidak dibatasi selama migrasi. Namun, pencadangan mungkin tidak lengkap. Untuk menghindari masalah, nonaktifkan pencadangan terjadwal saat migrasi sedang berlangsung.

Migrasi awal memicu perubahan status berikut:

  • Dataproc Metastore berpindah ke status MIGRATING.
  • Status eksekusi migrasi berpindah ke RUNNING.
  • Fase eksekusi migrasi berpindah ke REPLICATION.

Konsol

Mulai

  1. Di Google Cloud konsol, buka halaman Dataproc Metastore:

    Buka Dataproc Metastore

  2. Di halaman Dataproc Metastore, klik nama layanan yang ingin Anda migrasikan.

    Halaman Service detail akan terbuka.

  3. Di bagian atas halaman, klik Migrate Data.

    Halaman Create migration akan terbuka ke tab Connectivity dan menampilkan setelan konfigurasi Cloud SQL database configuration for Dataproc Metastore.

Konfigurasi database Cloud SQL untuk DPMS

  1. Di Instance connection name, masukkan nama koneksi instance database Cloud SQL, dalam format berikut: project_id:region:instance_name.

  2. Di kolom IP address, masukkan alamat IP yang diperlukan untuk terhubung ke instance Cloud SQL.

  3. Di kolom Port, masukkan 3306.

  4. Di Hive database name , masukkan nama database yang digunakan sebagai backend Hive Metastore yang dikelola sendiri.

  5. Di kolom Username, masukkan nama pengguna yang Anda gunakan untuk menghubungkan Cloud SQL ke Hive Metastore.

  6. Di kolom Password, masukkan sandi yang Anda gunakan untuk menghubungkan Cloud SQL ke Hive Metastore.

Layanan Proxy SOCKS5

  1. Di kolom Proxy Subnet, masukkan subnet berjenis Regular. Subnet harus ada di jaringan VPC Cloud SQL. Subnet ini digunakan untuk men-deploy layanan proxy SOCKS5 menengah

  2. Di kolom Nat Subnet, masukkan subnet berjenis Private Service Connect. Subnet ini harus ada di jaringan VPC Cloud SQL dan digunakan untuk memublikasikan layanan proxy SOCKS5 menggunakan Private Service Connect.

  3. Klik Continue.

    Tab Change Data Capture (CDC) akan terbuka dan menampilkan setelan konfigurasi Cloud SQL database configuration for Datastream.

Konfigurasi database Cloud SQL untuk aliran data

  1. Di kolom Username, masukkan nama pengguna yang Anda gunakan untuk login ke Cloud SQL CDC yang digunakan oleh Datastream.

  2. Di kolom Password, masukkan sandi yang Anda gunakan untuk login ke Cloud SQL CDC yang digunakan oleh Datastream.

  3. Di kolom VPC network, masukkan jaringan di jaringan VPC yang sama dengan instance Cloud SQL yang digunakan oleh Datastream untuk membuat koneksi pribadi ke CDC.

  4. Di kolom Subnet IP range, masukkan rentang IP subnet minimal /29. Datastream menggunakan IP ini untuk membuat peering ke jaringan VPC.

  5. Di kolom Reverse proxy subnet, masukkan subnet yang Anda buat di jaringan VPC yang sama dengan Cloud SQL. Datastream menggunakan subnet ini. Subnet digunakan untuk menghosting koneksi proxy terbalik untuk Datastream CDC. Subnet harus dikonfigurasi di region yang sama dengan layanan Dataproc Metastore.

Konfigurasi GCS

  1. Untuk Bucket ID, pilih jalur Cloud Storage untuk menyimpan data CDC selama migrasi.

  2. Di kolom Root path, masukkan jalur root di dalam bucket Cloud Storage. Data peristiwa streaming ditulis ke jalur ini.

  3. Klik Create.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type:application/json" \
  -X POST -d \
  '{
    "migration_execution": {
      "cloud_sql_migration_config": {
        "cloud_sql_connection_config": {
          "instance_connection_name": INSTANCE_CONNECTION_NAME,
          "hive_database_name": "HIVE_DATABASE_NAME",
          "ip_address": "IP_ADDRESS",
          "port": 3306,
          "username": "CONNECTION_USERNAME",
          "password": "CONNECTION_PASSWORD",
          "proxy_subnet": "PROXY_SUBNET",
          "nat_subnet": "NAT_SUBNET"
        },
        "cdc_config": {
          "username": "CDC_USENAME",
          "password": "CDC_PASSWORD",
          "vpc_network": "VPC_NETWORK",
          "subnet_ip_range": "SUBNET_IP_RANGE",
          "reverse_proxy_subnet": "REVERSE_PROXY_SUBNET_ID",
          "bucket": "BUCKET_NAME",
          "root_path": "ROOT_PATH",
        }
      }
    }
}' \
  https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE:startMigration

Ganti kode berikut:

  • SERVICE: nama atau ID layanan Dataproc Metastore Anda.
  • PROJECT_ID: project ID project tempat layanan Dataproc Metastore Anda berada. Google Cloud
  • LOCATION: region tempat layanan Dataproc Metastore Anda berada. Google Cloud

Konfigurasi Migrasi Cloud SQL

  • INSTANCE_CONNECTION_NAME: nama koneksi instance untuk database Cloud SQL, dalam format berikut: PROJECT_ID/LOCATION/CLOUDSQL_INSTANCE_ID.
  • HIVE_DATABASE_NAME: nama database Hive yang dikelola sendiri dan terhubung ke Cloud SQL.
  • IP_ADDRESS: alamat IP yang diperlukan untuk terhubung ke instance Cloud SQL.
  • CONNECTION_USERNAME: nama pengguna yang Anda gunakan untuk menghubungkan Cloud SQL ke Hive Metastore.
  • CONNECTION_PASSWORD sandi yang Anda gunakan untuk menghubungkan Cloud SQL ke Hive Metastore
  • PROXY_SUBNET: subnet yang digunakan di jaringan VPC Cloud SQL. Subnet ini menghosting proxy menengah untuk menyediakan konektivitas di seluruh jaringan transitif.
  • NAT_SUBNET: subnet Private Service Connect yang menyediakan koneksi dari layanan Dataproc Metastore untuk mengakses proxy menengah. Ukuran subnet harus memiliki a panjang awalan minimal /29 dan dalam rentang IPv4.

Konfigurasi CDC

  • CDC_USERNAME: nama pengguna yang digunakan oleh layanan Datastream untuk login ke Cloud SQL.
  • CDC_PASSWORD: sandi yang digunakan oleh layanan Datastream untuk login ke Cloud SQL.
  • VPC_NETWORK: jaringan di jaringan VPC yang sama dengan instance Cloud SQL yang digunakan oleh Datastream untuk membuat koneksi pribadi ke CDC.
  • SUBNET_IP_RANGE: Rentang IP subnet minimal /29 yang digunakan oleh Datastream untuk membuat peering ke jaringan VPC.
  • REVERSE_PROXY_SUBNET_ID: subnet di jaringan VPC yang sama dengan instance Cloud SQL yang digunakan oleh Datastream. Subnet digunakan untuk menghosting koneksi proxy terbalik untuk Datastream CDC. Subnet harus dikonfigurasi di region yang sama dengan layanan Dataproc Metastore.
  • BUCKET_NAME: jalur Cloud Storage untuk menyimpan data CDC selama migrasi.
  • ROOT_PATH: jalur root di dalam bucket Cloud Storage. Data peristiwa streaming ditulis ke jalur ini.

Selesaikan migrasi

Saat Anda menyelesaikan migrasi, Dataproc Metastore akan terhubung ke Spanner dan mulai menggunakan Spanner sebagai database backend-nya.

Migrasi lengkap memicu perubahan status berikut:

  • Dataproc Metastore kembali ke status ACTIVE.
  • Status eksekusi migrasi berpindah ke SUCCEEDED.

Konsol

  1. Di Google Cloud konsol, buka halaman Dataproc Metastore.

  2. Di bagian atas halaman, klik Migrate Data.

    Halaman Migrate Data akan terbuka dan menampilkan migrasi terkelola yang telah selesai.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type:application/json" \
  -X POST -d '' \
   https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE:completeMigration

Ganti kode berikut:

  • SERVICE: nama atau ID layanan Dataproc Metastore Anda.
  • PROJECT_ID: project ID project tempat layanan Dataproc Metastore Anda berada. Google Cloud
  • LOCATION: region tempat layanan Dataproc Metastore Anda berada. Google Cloud

Batalkan migrasi

Saat Anda membatalkan migrasi, Dataproc Metastore akan mengembalikan perubahan apa pun dan mulai menggunakan jenis database Spanner sebagai database backend-nya. Data apa pun yang ditransfer selama migrasi akan dihapus.

Migrasi pembatalan memicu perubahan status berikut:

  • Dataproc Metastore kembali ke status ACTIVE.
  • Status eksekusi migrasi berpindah ke CANCELLED.

Konsol

  1. Di Google Cloud konsol, buka halaman Dataproc Metastore.

  2. Di bagian atas halaman, klik Migrate Data.

    Halaman Migrate Data akan terbuka dan menampilkan migrasi terkelola yang dibatalkan.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type:application/json" \
  -X POST -d '' \
    https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE:cancelMigration

Ganti kode berikut:

  • SERVICE_NAME: nama atau ID layanan Dataproc Metastore Anda.
  • PROJECT_ID: project ID project tempat layanan Dataproc Metastore Anda berada. Google Cloud
  • LOCATION: region tempat layanan Dataproc Metastore Anda berada. Google Cloud

Mendapatkan detail migrasi

Dapatkan detail tentang satu migrasi terkelola.

Konsol

  1. Di Google Cloud konsol, buka halaman Dataproc Metastore.

  2. Di bagian atas halaman, klik Migrate Data.

    Halaman Migrate Data akan terbuka dan menampilkan migrasi terkelola Anda.

    Untuk mendapatkan detail migrasi selengkapnya, klik nama migrasi terkelola.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -X GET \
   https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE/migrationExecutions/MIGRATION_ID

Ganti kode berikut:

  • SERVICE: nama atau ID layanan Dataproc Metastore Anda.
  • PROJECT_ID: project ID project tempat layanan Dataproc Metastore Anda berada. Google Cloud
  • LOCATION: region tempat layanan Dataproc Metastore Anda berada. Google Cloud
  • MIGRATION_ID: nama atau ID migrasi Dataproc Metastore Anda.

Membuat daftar migrasi

Buat daftar migrasi terkelola.

Konsol

  1. Di Google Cloud konsol, buka halaman Dataproc Metastore.

  2. Di bagian atas halaman, klik Migrate Data.

    Halaman Migrate Data akan terbuka dan menampilkan migrasi terkelola Anda.

  3. Pastikan perintah mencantumkan migrasi.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -X GET \
   https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE/migrationExecutions/MIGRATION_ID

Ganti kode berikut:

  • SERVICE: nama atau ID layanan Dataproc Metastore Anda.
  • PROJECT_ID: project ID project tempat layanan Dataproc Metastore Anda berada. Google Cloud
  • LOCATION: region tempat layanan Dataproc Metastore Anda berada. Google Cloud

Menghapus migrasi

Hapus migrasi terkelola.

Konsol

  1. Di Google Cloud konsol, buka halaman Dataproc Metastore.

  2. Di bagian atas halaman, klik Migrate Data.

    Halaman Migrate Data akan terbuka dan menampilkan migrasi terkelola Anda.

  3. Pilih migrasi, lalu klik Delete.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
   -X DELETE \
    https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE/migrationExecutions/MIGRATION_ID

Ganti kode berikut:

  • SERVICE: nama atau ID layanan Dataproc Metastore Anda.
  • PROJECT_ID: project ID project tempat layanan Dataproc Metastore Anda berada. Google Cloud
  • LOCATION: region tempat layanan Dataproc Metastore Anda berada. Google Cloud
  • MIGRATION_ID: nama atau ID migrasi Dataproc Metastore.

Langkah berikutnya