Skip to content

構成例 ​

要件を満たす最も単純な構成を選んでください。構成要素が増えるほど、用意と運用の手間が増えます。

要件構成
ホストの障害時は、手動の復旧で間に合う単一ノード
ホストの障害でスケジュールを止めたくないアクティブ/スタンバイ
ジョブを別のホストやネットワークで動かしたい分散ワーカー
閉域網の中で集中監視とアラートが必要社内に置く Control Plane

単一ノード ​

text
 +--------------------------+
 | Host                     |
 |   dagu start-all         |
 |   (Web UI + scheduler)   |
 |   local disk             |
 +--------------------------+
項目内容
必要なものホスト 1 台
ライセンス1 サーバー
ホスト障害時の影響復旧するまでスケジュールは止まります。
復旧の方法ホストの再起動、または別ホストへのバックアップからの復旧
手順Linux (systemd)、Windows サービス

アクティブ/スタンバイ ​

text
       Host A                         Host B
 +-------------------+          +-------------------+
 | dagu scheduler    |          | dagu scheduler    |
 |   ACTIVE          |          |   STANDBY         |
 | dagu server       |          | dagu server       |
 +---------+---------+          +---------+---------+
           |                              |
           +-------------+  +-------------+
                         v  v
                  Shared storage (NFS)
項目内容
必要なものホスト 2 台、冗長化した共有ストレージ、時刻同期、再起動の仕組み、必要に応じてロードバランサー
ライセンスデータディレクトリを共有する 2 台で 1 サーバー
ホスト障害時の影響既定の設定で 40 秒以内 (起動処理の時間を除く) にスタンバイが引き継ぎます。障害が起きたホストで実行中のジョブは失敗扱いになります。
残るリスク共有ストレージの障害、拠点全体の障害
手順高可用性

分散ワーカー ​

text
 +----------------------------+
 | Dagu server                |
 |   scheduler, coordinator   |
 +-------------+--------------+
               ^  gRPC (mTLS)
       +-------+--------+
       |                |
 +-----+------+   +-----+------+
 | dagu worker|   | dagu worker|
 | labels: A  |   | labels: B  |
 +------------+   +------------+

ワーカーはコーディネーターへ外向きに接続するため、分離されたネットワークでも受信ポートを開ける必要はありません。

項目内容
必要なものサーバー 1 台以上、ワーカー、証明書 (mTLS の場合)
ライセンスDagu サーバーの台数分。ワーカーは数えません。
ワーカー障害時の影響そのワーカーで実行中のジョブが影響を受けます。
手順Distributed Execution (英語)

アクティブ/スタンバイと分散ワーカーは組み合わせられます。Kubernetes の場合は Helm チャートの分散モード (英語) を参照してください。

社内に置く Control Plane ​

text
 +----------------------------+
 | Private Control Plane      |
 | (inside your network)      |
 +-------------+--------------+
               ^  HTTPS (reports)
       +-------+--------+
       |                |
 +-----+------+   +-----+------+
 | Dagu server|   | Dagu server|
 +------------+   +------------+

Enterprise 契約のもとで、ご依頼に応じて提供します。範囲と時期は案件ごとに取り決めます。

項目内容
必要なものControl Plane 用のホスト、PostgreSQL、社内のメールサーバーまたは通知先
ライセンスEnterprise 契約
Dagu サーバー障害時の影響Control Plane はサーバーとは別に動くため、報告が途絶えたことをアラートできます。
Control Plane 障害時の影響アラートは止まりますが、ジョブは動き続けます。
手順閉域網

環境の分離 ​

本番、検証、開発は別のサーバーに分けることを推奨します。手順は Multi-Environment Deployments (英語) を参照してください。

Dagu is open source under the GNU General Public License v3.0.