Is it a memory issue that forces a need for reboot?
If it is the following routine will help you:
free -m
sync
/proc/sys/vm/drop_caches
free -m
free -m lists current memory usage, the two next commands syncs and frees up memory and cache, then free -m is ran again so that you can see that there has been a load of memory freed.
The advantage with the method above is that it can be done witout stoping any servers, so that your users never notice any downtime while your server reboots.
Another tip is to never allow the total of memory assigned to your Minecraft servers be greater than your physical memory available. For example:
Available phyiscal memory: 4Gb
Possible server / memory assignment configurations:
servers: Assigned memory: Total memory assigned:
4 1Gb each 4Gb
8 .5Gb each 4Gb
6 2*1Gb, 4* .5GB 4Gb
I had a problem with my memory resources beeing gobbled up to the point of servers crashing. After I reduced memory assignments to never exceeed my physical memory max, no servers has crashed.
As for an automated restart this was discussed here: Restarting PC automatically