Prasyarat untuk migrasi terkelola

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

Sebelum memulai

  • Pahami cara kerja migrasi terkelola.

  • Menyiapkan atau memiliki akses ke layanan berikut:

    • Dataproc Metastore yang dikonfigurasi dengan jenis database Spanner.
    • Instance database Cloud SQL untuk MySQL yang dikonfigurasi dengan IP Pribadi. 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 versi Metastore Hive yang berjalan di layanan Metastore Dataproc (tempat data disalin).

      • 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 guna 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: Dataproc Metastore Admin (roles/metastore.admin) di akun pengguna atau akun layanan Dataproc Metastore
  • Untuk memberikan kontrol penuh atas resource Dataproc Metastore: Dataproc Metastore Editor (roles/metastore.editor) di akun pengguna atau akun layanan Dataproc Metastore
  • Untuk memberikan izin guna 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 peran tambahan berikut. Contoh cara memberikan peran ini ke akun yang sesuai ditampilkan di bagian prasyarat di halaman ini.

  • Berikan peran Network User (roles/compute.networkUser) ke agen layanan Dataproc Metastore dan [Google APIs Service Agent] di project layanan.
  • Berikan peran Network Admin (roles/compute.networkAdmin) ke Agen Layanan Datastream di project host.

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

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

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

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

Prasyarat migrasi terkelola

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

Istilah utama

  • Project Layanan: Project layanan adalah project Google Cloud tempat Anda membuat layanan Dataproc Metastore.
  • Project Host: Project host adalah project Google Cloud yang menyimpan jaringan VPC Bersama Anda. 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 Anda.
  2. Berikan peran roles/metastore.migrationAdmin kepada Agen Layanan Dataproc Metastore di project layanan Anda.

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

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

    • Aturan firewall untuk mengizinkan traffic dari pemeriksaan pemeriksaan kesehatan ke load balancer jaringan 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 MIG proxy SOCKS5. 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. Berikan peran roles/compute.networkUser kepada Agen Layanan Dataproc Metastore dan Agen Layanan Google API di project host.

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

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

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

  • Izin ini diperlukan di awal migrasi untuk membuat penautan antara jaringan VPC di 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 tugas sendiri.

Langkah selanjutnya