Untuk membantu menghindari timbulnya Google Cloud biaya untuk cluster yang tidak aktif, gunakan fitur Penghapusan Terjadwal Cluster Managed Service untuk Apache Spark saat Anda membuat cluster. Fitur ini menyediakan opsi untuk menghapus cluster setelah terjadinya peristiwa berikut:
- setelah periode tidak ada aktivitas pada cluster yang ditentukan
- pada waktu mendatang yang ditentukan
- setelah periode tertentu yang dimulai dari waktu pengiriman permintaan pembuatan cluster
Tindakan yang menonaktifkan penghapusan terjadwal
Saat cluster berjalan, tindakan berikut akan menonaktifkan penghapusan terjadwal hingga tindakan penonaktifan dibatalkan:
- Menghapus peran Agen Layanan Managed Service untuk Apache Spark IAM di akun layanan Agen Layanan Dataproc
- Menonaktifkan Dataproc API di project cluster
- Mengaktifkan proteksi dari penghapusan VM Compute Engine pada VM cluster penghapusan terjadwal
- Mengaktifkan Kontrol Layanan VPC jika Managed Service untuk Apache Spark akun layanan agen layanan (Identitas bidang kontrol) tidak berada dalam batas perimeter
Menghitung waktu tidak ada aktivitas cluster
Anda dapat menggunakan penghapusan terjadwal untuk menghapus cluster setelah waktu tidak ada aktivitas pada cluster yang ditentukan. Waktu tidak ada aktivitas dihitung setelah cluster dibuat dan penyediaan cluster selesai. Penghitungan waktu tidak aktif dimulai saat cluster tidak memiliki tugas yang sedang berjalan.
Properti cluster dataproc:dataproc.cluster-ttl.consider-yarn-activity
memengaruhi perhitungan waktu tidak ada aktivitas cluster, sebagai berikut:
- Properti ini diaktifkan (ditetapkan ke
true) secara default. - Jika properti ini diaktifkan, aktivitas YARN dan Dataproc Jobs API harus
tidak ada aktivitas untuk memulai dan melanjutkan penghitungan waktu tidak ada aktivitas cluster.
- Aktivitas YARN mencakup aplikasi YARN yang tertunda dan sedang berjalan.
- Aktivitas Dataproc Jobs API mencakup tugas yang tertunda dan sedang berjalan yang dikirimkan ke Dataproc Jobs API.
- Jika properti ini disetel ke
false, penghitungan waktu tunggu cluster dimulai dan berlanjut hanya saat aktivitas Dataproc Jobs API tidak ada aktivitas.
Properti dataproc:dataproc.cluster-ttl.consider-yarn-activity berlaku untuk
cluster yang dibuat dengan versi gambar yang dirilis pada atau setelah 1.4.64, 1.5.39,
2.0.13, dan versi gambar yang lebih baru. Untuk cluster yang dibuat dengan versi image sebelumnya, hanya aktivitas Dataproc Jobs API yang dipertimbangkan dalam menghitung waktu tunggu cluster.
Menggunakan penghapusan terjadwal cluster
Anda dapat menetapkan nilai penghapusan terjadwal saat membuat cluster menggunakan Google Cloud CLI, Dataproc API, atau Google Cloud konsol. Setelah membuat cluster, Anda dapat mengupdate cluster untuk mengubah atau menghapus nilai penghapusan terjadwal yang sebelumnya ditetapkan pada cluster.
KonsolGoogle Cloud
- Buka halaman Buat cluster.
- Di bagian Define cost control settings, pilih Set an optional retention policy to control costs, lalu pilih setelan penghapusan terjadwal (atau penghentian terjadwal).
gcloud CLI
Anda dapat membuat atau memperbarui nilai penghapusan terjadwal pada cluster dengan meneruskan
flag dan nilai yang tercantum dalam tabel berikut ke perintah
gcloud dataproc clusters create
atau gcloud dataproc clusters update.
| Flag gcloud CLI | Deskripsi | Perincian nilai | Nilai min | Nilai maks. |
|---|---|---|---|---|
--delete-max-idle1 |
Berlaku untuk perintah pembuatan cluster dan update cluster.
Durasi dari saat cluster menjadi tidak aktif setelah
cluster dibuat atau diupdate dan dalam status siap digunakan hingga
saat cluster mulai dihapus. Berikan durasi dalam
format IntegerUnit, dengan unitnya dapat berupa "s, m, h, d"
(detik, menit, jam, hari). Contoh: "30m": 30 menit dari saat
cluster menjadi tidak ada aktivitas. |
1 detik | 5 menit | 14 hari |
--no-delete-max-idle |
Hanya berlaku untuk perintah update cluster.
Membatalkan penghapusan cluster dengan setelan flag delete-max-idle
sebelumnya. |
tidak berlaku | tidak berlaku | tidak berlaku |
--delete-expiration-time2 |
Berlaku untuk perintah pembuatan cluster dan update cluster. Waktu untuk mulai menghapus cluster dalam format tanggal dan waktu ISO 8601. Untuk membuat datetime dalam format yang benar, Anda dapat menggunakan Timestamp Generator. Misalnya, "2017-08-22T13:31:48-08:00" menentukan waktu habis masa berlaku 13:21:48 di zona waktu UTC -8:00. | 1 detik | 10 menit dari waktu saat ini | 14 hari dari waktu saat ini |
--delete-max-age2 |
Berlaku untuk perintah pembuatan cluster dan update cluster.
Durasi dari saat pengiriman permintaan pembuatan cluster hingga
saat cluster mulai dihapus. Berikan durasi dalam
format IntegerUnit, dengan unitnya dapat berupa "s, m, h, d"
(detik, menit, jam, hari). Contoh: "30m": 30 menit dari sekarang;
"1d": 1 hari dari sekarang. |
1 detik | 10 menit | 14 hari |
--no-delete-max-age |
Hanya berlaku untuk perintah update cluster.
Membatalkan penghapusan otomatis cluster oleh setelan
flag delete-max-age atau delete-expiration-time sebelumnya. |
Tidak berlaku | Tidak berlaku | Tidak berlaku |
- Anda dapat meneruskan flag
delete-max-idledengan flagdelete-expiration-timeataudelete-max-agedalam permintaan pembuatan atau pembaruan cluster. Aturan pertama yang menjadi benar akan berlaku untuk menghapus cluster. - Anda dapat meneruskan flag
delete-expiration-timeatau flagdelete-max-ageke perintah pembuatan atau update cluster, tetapi tidak keduanya.
Contoh pembuatan cluster:
gcloud dataproc clusters create CLUSTER_NAME \ --region=REGION \ --delete-max-idle=DURATION \ --delete-expiration-time=TIME \ ... other flags ...
Contoh update cluster:
gcloud dataproc clusters update CLUSTER_NAME \ --region=REGION \ --delete-max-idle=DURATION \ --no-delete-max-age \ ... other flags
REST API
Anda dapat membuat atau memperbarui nilai penghapusan terjadwal pada cluster dengan menetapkan kolom dan nilai ClusterLifecycleConfig Dataproc API yang tercantum dalam tabel berikut sebagai bagian dari permintaan API cluster.create atau cluster.patch Managed Service untuk Apache Spark.
| Kolom API | Deskripsi | Perincian nilai | Nilai min | Nilai maks. |
|---|---|---|---|---|
idleDeleteTtl1 |
Berlaku untuk perintah pembuatan cluster dan update cluster.
Durasi dari saat cluster menjadi tidak aktif setelah
cluster dibuat atau diupdate dan dalam status siap digunakan hingga
saat cluster mulai dihapus. Saat
memperbarui cluster dengan nilai baru, nilai baru harus lebih besar dari nilai yang ditetapkan
sebelumnya.
Berikan durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan
's'. Contoh: "3.5s".
Kirim durasi kosong untuk membatalkan nilai idleDeleteTtl yang ditetapkan sebelumnya. |
1 detik | 5 menit | 14 hari |
autoDeleteTime2 |
Berlaku untuk perintah pembuatan cluster dan update cluster.
Waktu untuk mulai menghapus cluster. Saat memperbarui cluster dengan waktu baru,
waktu baru harus lebih lambat dari waktu yang ditetapkan sebelumnya. Saat memperbarui, jika
nilai kosong ditetapkan untuk autoDeleteTime, penghapusan otomatis
yang ada akan dibatalkan.Berikan stempel waktu dalam format RFC 3339 UTC "Zulu", akurat hingga nanodetik. Contoh: "2014-10-02T15:01:23.045123456Z". |
1 detik | 10 menit dari waktu saat ini | 14 hari dari waktu saat ini |
autoDeleteTtl2 |
Durasi sejak saat pengiriman permintaan pembuatan atau update cluster
hingga saat cluster mulai dihapus. Saat mengupdate cluster,
waktu penghapusan terjadwal yang baru (waktu permintaan update ditambah
durasi baru) harus lebih lambat dari waktu penghapusan cluster yang
ditetapkan sebelumnya. Kirimkan nilai kosong
untuk membatalkan nilai autoDeleteTtl yang ditetapkan sebelumnya.
Berikan durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan 's'.
Contoh: "3.5s". |
1 detik | 10 menit | 14 hari |
- Anda dapat menetapkan atau memperbarui
idleDeleteTtldanautoDeleteTimeatauautoDeleteTtldalam permintaan pembuatan atau pembaruan cluster. Yang pertama menjadi benar akan berlaku untuk menghapus cluster. - Anda dapat menetapkan atau memperbarui
autoDeleteTimeatauautoDeleteTtldalam permintaan Anda, tetapi tidak keduanya.
Melihat setelan cluster Penghapusan Terjadwal
KonsolGoogle Cloud
- Anda dapat melihat setelan penghapusan terjadwal cluster dengan memilih nama cluster dari halaman Clusters Managed Service untuk Apache Spark di konsol Google Cloud .
- Dari halaman detail cluster, pilih tab Configuration. Buka daftar konfigurasi cluster untuk melihat setelan penghapusan terjadwal.
gcloud CLI
Anda dapat menggunakan perintah gcloud dataproc clusters list untuk
mengonfirmasi bahwa penghapusan terjadwal diaktifkan untuk cluster.
gcloud dataproc clusters list \ --region=REGION
... NAME WORKER_COUNT ... SCHEDULED_DELETE CLUSTER_ID NUMBER ... enabled ...
Anda dapat menggunakan perintah gcloud dataproc clusters describe untuk
memeriksa setelan penghapusan terjadwal LifecycleConfig cluster.
gcloud dataproc clusters describe CLUSTER_NAME \ --region=REGION
... lifecycleConfig: autoDeleteTime: '2018-11-28T19:33:48.146Z' idleDeleteTtl: 1800s idleStartTime: '2018-11-28T18:33:48.146Z' ...
autoDeleteTime dan idleDeleteTtl adalah
nilai konfigurasi penghapusan terjadwal yang ditetapkan pada cluster.
Managed Service untuk Apache Spark menghasilkan nilai idleStartTime, yang merupakan
waktu mulai cluster tidak ada aktivitas terbaru. Managed Service untuk Apache Spark menghapus cluster jika cluster tetap tidak aktif pada idleStartTime + idleDeleteTtl.
REST API
Anda dapat membuat permintaan clusters.list untuk mengonfirmasi bahwa penghapusan terjadwal diaktifkan untuk cluster.