Menjalankan tugas

Halaman ini menjelaskan cara Cloud Run menjalankan tugasnya. Mengeksekusi tugas membuat eksekusi tugas di mana semua tugas harus dijalankan hingga selesai dengan sukses agar eksekusi tugas berhasil. Eksekusi tugas akan menulis log ke Cloud Logging dan mengirim data pemantauan ke Cloud Monitoring.

Selain fitur logging ini, Anda juga dapat melihat detail eksekusi tugas untuk 1.000 eksekusi tugas terbaru menggunakan panel detail eksekusi, beserta eksekusi yang terjadi dalam tujuh hari terakhir. Detail eksekusi lama dipindahkan dan tidak akan lagi terlihat di panel detail eksekusi. Namun, log dan data pemantauan untuk eksekusi yang lebih lama masih tersedia di Cloud Logging dan Cloud Monitoring, yang tunduk pada kebijakan retensi untuk produk tersebut

Menjalankan tugas

Anda dapat menjalankan tugas menggunakan Konsol Google Cloud atau Google Cloud CLI.

Konsol

Untuk menjalankan tugas:

  1. Buka halaman tugas Cloud Run

  2. Temukan tugas yang Anda minati.

  3. Klik tugas untuk menampilkan halaman detail tugas.

  4. Klik Jalankan.

Command line

Untuk menjalankan tugas yang ada:

gcloud run jobs execute JOB_NAME

Jika Anda ingin perintahnya menunggu sampai eksekusi selesai, gunakan

gcloud run jobs execute JOB_NAME --wait

Ganti JOB_NAME dengan nama tugas.

Library klien

Untuk menjalankan tugas yang ada dari kode:

REST API

Untuk menjalankan tugas yang ada, kirim permintaan HTTP POST ke metode API jobs.run

Misalnya, menggunakan curl:

curl -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -X POST \
  -d '' \
  https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/jobs/JOB-NAME:run

Ganti:

  • ACCESS_TOKEN dengan token akses yang valid untuk akun yang memiliki izin IAM untuk menjalankan tugas. Misalnya, jika Anda login ke gcloud, Anda dapat mengambil token akses menggunakan gcloud auth print-access-token. Dari dalam instance container Cloud Run, Anda dapat mengambil token akses menggunakan server metadata instance container.
  • JOB-NAME dengan nama tugas.
  • REGION dengan region Google Cloud tugas.
  • PROJECT-ID dengan ID project Google Cloud.

Menjalankan tugas segera pada saat pembuatan tugas

Jika menggunakan command line, Anda dapat menentukan eksekusi tugas segera setelah Anda membuat tugas:

gcloud run jobs create JOB_NAME --execute-now

Mengganti konfigurasi tugas untuk eksekusi tertentu

Dengan menetapkan parameter ini saat memulai eksekusi tugas baru, Anda dapat mengganti argumen, variabel lingkungan, jumlah, dan waktu tunggu yang dikonfigurasi untuk menjalankan suatu tugas. Parameter yang Anda tentukan hanya memengaruhi eksekusi ini, bukan eksekusi berikutnya karena definisi tugas yang mendasarinya tidak berubah. Anda memerlukan izin run.jobs.runWithOverrides untuk menggunakan fitur ini. Peran Cloud Run Admin dan Cloud Run Developer memiliki izin ini.

Beberapa kasus penggunaan umum mencakup:

  • Anda menjalankan tugas secara terprogram dari kode Anda, dan ingin mengganti argumen dan/atau variabel lingkungan, misalnya untuk memberi tahu tugas lokasi data input untuk eksekusi ini.
  • Anda memiliki tugas dengan setiap tugas hanya digunakan untuk memproses satu bagian data input. Anda ingin mengganti jumlah tugas berdasarkan jumlah input yang diproses.
  • Waktu berjalannya tugas Anda bervariasi di setiap eksekusi. Anda ingin mengganti waktu tunggu tugas berdasarkan waktu berjalannya tugas yang diharapkan.

Untuk mengganti konfigurasi tugas suatu eksekusi:

