0 可靠性说明
QLeelulu edited this page 2018-09-21 09:26:06 +08:00
This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

Cron-Node 节点

Cronnode节点是负责调度和执行任务的,对于Cronnode节点提供以下可靠性保障:

  • cronnode被设计成一个常驻进程,追求稳定和高可用。(cronsun在舜飞内部从2017-01月在线上运行至今cronnode都没有崩溃过)
  • cronnodeetcd服务的连接中断了:
    • 断开连接之前已经下发的任务会正常执行;
    • 在断开连接期间新建、修改、删除的任务无法更新到节点;
    • 会自动和etcd进行重连;
    • etcd重新连接上后,会重新加载和该节点相关的全部任务,保证正确性;
  • cronnodeMongoDB数据库的连接中断了:
    • 所有任务依然会正常执行;
    • 在断开连接期间执行完成的任务,日志会因为无法写入到MongoDB而看不到任务的执行记录和任务日志,不影响任务正常执行;
    • 会自动和MongoDB进行重连,重连后执行记录和任务日志会正常写入MongoDB;

Cron-Web 节点

Cronweb节点是负责管理任务、查看任务执行日志的,对于Cronweb节点提供以下可靠性保障:

  • cronweb进程崩溃了:
    • 不影响cronnode节点和任务正常执行;
    • 报警邮件无法发送;
  • cronwebetcd服务的连接中断了:
    • cronweb无法访问;
    • 报警邮件无法发送;
  • cronwebMongoDB服务的连接中断了:
    • cronweb无法访问;
    • 报警邮件无法发送;
  • 可以部署多个cronweb节点,可以访问任一节点正常管理任务和查看日志;