Linux - ServerThis forum is for the discussion of Linux Software used in a server related context.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I have a need to manage cron jobs across a bunch of servers - setting the schedule, and having jobs automatically migrate to other servers if the server fails.
I've not had any luck finding something simple to handle this - mostly it seems to be large, complicated installs to handle 1000+ servers in job control. I just need a basic web interface and to handle a few dozen machines, max.
Can anyone recommend something before I bake my own?
Maybe the OP can define “manage cron jobs across a bunch of servers” more precisely. The Webmin module seems to distribute the same cron schedule to all servers, and puppet is more to install machines - none of them have the ability to schedule (batch) jobs across a bunch of machines AFAICS (I never used any of them though).
To schedule (batch) jobs across a cluster there are solutions like PBS/Torque or GridEngine (SGE/OGE) which might be an overkill, and in fact don’t have the ability for recurring cron jobs.
I would suggest to check GNUbatch (commercial support at XiSoft), one can define jobs which should run every day or in whatever interval (which is a cron job in the end, and GNUbatch is more like a replacement for cron than a full blow queuingsystem, as it lacks any prioritization of jobs per user), reschedule them if a run was lost, skip weekends, run the next instance on a remote machine... To avoid oversubscription of a machine, one could use a counter per machine to keep the (at the same time) running jobs under a certain limit.
Maybe the OP can define “manage cron jobs across a bunch of servers” more precisely. The Webmin module seems to distribute the same cron schedule to all servers, and puppet is more to install machines - none of them have the ability to schedule (batch) jobs across a bunch of machines AFAICS (I never used any of them though).
Well as you pointed, you have never used Puppet. Here's a link which was the fourth result from a Google search.
Well as you pointed, you have never used Puppet. Here's a link which was the fourth result from a Google search.
Thanks for the pointer, if I get it right it creates a crontab (or like in the pointed link: individual files) on all or certain nodes for which this class is included. But how can Puppet handle: run this job every 15 minutes on any (i.e. just one) of my 20 nodes in the cluster. It could be the same node like the last time, or any other which is currently free?
As the OP mentioned “having jobs automatically migrate to other servers if the server fails” it would mean to recreate crontab entries on other machines if one machine fails where certain jobs were defined on.
There is a mailing list for GNUBatch too. What errors do get? I remember that I had to install flex, bison, m4 and some other stuff to compile it on openSUSE.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.