Membuat dan menjalankan contoh tugas
Pelajari cara membuat dan menjalankan contoh tugas transcoding video di Batch.
Jika ingin mengikuti panduan langkah demi langkah untuk tugas ini langsung di Konsol Google Cloud, klik Pandu saya:
Sebelum memulai
- Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
- Menginstal Google Cloud CLI.
-
Untuk initialize gcloud CLI, jalankan perintah berikut:
gcloud init
-
Buat atau pilih project Google Cloud.
-
Membuat project Google Cloud:
gcloud projects create PROJECT_ID
Ganti
PROJECT_ID
dengan nama untuk project Google Cloud yang Anda buat. -
Pilih project Google Cloud yang Anda buat:
gcloud config set project PROJECT_ID
Ganti
PROJECT_ID
dengan nama project Google Cloud Anda.
-
-
Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.
-
Aktifkan API Batch, Compute Engine, Logging and Cloud Storage:
gcloud services enable batch.googleapis.com
compute.googleapis.com logging.googleapis.com storage.googleapis.com - Menginstal Google Cloud CLI.
-
Untuk initialize gcloud CLI, jalankan perintah berikut:
gcloud init
-
Buat atau pilih project Google Cloud.
-
Membuat project Google Cloud:
gcloud projects create PROJECT_ID
Ganti
PROJECT_ID
dengan nama untuk project Google Cloud yang Anda buat. -
Pilih project Google Cloud yang Anda buat:
gcloud config set project PROJECT_ID
Ganti
PROJECT_ID
dengan nama project Google Cloud Anda.
-
-
Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.
-
Aktifkan API Batch, Compute Engine, Logging and Cloud Storage:
gcloud services enable batch.googleapis.com
compute.googleapis.com logging.googleapis.com storage.googleapis.com -
Pastikan Anda dan akun layanan tugas memiliki izin yang diperlukan untuk menyelesaikan tutorial ini. Tutorial ini menggunakan akun layanan default untuk sebuah tugas, yang merupakan akun layanan default Compute Engine.
-
Untuk mendapatkan izin yang Anda perlukan guna menyelesaikan tutorial ini, minta administrator Anda untuk memberi Anda peran IAM berikut:
-
Untuk membuat, melihat, dan menghapus tugas:
-
Batch Job Editor (
roles/batch.jobsEditor
) pada project -
Service Account User (
roles/iam.serviceAccountUser
) di akun layanan default Compute Engine
-
Batch Job Editor (
-
Untuk membuat, melihat, dan menghapus bucket Cloud Storage:
Storage Admin (
roles/storage.admin
) pada project -
Untuk melihat log dari tugas:
Logs Viewer (
roles/logging.viewer
) pada project
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
-
Untuk membuat, melihat, dan menghapus tugas:
-
Guna memastikan bahwa akun layanan default Compute Engine memiliki izin yang diperlukan untuk menyelesaikan tutorial ini, minta administrator Anda untuk memberikan peran IAM berikut kepada akun layanan default Compute Engine:
-
Batch Agent Reporter (
roles/batch.agentReporter
) di project -
Untuk mengizinkan tugas mengakses bucket Cloud Storage:
Storage Admin (
roles/storage.admin
) pada project -
Untuk mengizinkan tugas menghasilkan log di Logging:
Logs Writer (
roles/logging.logWriter
) pada project
-
Batch Agent Reporter (
-
-
Clone
Repositori git batch ke direktori saat ini:
git clone https://github.com/GoogleCloudPlatform/batch-samples.git
-
Buka direktori
transcoding
:cd batch-samples/transcoding/
Menyiapkan input tugas
Membuat bucket Cloud Storage:
gcloud storage buckets create gs://BUCKET_NAME
Ganti
BUCKET_NAME
dengan nama yang unik secara global untuk bucket.Outputnya mirip dengan hal berikut ini:
Creating gs://BUCKET_NAME/...
Salin skrip
transcode.sh
dan folder yang berisi file video ke bucket Cloud Storage Anda:gcloud storage cp -R transcode.sh input gs://BUCKET_NAME
Outputnya mirip dengan hal berikut ini:
Copying file://transcode.sh to gs://BUCKET_NAME/transcode.sh Copying file://input/video-2.mp4 to gs://BUCKET_NAME/input/video-2.mp4 Copying file://input/video-1.mp4 to gs://BUCKET_NAME/input/video-1.mp4 Copying file://input/video-0.mp4 to gs://BUCKET_NAME/input/video-0.mp4 Completed files 4/4 | 37.5MiB/37.5MiB Average throughput: 48.4MiB/s
Membuat tugas
Di editor teks pilihan Anda, buka file konfigurasi
job.json
.Tetapkan nilai kolom
remotePath
ke nama bucket Cloud Storage Anda:{ "taskGroups": [ { "taskSpec": { "runnables": [ { "script": { "text": "bash /mnt/share/transcode.sh" } } ], "computeResource": { "cpuMilli": 2000, "memoryMib": 2048 }, "volumes": [ { "gcs": { "remotePath": "BUCKET_NAME" }, "mountPath": "/mnt/share" } ], "maxRetryCount": 2, "maxRunDuration": "600s" }, "taskCount": 3, "parallelism": 3 } ], "allocationPolicy": { "instances": [ { "policy": { "machineType": "n2d-standard-4", "provisioningModel": "SPOT" } } ] }, "labels": { "department": "creative", "env": "testing" }, "logsPolicy": { "destination": "CLOUD_LOGGING" } }
Simpan perubahan Anda dan tutup editor teks.
Buat tugas
transcode
:gcloud batch jobs submit transcode \ --config=job.json \ --location=us-central1
Outputnya mirip dengan hal berikut ini:
Job transcode-7a1654ca-211c-40e8-b0fb-8a00 was successfully submitted. ...
Tugas ini menjalankan 3 tugas secara serentak. Setiap tugas menjalankan skrip
transcode.sh
, yang mengenkode 1 dari 3 file video dan menguploadnya ke bucket Cloud Storage.
Memantau tugas
Di konsol Google Cloud, buka halaman Job list.
Di kolom Job name, klik transcode.
Halaman Detail pekerjaan akan terbuka.
Klik tab Peristiwa.
Di bagian Daftar peristiwa, Anda dapat memantau status tugas
transcode
. Waktu yang dibutuhkan tugas untuk menyelesaikan proses antrean, dijadwalkan, dan berjalan bervariasi berdasarkan beberapa faktor. Untuk contoh ini, Anda dapat memperkirakan tugas akan selesai dalam waktu sekitar 5 menit.Opsional: Untuk memperbarui halaman, klik
Refresh.
Sebelum melanjutkan ke langkah berikutnya, pastikan status tugas ditetapkan ke Succeeded. Jika tugas Anda gagal, lihat Pemecahan masalah.
Melihat video yang dienkode
Di konsol Google Cloud, buka halaman Buckets.
Di kolom Name, klik BUCKET_NAME.
Halaman Bucket details akan terbuka.
Di kolom Name, klik
output/, lalu klik salah satu file video yang dienkode.Halaman Detail objek akan terbuka.
Untuk melihat video yang dienkode, klik Pratinjau, lalu klik
Putar.
Pembersihan
Agar tidak menimbulkan biaya pada akun Google Cloud Anda untuk resource yang digunakan pada halaman ini, hapus project Google Cloud yang berisi resource tersebut.
Menghapus project
Cara termudah untuk menghilangkan penagihan adalah dengan menghapus project yang Anda gunakan dalam tutorial ini.
Menghapus project Google Cloud:
gcloud projects delete PROJECT_ID
Menghapus resource satu per satu
Jika Anda ingin tetap menggunakan project saat ini, hapus setiap resource yang digunakan dalam tutorial ini.
Menghapus tugas
Setelah tugas Batch selesai berjalan, hapus
tugas transcode
:
gcloud batch jobs delete transcode \
--location=us-central1
Outputnya mirip dengan hal berikut ini:
Job projects/example-project/locations/us-central1/jobs/transcode deletion is in progress
Menghapus tugas juga akan menghapus detail dan riwayat tugas. Log tugas akan otomatis dihapus di akhir periode retensi log Cloud Logging.
Menghapus bucket
Jika Anda tidak lagi memerlukan bucket Cloud Storage yang digunakan dalam tutorial ini beserta kontennya, hapus bucket tersebut:
gcloud storage rm gs://BUCKET_NAME \
--recursive
Outputnya mirip dengan hal berikut ini:
Removing objects:
Removing gs://BUCKET_NAME/input/video-0.mp4#1694788495332395...
Removing gs://BUCKET_NAME/input/video-2.mp4#1694788495296173...
Removing gs://BUCKET_NAME/input/video-1.mp4#1694788495228839...
Removing gs://BUCKET_NAME/output/video-0.mp4#1694788495332395...
Removing gs://BUCKET_NAME/output/video-2.mp4#1694788495296173...
Removing gs://BUCKET_NAME/output/video-1.mp4#1694788495228839...
Removing gs://BUCKET_NAME/transcode.sh#1694788495039427...
Completed 4/4
Removing Buckets:
Removing gs://BUCKET_NAME/...
Completed 1/1
Menghapus repositori git
Jika tidak lagi memerlukan repositori git Batch yang di-clone untuk tutorial ini, Anda dapat menghapusnya:
cd ../../ && rm -rf batch-samples
Langkah selanjutnya
Pelajari cara mulai menggunakan Batch.
Pelajari lebih lanjut penciptaan dan pelaksanaan tugas.