cronsun分布式任務(wù)系統(tǒng)
cronsun 是一個(gè)分布式任務(wù)系統(tǒng),單個(gè)結(jié)點(diǎn)和 *nix 機(jī)器上的 crontab 近似。支持界面管理機(jī)器上的任務(wù),支持任務(wù)失敗郵件提醒,安裝簡單,使用方便,是替換 crontab 一個(gè)不錯(cuò)的選擇。
cronsun 是為了解決多臺(tái) *nix 機(jī)器上crontab 任務(wù)管理不方便的問題,同時(shí)提供任務(wù)高可用的支持(當(dāng)某個(gè)節(jié)點(diǎn)死機(jī)的時(shí)候可以自動(dòng)調(diào)度到正常的節(jié)點(diǎn)執(zhí)行)。
特性
- 方便對(duì)多臺(tái)服務(wù)器上面的定時(shí)任務(wù)進(jìn)行集中式管理
- 任務(wù)調(diào)度時(shí)間粒度支持到
秒級(jí)別 - 任務(wù)失敗自動(dòng)重試
- 任務(wù)可靠性保障(從N個(gè)節(jié)點(diǎn)里面挑一個(gè)可用節(jié)點(diǎn)來執(zhí)行任務(wù))
- 簡潔易用的管理后臺(tái),支持多語言
- 任務(wù)日志查看
- 任務(wù)失敗郵件告警(也支持自定義http告警接口)
- 用戶驗(yàn)證與授權(quán) (默認(rèn)賬號(hào)密碼: [email protected] / admin)
- 可靠性說明
架構(gòu)
[web] | -------------------------- (add/del/update/exec jobs)| |(query job exec result) [etcd] [mongodb] | ^ -------------------- | | | | | [node.1] [node.2] [node.n] | (job exec fail)| | | | [send mail]<-----------------------------------------(job exec result)
安全性
cronsun 是在管理后臺(tái)添加任務(wù)的,所以一旦管理后臺(tái)泄露出去了,則存在一定的危險(xiǎn)性,所以cronsun支持security.json的安全設(shè)置:
{
"open": true,
"#users": "允許選擇運(yùn)行腳本的用戶",
"users": [
"www", "db"
],
"#ext": "允許添加以下擴(kuò)展名結(jié)束的腳本",
"ext": [
".cron.sh", ".cron.py"
]
}
如上設(shè)置開啟安全限制,則添加和執(zhí)行任務(wù)的時(shí)候只允許選擇配置里面指定的用戶來執(zhí)行腳本,并且腳本的擴(kuò)展名要在配置的腳本擴(kuò)展名限制列表里面。
評(píng)論
圖片
表情
