arkmanager / ark-server-tools

Set of server tools used to manage ARK: Survival Evolved servers on Linux
MIT License
678 stars 143 forks source link

Autorestart with backup #1183

Open Sundosia94 opened 3 years ago

Sundosia94 commented 3 years ago

Hello, We have a cluster server with 6 different maps and would like to restart them at night between 4 and 5 am German time. Our servers take a long time to restart when they all restart at the same time, so we would like to have them restart and backup 10 minutes later so they are back up quickly. How do I do that with the cronjob?

klightspeed commented 3 years ago

Simple way would be to have in your crontab (assuming your timezone on the server is set to Europe/Berlin):

0 4 * * * arkmanager backup @server1 restart @server1
10 4 * * * arkmanager backup @server2 restart @server2
20 4 * * * arkmanager backup @server3 restart @server3
30 4 * * * arkmanager backup @server4 restart @server4
40 4 * * * arkmanager backup @server5 restart @server5
50 4 * * * arkmanager backup @server6 restart @server6
Sundosia94 commented 3 years ago

i have do: arkmanager install-cronjob --daily --hour=4 --minute=0 restart @Fjoerdur

but everytime it add in crontab @all instead off @Fjoerdur or other instances

EineWelt commented 3 years ago

Moin moin, es gibt drei Möglichkeiten, die mir jetzt auf die schnelle einfallen, die dein Problem lösen. Vorwort: crontab -e

1) Der arkmanager kann Instancen der Reihe nach mit einem Rimer starten. arkStartDelay=600 in der arkmanager.cfg oder Fjoerdur.cfg. Somit starten die Maps nach 10 Minuten der Reihe nach. Hier kann der Crontab auf @ALL stehen. 0 4 * * * arkmanager restart @all

2) Auch kann die Warnzeit verwendet werden, um die Instancen erst später neu starten zu lassen. arkprecisewarn="true" in der arkmanager.cfg oder Fjoerdur.cfg arkwarnminutes="60" wird natürlich benötigt, solltest du diese Variante bevorzugen. Diese muss auch in der arkmanager.cfg oder Fjoerdur.cfg stehen. Hierfür können die Crontabs auch auf @ALL stehen. 0 4 * * * arkmanager restart --warn @all Somit wartet der arkmanager die Zeit ab, die angegeben wurde, und startet erst dann neu.

3) Die Crontabvariante, wie von @klightspeed bereits vorgeschlagen. Öffne die Crontabs. Dort sollten nun deine Crontabs liegen die "falsch" konfiguriert wurden. Nun ändere einfach @ALL bspw. zu @Fjoerdur. Das beeinflusst die Funktionsweise nicht.

Hier mal ein Beispiel, für einen sauberen Crontab der jeden Tag 4 AM neu startet: 0 4 * * * arkmanager restart --warn @Fjoerdur 10 4 * * * arkmanager restart --warn @2 und so weiter und sofort...

Frohes gelingen.