首页 > 技术文章 > cronsun任务管理器部署文档

linu 2019-07-14 09:43 原文

一、cronsun介绍

1)cronsun产生的背景

大量的 crontab 任务散布在各台服务器,带来了很高的维护成本
任务没有按时执行,甚至失败了很久才发现,需要重试或排查
crontab 分散在很多集群上,需要一台一台去看日志分析,头都大了
crontab 存在单点问题,对于不能重复执行的定时任务很伤脑筋

因此,我们非常需要一个集中管理定时任务系统

2)github官网

https://github.com/shunfei/cronsun

3)架构图

cronsun的重要组件:cronsun 主要有 3 个主件,都是通过 etcd 通讯的。cronnode 负责节点的分组及节点的状态,croeweb 是管理任务的、执行结果都可以在上面看

cronsun架构图

 

二、环境准备

1.1)单节点安装etcd服务

下载安装包,下载地址:https://github.com/etcd-io/etcd/releases
wget https://github.com/etcd-io/etcd/releases/download/v3.3.13/etcd-v3.3.13-linux-amd64.tar.gz

解压文件
tar -zxvf etcd-v3.3.13-linux-amd64.tar.gz
cd etcd-v3.3.13-linux-amd64

目录下有两个可执行文件etcd 和 etcdctl
cp etcd /usr/bin/
cp etcdctl /usr/bin/

配置服务
# vim /usr/lib/systemd/system/etcd.service    (添加以下内容)
[Unit]
Description=Etcd Server
After=network.target

[Service]
Type=simple
WorkingDirectory=/var/lib/etcd/
EnvironmentFile=-/etc/etcd/etcd.conf
ExecStart=/usr/bin/etcd

[Install]
WantedBy=multi-user.target

创建工作文件夹
mkdir -p /var/lib/etcd
mkdir -p /etc/etcd


vim /etc/etcd/etcd.conf     (添加以下内容)
#[member]
ETCD_NAME=default
ETCD_DATA_DIR="/var/lib/etcd/default.etcd"
ETCD_LISTEN_CLIENT_URLS="http://127.0.0.1:2379"
ETCD_ADVERTISE_CLIENT_URLS="http://127.0.0.1:2379"

1.2)启动服务。

systemctl daemon-reload
systemctl enable etcd.service
systemctl start etcd.service

测试服务状态:
etcdctl cluster-health
[root@node01 ~]# etcdctl cluster-health
member 8e9e05c52164694d is healthy: got healthy result from http://127.0.0.1:2379
cluster is healthy

 2)单节点mongodb的安装

https://www.cnblogs.com/linu/articles/10135432.html

 三、部署 cronsun 任务管理器

1)下载并安装

1 下载 cronsun:https://github.com/shunfei/cronsun/releases (选择最新版本即可)
https://github.com/shunfei/cronsun/releases/download/v0.3.5/cronsun-v0.3.5-linux-amd64.zip

2 解压后修改 conf 目录下的配置文件:db.json 和 etcd.json,分别修改 MongoDB 和 etcd 的实际地址。
由于是单节点安装。所以不需要进行修改

3 启动 web:./cronweb -conf conf/base.json (若要后台运行则使用 nohup)
nohup /usr/local/cronsun-v0.3.5/cronweb -conf /usr/local/cronsun-v0.3.5/conf/base.json  &

4 启动 node:./cronnode -conf conf/base.json (若要后台运行则使用 nohup)
nohup /usr/local/cronsun-v0.3.5/cronnode -conf /usr/local/cronsun-v0.3.5/conf/base.json  &

5 访问前台:http://x.x.x.x:7079/ui/  默认用户密码: admin@admin.com / admin

2)访问 web界面

 

 四、任务管理的基本使用

1) 查看所以节点,进行分组

 

2)添加任务

 

 相关链接:https://www.cnblogs.com/shawhe/p/10512970.html

推荐阅读