Dalam dokumen ini, Anda akan menggunakan komponen Google Cloudyang dapat ditagih berikut:
- Dataproc
- Compute Engine
- Cloud Scheduler
Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda,
gunakan kalkulator harga.
Sebelum memulai
Menyiapkan project
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Dataproc, Compute Engine, and Cloud Scheduler APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. -
Install the Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Dataproc, Compute Engine, and Cloud Scheduler APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. -
Install the Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init - Buka halaman IAM & Admin → Roles
di Google Cloud console.
- Klik CREATE ROLE untuk membuka halaman Create Role.
- Lengkapi kolom Judul, Deskripsi, ID, Tahap peluncuran. Saran: Gunakan "Dataproc Workflow Template Create" sebagai judul peran.
- Klik TAMBAHKAN IZIN,
- Di formulir Tambahkan izin, klik Filter, lalu pilih "Izin". Lengkapi filter untuk membaca "Izin: dataproc.workflowTemplates.instantiate".
- Klik kotak centang di sebelah kiri izin yang tercantum, lalu
klik Tambahkan.

- Di halaman Buat Peran, klik TAMBAHKAN IZIN lagi untuk mengulangi sub-langkah
sebelumnya guna menambahkan izin "iam.serviceAccounts.actAs" ke peran khusus. Halaman Create Role kini mencantumkan dua izin.

- Klik BUAT di halaman Peran Kustom.
Peran khusus akan dicantumkan di halaman Peran.

Di konsol Google Cloud , buka halaman Service Accounts.
Pilih project Anda.
Klik Create Service Account.
Di kolom Nama akun layanan, masukkan nama
workflow-scheduler. Konsol Google Cloud akan mengisi kolom ID akun layanan berdasarkan nama ini.Opsional: Di kolom Deskripsi akun layanan, masukkan deskripsi akun layanan.
Klik Buat dan lanjutkan.
Klik kolom Select a role dan pilih peran kustom Dataproc Workflow Template Create yang Anda buat di langkah sebelumnya.
Klik Lanjutkan.
Di kolom Peran admin akun layanan, masukkan alamat email Akun Google Anda.
Klik Selesai untuk menyelesaikan pembuatan akun layanan.
- Perintah menentukan "us-central1"
region. Anda dapat menentukan
region yang berbeda atau menghapus flag
--regionjika sebelumnya Anda telah menjalankangcloud config set compute/regionuntuk menetapkan properti region. - Urutan "-- " (tanda hubung ganda spasi) dalam perintah
add-jobmeneruskan argumen1000ke tugas SparkPi, yang menentukan jumlah sampel yang akan digunakan untuk memperkirakan nilai Pi. - Buat template alur kerja.
gcloud dataproc workflow-templates create sparkpi \ --region=us-central1
- Tambahkan tugas spark ke template alur kerja sparkpi. ID langkah "compute"
wajib diisi, dan mengidentifikasi tugas SparkPi yang ditambahkan.
gcloud dataproc workflow-templates add-job spark \ --workflow-template=sparkpi \ --step-id=compute \ --class=org.apache.spark.examples.SparkPi \ --jars=file:///usr/lib/spark/examples/jars/spark-examples.jar \ --region=us-central1 \ -- 1000
- Gunakan cluster
terkelola,
node tunggal
untuk menjalankan alur kerja. Dataproc akan membuat
cluster, menjalankan alur kerja di cluster tersebut, lalu menghapus cluster saat alur kerja selesai.
gcloud dataproc workflow-templates set-managed-cluster sparkpi \ --cluster-name=sparkpi \ --single-node \ --region=us-central1
- Klik nama
sparkpidi halaman Workflows Dataproc di konsol Google Cloud untuk membuka halaman Workflow template details. Konfirmasi atribut template sparkpi.
Buka halaman Cloud Scheduler di Google Cloud konsol (Anda mungkin perlu memilih project untuk membuka halaman). Klik CREATE JOB.
Masukkan atau pilih informasi pekerjaan berikut:
- Pilih region: "us-central" atau region lain tempat Anda membuat template alur kerja.
- Name: "sparkpi"
- Frekuensi: "* * * * *" memilih setiap menit; "0 9 * * 1" memilih setiap hari Senin pukul 9.00. Lihat Menentukan Jadwal Tugas untuk nilai unix-cron lainnya. Catatan: Anda akan dapat mengklik tombol JALANKAN SEKARANG di Tugas Cloud Scheduler di konsol Google Cloud untuk menjalankan dan menguji tugas, terlepas dari frekuensi yang Anda tetapkan untuk tugas.
- Zona waktu: Pilih timezone Anda. Ketik "Amerika Serikat" untuk mencantumkan zona waktu AS.
- Target: "HTTP"
- URL: Sisipkan URL berikut setelah menyisipkan
your-project-id. Ganti "us-central1" jika Anda membuat template alur kerja di region lain. URL ini akan memanggil
Dataproc
workflowTemplates.instantiateAPI untuk menjalankan template alur kerja sparkpi Anda.https://dataproc.googleapis.com/v1/projects/your-project-id/regions/us-central1/workflowTemplates/sparkpi:instantiate?alt=json
- Metode HTTP:
- "POST"
- Isi: "{}"
- Header Auth:
- "Tambahkan token OAuth"
- Akun layanan: Masukkan service account address dari
akun layanan yang Anda buat untuk tutorial ini.
Anda dapat menggunakan alamat akun berikut setelah memasukkan your-project-id:
workflow-scheduler@your-project-id.iam.gserviceaccount.com
- Cakupan: Anda dapat mengabaikan item ini.
- Klik BUAT.
Di baris tugas
sparkpidi halaman Cloud Scheduler Jobs, klik JALANKAN SEKARANG.Tunggu beberapa menit, lalu buka halaman Workflows Dataproc untuk memverifikasi bahwa alur kerja sparkpi telah selesai.

Setelah alur kerja menghapus cluster terkelola, detail tugas akan tetap ada di konsol. Google Cloud Klik tugas
compute...yang tercantum di halaman Jobs Dataproc untuk melihat detail tugas alur kerja.
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Membuat peran khusus
Membuat akun layanan
Buat template alur kerja.
Salin dan jalankan perintah yang tercantum di bawah di jendela terminal lokal atau di Cloud Shell untuk membuat dan menentukan template alur kerja.
Catatan:
Buat tugas Cloud Scheduler
Menguji tugas alur kerja terjadwal
Pembersihan
Alur kerja dalam tutorial ini menghapus cluster terkelolanya saat alur kerja selesai. Dengan mempertahankan alur kerja, Anda dapat menjalankan ulang alur kerja dan tidak dikenai biaya. Anda dapat menghapus resource lain yang dibuat dalam tutorial ini untuk menghindari biaya berulang.
Menghapus project
Menghapus template alur kerja
gcloud dataproc workflow-templates delete sparkpi \ --region=us-central1
Menghapus tugas Cloud Scheduler
Buka halaman Cloud Scheduler Jobs di konsol Google Cloud , centang kotak di sebelah kiri fungsi sparkpi, lalu klik DELETE.
Menghapus akun layanan Anda
Buka halaman IAM & Admin → Service Accounts
di konsol Google Cloud , centang kotak di sebelah kiri akun layanan workflow-scheduler..., lalu klik DELETE.