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 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 databasenya sendiri (Spanner).

Dataproc Metastore terus menggunakan Cloud SQL sebagai backend-nya dan mereplikasi data hingga proses migrasi selesai 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 memakan waktu 1 hari, 30 hari, atau satu tahun.

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

Migrasi awal memicu perubahan status berikut:

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

Konsol

Mulai

  1. Di konsol Google Cloud , 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 Migrasikan Data.

    Halaman Buat migrasi akan terbuka ke tab Konektivitas dan menampilkan setelan konfigurasi konfigurasi database Cloud SQL untuk 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 Alamat IP, 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 jenis Reguler. Subnetwork harus ada di jaringan VPC Cloud SQL. Subnet ini digunakan untuk men-deploy layanan proxy SOCKS5 perantara

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

  3. Klik Lanjutkan.

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

Konfigurasi database Cloud SQL untuk aliran data

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

  2. Di kolom Password, masukkan sandi yang Anda gunakan untuk login ke CDC Cloud SQL 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 subnetwork yang Anda buat di jaringan VPC yang sama dengan Cloud SQL. Datastream menggunakan subnetwork ini. Subjaringan digunakan untuk menghosting koneksi proxy terbalik untuk CDC Datastream. 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 Jalur root, masukkan jalur root di dalam bucket Cloud Storage. Data peristiwa streaming ditulis ke jalur ini.

  3. Klik Buat.

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 Google Cloud project tempat layanan Dataproc Metastore Anda berada.
  • LOCATION: region Google Cloud tempat layanan Dataproc Metastore Anda berada.

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 yang 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 perantara untuk menyediakan konektivitas di seluruh jaringan transitif.
  • NAT_SUBNET: subnet Private Service Connect yang menyediakan koneksi dari layanan Dataproc Metastore untuk mengakses proxy perantara. Ukuran subnet harus memiliki panjang awalan minimal /29 dan dalam rentang IPv4.

Konfigurasi CDC

  • CDC_USERNAME: nama pengguna yang digunakan layanan Datastream untuk login ke Cloud SQL.
  • CDC_PASSWORD: sandi yang digunakan 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: subnetwork di jaringan VPC yang sama dengan instance Cloud SQL yang digunakan oleh Datastream. Subjaringan digunakan untuk menghosting koneksi reverse proxy untuk CDC Datastream. 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 yang selesai akan memicu perubahan status berikut:

  • Dataproc Metastore kembali ke status ACTIVE.
  • Status eksekusi migrasi akan berubah menjadi SUCCEEDED.

Konsol

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

  2. Di bagian atas halaman, klik Migrasikan Data.

    Halaman Migrasikan 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 Google Cloud project tempat layanan Dataproc Metastore Anda berada.
  • LOCATION: region Google Cloud tempat layanan Dataproc Metastore Anda berada.

Batalkan migrasi

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

Membatalkan migrasi akan memicu perubahan status berikut:

  • Dataproc Metastore kembali ke status ACTIVE.
  • Status eksekusi migrasi akan berubah menjadi CANCELLED.

Konsol

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

  2. Di bagian atas halaman, klik Migrasikan Data.

    Halaman Migrasikan 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 Google Cloud project tempat layanan Dataproc Metastore Anda berada.
  • LOCATION: region Google Cloud tempat layanan Dataproc Metastore Anda berada.

Mendapatkan detail migrasi

Mendapatkan detail tentang satu migrasi terkelola.

Konsol

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

  2. Di bagian atas halaman, klik Migrasikan Data.

    Halaman Migrasikan Data akan terbuka dan menampilkan migrasi terkelola Anda.

    Untuk mendapatkan detail migrasi lainnya, 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 Google Cloud project tempat layanan Dataproc Metastore Anda berada.
  • LOCATION: region Google Cloud tempat layanan Dataproc Metastore Anda berada.
  • MIGRATION_ID: nama atau ID migrasi Dataproc Metastore Anda.

Mencantumkan migrasi

Mencantumkan migrasi terkelola.

Konsol

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

  2. Di bagian atas halaman, klik Migrasikan Data.

    Halaman Migrasikan Data akan terbuka dan menampilkan migrasi terkelola Anda.

  3. Verifikasi bahwa 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 Google Cloud project tempat layanan Dataproc Metastore Anda berada.
  • LOCATION: region Google Cloud tempat layanan Dataproc Metastore Anda berada.

Hapus migrasi

Menghapus migrasi terkelola.

Konsol

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

  2. Di bagian atas halaman, klik Migrasikan Data.

    Halaman Migrasikan Data akan terbuka dan menampilkan migrasi terkelola Anda.

  3. Pilih migrasi, lalu klik Hapus.

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 Google Cloud project tempat layanan Dataproc Metastore Anda berada.
  • LOCATION: region Google Cloud tempat layanan Dataproc Metastore Anda berada.
  • MIGRATION_ID: nama atau ID migrasi Dataproc Metastore.

Langkah berikutnya