Prasyarat untuk migrasi terkelola

Halaman ini menunjukkan cara menyiapkan project Google Cloud untuk mempersiapkan diri Migrasi terkelola Dataproc Metastore.

Sebelum memulai

  • Memahami cara kerja migrasi terkelola.

  • Siapkan atau miliki akses ke layanan berikut:

    • Metastore Dataproc yang dikonfigurasi dengan Spanner jenis database.
    • Instance database Cloud SQL untuk MySQL yang dikonfigurasi dengan Private IP. Untuk instance Cloud SQL, pastikan hal berikut:

      • Instance Cloud SQL dikonfigurasi dengan jaringan VPC yang menggunakan subnet yang diperlukan.

      • Instance Cloud SQL menggunakan skema database yang kompatibel dengan Hive Versi Metastore yang berjalan di layanan Dataproc Metastore (tempat penyalinan data).

      • Instance Cloud SQL berisi pengguna yang sesuai untuk membangun konektivitas antara Datastream dan Dataproc Metastore serta Dataproc Metastore dan Cloud SQL.

Peran yang Diperlukan

Untuk mendapatkan izin yang Anda perlukan untuk membuat Metastore Dataproc dan memulai migrasi terkelola, minta administrator untuk memberi Anda peran IAM berikut:

  • Untuk memberikan akses penuh ke semua resource Dataproc Metastore, termasuk menetapkan izin IAM: Admin Metastore Dataproc (roles/metastore.admin) di akun pengguna atau akun layanan Dataproc Metastore
  • Untuk memberikan kontrol penuh atas resource Dataproc Metastore: Editor Metastore Dataproc (roles/metastore.editor) di akun pengguna atau akun layanan Dataproc Metastore
  • Untuk memberikan izin memulai migrasi: Admin Migrasi (roles/metastore.migrationAdmin) di agen layanan Dataproc Metastore dalam project layanan

Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.

Memberikan peran tambahan bergantung pada setelan project Anda

Bergantung pada cara project dikonfigurasi, Anda mungkin perlu menambahkan hal berikut peran tambahan. Contoh cara memberikan peran ini kepada akun akan ditampilkan di bagian prasyarat nanti di halaman ini.

  • Berikan peran Pengguna Jaringan (roles/compute.networkUser) ke agen layanan Dataproc Metastore dan [Agen Layanan Google API] di project layanan.
  • Berikan peran Network Admin (roles/compute.networkAdmin) ke Agen Layanan Datastream pada project host.

Jika instance Cloud SQL Anda berada dalam project yang berbeda dengan project layanan Dataproc Metastore:

  • Berikan peran roles/cloudsql.client dan roles/cloudsql.instanceUser ke agen layanan Dataproc Metastore pada project instance Cloud SQL.

Jika bucket Cloud Storage untuk pipeline Change-Data-Capture berada dalam project yang berbeda dengan project layanan Dataproc Metastore Anda:

  • Pastikan agen layanan Datastream Anda memiliki izin yang diperlukan untuk menulis ke bucket. Biasanya berupa roles/storage.objectViewer, Peran roles/storage.objectCreator dan roles/storage.legacyBucketReader.

Prasyarat migrasi terkelola

Metastore Dataproc menggunakan proxy dan pipeline pengambilan data perubahan untuk memfasilitasi transfer data. Penting untuk memahami cara kerjanya sebelum memulai transfer.

Istilah utama

  • Project Layanan: Project layanan adalah project Google Cloud tempat Anda membuat layanan Dataproc Metastore Anda.
  • Project Host: Project host adalah project Google Cloud yang menyimpan ke jaringan VPC Bersama. Satu atau beberapa project layanan dapat ditautkan ke project host Anda untuk menggunakan jaringan bersama ini. Untuk informasi selengkapnya, lihat VPC Bersama.
  1. Aktifkan Datastream API di project layanan.
  2. Memberikan peran roles/metastore.migrationAdmin ke Metastore Dataproc Agen Layanan dalam project layanan Anda.

    gcloud projects add-iam-policy-binding SERVICE_PROJECT --role "roles/metastore.migrationAdmin" --member "serviceAccount:service-SERVICE_PROJECT@gcp-sa-metastore."
    
  3. Tambahkan aturan firewall berikut.

    Untuk membuat koneksi antara Metastore Dataproc dan data pribadi Anda dengan instance Cloud SQL IP.

    • Aturan firewall untuk mengizinkan traffic dari health check pemeriksaan beban jaringan penyeimbang proxy SOCKS5. Contoh:

      gcloud compute firewall-rules create RULE_NAME --direction=INGRESS --priority=1000 --network=CLOUD_SQL_NETWORK--allow=tcp:1080 --source-ranges=35.191.0.0/16,130.211.0.0/22
      

      Port 1080 adalah tempat server proxy SOCKS5 berjalan.

    • Aturan firewall untuk mengizinkan traffic dari load balancer ke SOCKS5 MIG proxy. Contoh:

      gcloud compute firewall-rules create RULE_NAME --direction=INGRESS --priority=1000 --network=CLOUD_SQL_NETWORK--action=ALLOW --rules=all --source-ranges=PROXY_SUBNET_RANGE
      
    • Aturan firewall untuk mengizinkan traffic dari lampiran layanan Private Service Connect ke load balancer. Contoh:

      gcloud compute firewall-rules create RULE_NAME --direction=INGRESS --priority=1000 --network=CLOUD_SQL_NETWORK --allow=tcp:1080 --source-ranges=NAT_SUBNET_RANGE
      

    Aturan firewall untuk mengizinkan Datastream menggunakan rentang IP CIDR /29 untuk membuat koneksi IP pribadi. Contoh:

    gcloud compute firewall-rules create RULE_NAME --direction=INGRESS --priority=1000 --network=CLOUD_SQL_NETWORK --action=ALLOW --rules=all --source-ranges=CIDR_RANGE
    

(Opsional) Menambahkan peran ke VPC Bersama

Ikuti langkah-langkah berikut jika Anda menggunakan VPC Bersama.

Untuk mengetahui detail selengkapnya tentang VPC Bersama, lihat Admin Project Layanan.

  1. Memberikan peran roles/compute.networkUser ke Metastore Dataproc Agen Layanan dan Agen Layanan Google API pada project host.

    gcloud projects add-iam-policy-binding HOST_PROJECT  --role "roles/compute.networkUser" --member "serviceAccount:service-SERVICE_ACCOUNT@gcp-sa-metastore."
    gcloud projects add-iam-policy-binding HOST_PROJECT  --role "roles/compute.networkUser" --member "serviceAccount:SERVICE_PROJECT@cloudservices."
    
  2. Memberikan peran roles/compute.networkAdmin ke Agen Layanan Datastream pada project host.

    gcloud projects add-iam-policy-binding HOST_PROJECT --role "roles/compute.networkAdmin" --member "serviceAccount:service-SERVICE_PROJECT@gcp-sa-datastream."
    

Jika Anda tidak dapat memberikan peran roles/compute.networkAdmin, buat peran khusus dengan izin yang tercantum di VPC Bersama prasyarat.

  • Izin ini diperlukan pada awal migrasi untuk menetapkan peering antara jaringan VPC dalam project host dengan Datastream.

  • Peran ini dapat dihapus segera setelah migrasi dimulai. Jika Anda menghapus peran sebelum migrasi selesai, Dataproc Metastore tidak dapat membersihkan tugas peering. Dalam hal ini, Anda harus membersihkan pekerjaan itu sendiri.

Langkah selanjutnya