Home โบ Convert โบ Kubernetes to Spring
Convert Kubernetes cron to Spring
Kubernetes expressions look similar to Spring, but the differences matter. Paste yours below; the result is checked against the original run times.
What changes from Kubernetes to Spring
- Spring has a leading seconds field. The converter adds
0in front so the job fires at the start of the minute. - Kubernetes runs when day-of-month or day-of-week matches, but Spring requires both. If you set both fields, the converter warns you.
Worked examples
| Schedule | Kubernetes | Spring |
|---|---|---|
| every minute | * * * * * | 0 * * * * * |
| every 5 minutes | */5 * * * * | 0 */5 * * * * |
| every 10 minutes | */10 * * * * | 0 */10 * * * * |
| every 15 minutes | */15 * * * * | 0 */15 * * * * |
| every 30 minutes | */30 * * * * | 0 */30 * * * * |
| every hour | 0 * * * * | 0 0 * * * * |
| every 2 hours | 0 */2 * * * | 0 0 */2 * * * |
| every 3 hours | 0 */3 * * * | 0 0 */3 * * * |
Field layout and time zones
minute (0-59), hour (0-23), day-of-month (1-31), month (1-12), day-of-week (0-7, 0 and 7 = Sunday).
Set spec.timeZone (Kubernetes 1.27+) to a name like Asia/Kolkata. Without it the schedule follows the controller's time zone, usually UTC.
second (0-59), minute (0-59), hour (0-23), day-of-month (1-31), month (1-12), day-of-week (0-7, 0 and 7 = Sunday).
Spring evaluates in the server time zone by default. Add zone = "UTC" (or any ZoneId) to @Scheduled to make it explicit.
Go the other way
Convert Spring to Kubernetes, or open the Kubernetes builder or the Spring builder.
Frequently asked questions
How do I convert a Kubernetes cron expression to Spring?
Paste it into the converter above with Kubernetes as the source and Spring as the target. For example, * * * * * becomes 0 * * * * *.
Is every Kubernetes expression convertible to Spring?
Yes for the common schedules we tested (27 of 27), though unusual expressions with special characters might need manual review.
Does Spring run in the same time zone as Kubernetes?
Not necessarily. Conversion changes the syntax, not the time zone. Check where each system evaluates the schedule before you rely on the same clock times.