Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Bahasa Indonesia translation for cron job page #14933

Merged
merged 1 commit into from
Jun 21, 2019
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
58 changes: 58 additions & 0 deletions content/id/docs/concepts/workloads/controllers/cron-jobs.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
---
title: CronJob
content_template: templates/concept
weight: 80
---

{{% capture overview %}}

Suatu CronJob menciptakan [Job](/docs/concepts/workloads/controllers/jobs-run-to-completion/) yang dijadwalkan berdasarkan waktu tertentu.

Satu objek CronJob sepadan dengan satu baris pada _file_ _crontab_ (_cron table_). CronJob tersebut menjalankan suatu pekerjaan secara berkala
pada waktu tertentu, dituliskan dalam format [Cron](https://en.wikipedia.org/wiki/Cron).

{{< note >}}
Seluruh waktu `schedule:` pada _**CronJob**_ mengikuti zona waktu dari _master_ di mana Job diinisiasi.
{{< /note >}}

Untuk panduan dalam berkreasi dengan _cron job_, dan contoh _spec file_ untuk suatu _cron job_, lihat [Menjalankan otomasi _task_ dengan _cron job_](/docs/tasks/job/automated-tasks-with-cron-jobs).

{{% /capture %}}


{{% capture body %}}

## Limitasi _Cron Job_

Suatu _cron job_ menciptakan _kurang lebih_ satu objek Job setiap penjadwalan. Istilah yang digunakan adalah "_kurang lebih_" karena
terdapat beberapa kasus yang menyebabkan dua Job terbuat, atau tidak ada Job sama sekali yang terbuat. Kemungkinan-kemungkinan
seperti itu memang diusahakan untuk tidak sering terjadi, tapi tidak ada jaminan kemungkinan-kemungkinan tersebut tidak akan pernah terjadi.
Oleh karena itu, Job sudah sepantasnya memiliki sifat idempoten.

Jika pengaturan `startingDeadlineSeconds` menggunakan nilai yang besar atau tidak diatur (menggunakan nilai _default_)
dan jika pengaturan `concurrencyPolicy` dijadikan `Allow`, Job yang terbuat akan dijalankan paling tidak satu kali.

CronJob _controller_ memeriksa berapa banyak jadwal yang terlewatkan sejak waktu terakhir eksekusi hingga saat ini. Jika terdapat lebih dari 100 jadwal yang terlewat, maka CronJob _controller_ tidak memulai Job dan mencatat kesalahan:

````
Cannot determine if job needs to be started. Too many missed start time (> 100). Set or decrease .spec.startingDeadlineSeconds or check clock skew.
````

Perlu diingat bahwa jika pengaturan `startingDeadlineSeconds` memiliki suatu nilai (bukan `nil`), CronJob _controller_ akan menghitung berapa banyak Job yang terlewatkan dari sejak `startingDeadlineSeconds` hingga sekarang dan bukan sejak waktu terakhir eksekusi. Misalnya: Jika `startingDeadlineSeconds` memiliki nilai `200`, CronJob _controller_ akan menghitung berapa banyak Job yang terlewatkan dalam 200 detik terakhir.

Suatu CronJob dianggap terlewat jika ia gagal diciptakan pada waktu yang semestinya. Misalnya: Jika pengaturan `concurrencyPolicy` dijadikan `Forbid`
dan suatu CronJob dicoba dijadwalkan saat masih ada penjadwalan sebelumnya yang masih berjalan, maka ia akan dianggap terlewat.

Contoh: Suatu CronJob akan menjadwalkan Job baru tiap satu menit dimulai sejak `08:30:00`, dan `startingDeadlineSeconds` tidak diatur.
Jika CronJob _controller_ tidak aktif dari `08:29:00` sampai `10:21:00`, Job tidak akan dijalankan karena jumlah Job yang terlewat
sudah lebih dari 100.

Sebagai ilustrasi lebih lanjut, misalkan suatu CronJob diatur untuk menjadwalkan Job baru setiap satu menit dimulai sejak `08:30:00`,
dan `startingDeadlineSeconds` memiliki nilai `200`. Jika CronJob _controller_ tidak aktif seperti pada contoh sebelumnya (`08:29:00` sampai `10:21:00`),
Job akan tetap dijalankan pada 10:22:00. Hal ini terjadi karena CronJob _controller_ memeriksa banyaknya jadwal yang terlewatkan pada 200 detik terakhir
(dalam kasus ini: 3 jadwal terlewat), dan bukan dari sejak waktu eksekusi terakhir.

CronJob hanya bertanggung-jawab untuk menciptakan Job yang sesuai dengan jadwalnya sendiri,
dan Job tersebut bertanggung jawab terhadap pengelolaan Pod yang direpresentasikan olehnya.

{{% /capture %}}