ローリングジョブスケジューラ

ローリングジョブスケジューラ

サーバーがたくさんあり、毎日1つのサーバーで同じタスクを実行したいと思います。エンドサーバーでタスクが実行されると、スクリプトはserver1に戻って再起動する必要があります。

これらのタスクは、一日中さまざまなタスクを実行する一連のスクリプトです。

私の考えは、cronを使用してserver1で1日のアクティビティをスケジュールすることです。スクリプトを使用してその日のcrontabを設定し、翌日にcrontabを消去してserver2のアクションを設定します。 「スケジューラ」スクリプト自体は、cronを介して毎日実行されます。

私が悩んでいる問題の1つは、今日のサーバー(または明日のサーバー)を維持し、server9が完了したらserver1にループバックする方法です。永続性のために状態をファイルに保存する必要があると思いますが、必要なことを達成するためにファイルを構造化する方法がわかりません。

どんな提案がありますか?

答え1

cronを単一のサーバー(server1?)に保持し、SSHキーを設定して同じ制御システムでリモートでスクリプトを実行します。

ssh server2 /path/to/script

これにより、タスクはすべて1か所でスケジュールされ、どこでもcronを再生成する必要がなくなります。

関連情報