Anda menyiapkan dan menjalankan alur kerja dengan:
- Membuat template alur kerja
- Mengonfigurasi cluster terkelola (efemeral) atau memilih cluster yang ada
- Menambahkan pekerjaan
- Membuat instance template untuk menjalankan alur kerja
Membuat template
Perintah gcloud
Jalankan command
berikut untuk membuat resource template alur kerja Dataproc.
gcloud dataproc workflow-templates create TEMPLATE_ID \ --region=REGION
Catatan:
- REGION: Menentukan region tempat template Anda akan dijalankan.
- TEMPLATE_ID: Berikan ID untuk template Anda, seperti, "workflow-template-1".
- Enkripsi CMEK. Anda dapat menambahkan flag --kms-key untuk menggunakan enkripsi CMEK pada argumen tugas template alur kerja.
REST API
Kirim WorkflowTemplate sebagai bagian dari permintaan workflowTemplates.create. Anda dapat menambahkan kolom WorkflowTemplate.EncryptionConfig.kmsKey untuk menggunakan enkripsi CMEK pada argumen tugas template alur kerja. kmsKey
Konsol
Anda dapat melihat template alur kerja yang ada dan membuat instance alur kerja dari halaman Alur kerja Dataproc di Konsol Google Cloud.
Mengonfigurasi atau memilih cluster
Dataproc dapat membuat dan menggunakan cluster baru yang "terkelola" untuk alur kerja Anda atau cluster yang sudah ada.
Cluster yang ada: Lihat Menggunakan pemilih cluster dengan alur kerja untuk memilih cluster yang ada untuk alur kerja Anda.
Cluster terkelola: Anda harus mengonfigurasi cluster terkelola untuk alur kerja Anda. Dataproc akan membuat cluster baru ini untuk menjalankan tugas alur kerja, lalu menghapus cluster di akhir alur kerja.
Anda dapat mengonfigurasi cluster terkelola untuk alur kerja Anda menggunakan alat command linegcloud
atau Dataproc API.Perintah gcloud
Gunakan flag yang diwarisi dari cluster gcloud dataproc create untuk mengonfigurasi cluster terkelola, seperti jumlah pekerja serta jenis mesin master dan pekerja. Dataproc akan menambahkan akhiran ke nama cluster untuk memastikan keunikannya.
gcloud dataproc workflow-templates set-managed-cluster template-id \ --region=region \ --master-machine-type=machine-type \ --worker-machine-type=machine-type \ --num-workers=number \ --cluster-name=cluster-name
REST API
Lihat WorkflowTemplatePlacement.ManagedCluster. Kolom ini disediakan sebagai bagian dari WorkflowTemplate yang telah selesai dan dikirimkan dengan permintaan workflowTemplates.create atau workflowTemplates.update.
Konsol
Anda dapat melihat template alur kerja yang ada dan membuat instance alur kerja dari halaman Alur kerja Dataproc di Konsol Google Cloud.
Menambahkan pekerjaan ke template
Semua tugas berjalan serentak kecuali jika Anda menentukan satu atau beberapa dependensi tugas. Dependensi
tugas dinyatakan sebagai daftar tugas lain yang harus berhasil
diselesaikan sebelum tugas akhir dapat dimulai. Anda harus memberikan step-id
untuk setiap tugas. ID harus unik dalam alur kerja, tetapi tidak harus
unik secara global.
Perintah gcloud
Gunakan jenis tugas dan flag yang diwarisi dari gcloud dataproc jobs submit untuk menentukan tugas yang akan ditambahkan ke template. Secara opsional, Anda dapat menggunakan flag ‑‑start-after job-id of another workflow job
agar tugas dimulai setelah satu atau beberapa tugas lain dalam alur kerja selesai.
Contoh:
Tambahkan tugas Hadoop "foo" ke template "my-workflow".
gcloud dataproc workflow-templates add-job hadoop \ --region=region \ --step-id=foo \ --workflow-template=my-workflow \ -- space separated job args
Tambahkan tugas "bar" ke template "my-workflow", yang akan dijalankan setelah tugas alur kerja "foo" berhasil diselesaikan.
gcloud dataproc workflow-templates add-job job-type \ --region=region \ --step-id=bar \ --start-after=foo \ --workflow-template=my-workflow \ -- space separated job args
Tambahkan tugas "baz" lain ke template "my-workflow" yang akan dijalankan setelah tugas "foo" dan "bar" berhasil diselesaikan.
gcloud dataproc workflow-templates add-job job-type \ --region=region \ --step-id=baz \ --start-after=foo,bar \ --workflow-template=my-workflow \ -- space separated job args
REST API
Lihat WorkflowTemplate.OrderedJob. Kolom ini disediakan sebagai bagian dari WorkflowTemplate yang telah selesai dan dikirimkan dengan permintaan workflowTemplates.create atau workflowTemplates.update.
Konsol
Anda dapat melihat template alur kerja yang ada dan membuat instance alur kerja dari halaman Alur kerja Dataproc di Konsol Google Cloud.
Menjalankan alur kerja
Pembuatan instance template alur kerja menjalankan alur kerja yang ditentukan oleh template. Beberapa pembuatan instance template didukung—Anda dapat menjalankan alur kerja beberapa kali.
Perintah gcloud
gcloud dataproc workflow-templates instantiate template-id \ --region=region
Perintah tersebut menampilkan ID operasi, yang dapat Anda gunakan untuk melacak status alur kerja.
Contoh perintah dan output:gcloud beta dataproc workflow-templates instantiate my-template-id \ --region=us-central1 ... WorkflowTemplate [my-template-id] RUNNING ... Created cluster: my-template-id-rg544az7mpbfa. Job ID teragen-rg544az7mpbfa RUNNING Job ID teragen-rg544az7mpbfa COMPLETED Job ID terasort-rg544az7mpbfa RUNNING Job ID terasort-rg544az7mpbfa COMPLETED Job ID teravalidate-rg544az7mpbfa RUNNING Job ID teravalidate-rg544az7mpbfa COMPLETED ... Deleted cluster: my-template-id-rg544az7mpbfa. WorkflowTemplate [my-template-id] DONE
REST API
Lihat workflowTemplates.instantiate.Konsol
Anda dapat melihat template alur kerja yang ada dan membuat instance alur kerja dari halaman Alur kerja Dataproc di Konsol Google Cloud.
Kegagalan tugas alur kerja
Kegagalan dalam tugas apa pun dalam alur kerja akan menyebabkan alur kerja gagal. Dataproc akan berupaya mengurangi dampak kegagalan dengan menyebabkan semua tugas yang menjalankan tugas secara bersamaan gagal dan mencegah dimulainya tugas berikutnya.
Memantau dan mencantumkan alur kerja
Perintah gcloud
Untuk memantau alur kerja:
gcloud dataproc operations describe operation-id \ --region=region
Catatan: Operations-ID ditampilkan saat Anda membuat instance alur kerja
dengan gcloud dataproc workflow-templates instantiate
(lihat
Menjalankan alur kerja).
Untuk mencantumkan status alur kerja:
gcloud dataproc operations list \ --region=region \ --filter="labels.goog-dataproc-operation-type=WORKFLOW AND status.state=RUNNING"
REST API
Untuk memantau alur kerja, gunakan Dataproc operations.get API.
Untuk mencantumkan alur kerja yang sedang berjalan, gunakan operations.list API Dataproc dengan filter label.
Konsol
Anda dapat melihat template alur kerja yang ada dan membuat instance alur kerja dari halaman Alur kerja Dataproc di Konsol Google Cloud.
Mengakhiri alur kerja
Anda dapat mengakhiri alur kerja menggunakan Google Cloud CLI atau dengan memanggil Dataproc API.
Perintah gcloud
gcloud dataproc operations cancel operation-id \ --region=region
gcloud dataproc workflow-templates instantiate
(lihat
Menjalankan alur kerja).
REST API
Lihat operations.cancel API.
Konsol
Anda dapat melihat template alur kerja yang ada dan membuat instance alur kerja dari halaman Alur kerja Dataproc di Konsol Google Cloud.
Memperbarui template alur kerja
Update tidak memengaruhi alur kerja yang berjalan. Versi template baru hanya akan berlaku untuk alur kerja baru.
Perintah gcloud
Template alur kerja dapat diperbarui dengan mengeluarkan perintah gcloud workflow-templates
baru yang merujuk ke id template alur kerja yang ada:
REST API
Untuk melakukan pembaruan pada template dengan REST API:
- Panggil workflowTemplates.get yang menampilkan template saat ini dengan kolom
version
yang diisi dengan versi server saat ini. - Lakukan pembaruan pada template yang diambil.
- Panggil workflowTemplates.update dengan template yang telah diupdate.
Konsol
Anda dapat melihat template alur kerja yang ada dan membuat instance alur kerja dari halaman Alur kerja Dataproc di Konsol Google Cloud.
Menghapus template alur kerja
Perintah gcloud
gcloud dataproc workflow-templates delete template-id \ --region=region
Catatan: Operations-id yang ditampilkan saat Anda membuat instance alur kerja
dengan gcloud dataproc workflow-templates instantiate
(lihat
Menjalankan alur kerja).
REST API
Lihat workflowTemplates.delete.Konsol
Anda dapat melihat template alur kerja yang ada dan membuat instance alur kerja dari halaman Alur kerja Dataproc di Konsol Google Cloud.