Konsol

  1. Buka halaman tugas Cloud Run

  2. Temukan tugas yang Anda minati.

  3. Klik tugas untuk menampilkan halaman detail tugas.

  4. Klik panah luaskan di depan tombol Edit, lalu klik Execute dengan penggantian untuk menampilkan formulir Jalankan tugas dengan penggantian.

    gambar

  5. Ubah argumen, variabel lingkungan, jumlah tugas, dan/atau konfigurasi waktu tunggu tugas untuk eksekusi ini sesuai keinginan, lalu klik Jalankan.

Command line

Gunakan perintah:

gcloud run jobs execute JOB_NAME \
     --args ARGS \
     --update-env-vars KEY=VALUE>,KEY_N=VALUE_N \
     --tasks TASKS \
     --task-timeout TIMEOUT

Ganti

Library klien

Untuk menjalankan tugas yang ada dari kode, ganti konfigurasi tugas:

REST API

Agar dapat mengganti konfigurasi tugas untuk tugas yang sudah ada, kirim permintaan HTTP POST untuk meminta ke endpoint jobs Cloud Run Admin API

Misalnya, menggunakan curl:

curl -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -X POST \
  -d '{"overrides": {"containerOverrides": [{"args": ["ARGS"], "env": [{"name": "KEY", "value": "VALUE"}]}], "taskCount": TASK-COUNT, "timeout": "TIMEOUT" }}' \
  https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/jobs/JOB-NAME:run

Ganti:

Membatalkan eksekusi tugas

Untuk menghentikan eksekusi tugas Cloud Run yang sedang berjalan, gunakan fitur pembatalan. Membatalkan eksekusi tugas akan menghentikan eksekusi tugas saat ini. Eksekusi yang dibatalkan akan berstatus cancelled. Anda tetap dapat melihat eksekusi tersebut, termasuk data konfigurasi, log, dan data pemantauan.

Membatalkan eksekusi tugas tidak akan membatalkan tagihan untuk penggunaan tugas Cloud Run selama tugas dijalankan.

Untuk membatalkan eksekusi:

Konsol

  1. Buka halaman tugas Cloud Run

  2. Temukan eksekusi tugas yang ingin Anda batalkan.

  3. Klik eksekusi tugas untuk menampilkan halaman detail eksekusi.

  4. Klik Cancel.

Command line

Gunakan perintah:

gcloud run jobs executions cancel EXECUTION_NAME

Ganti EXECUTION_NAME dengan nama eksekusi.

Perintah ini meminta konfirmasi, jadi tanggapi permintaan dengan memasukkan y untuk mengonfirmasi.

Library klien

Untuk membatalkan eksekusi tugas dari kode:

REST API

Untuk membatalkan eksekusi tugas, kirim permintaan HTTP POST untuk meminta ke endpoint jobs Cloud Run Admin API

Misalnya, menggunakan curl:

curl -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -X POST \
  -d '' \
  https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/jobs/JOB-NAME/executions/EXECUTION-NAME:cancel

Ganti:

  • ACCESS_TOKEN dengan token akses yang valid untuk akun yang memiliki izin IAM untuk membatalkan eksekusi tugas. Misalnya, jika Anda login ke gcloud, Anda dapat mengambil token akses menggunakan gcloud auth print-access-token. Dari dalam instance container Cloud Run, Anda dapat mengambil token akses menggunakan server metadata instance container.
  • JOB_NAME dengan nama tugas.
  • EXECUTION-NAME dengan nama eksekusi tugas.
  • REGION dengan region Google Cloud tugas.
  • PROJECT-ID dengan ID project Google Cloud.

Hapus eksekusi tugas

Anda dapat menghapus eksekusi tugas, meskipun sedang dijalankan. Jika sebuah eksekusi dihapus, eksekusi akan berhenti dilanjutkan. Untuk mengetahui detailnya, lihat Menghapus eksekusi tugas.

Langkah selanjutnya

Setelah Anda menyelesaikan eksekusi tugas, Anda dapat melakukan tahapan berikut: