一、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)下载并安装

 下载 cronsun:https://github.com/shunfei/cronsun/releases (选择最新版本即可)
https://github.com/shunfei/cronsun/releases/download/v0.3.5/cronsun-v0.3.5-linux-amd64.zip 解压后修改 conf 目录下的配置文件:db.json 和 etcd.json,分别修改 MongoDB 和 etcd 的实际地址。
由于是单节点安装。所以不需要进行修改 启动 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 & 启动 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 & 访问前台:http://x.x.x.x:7079/ui/ 默认用户密码: admin@admin.com / admin

2)访问 web界面

四、任务管理的基本使用

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

2)添加任务

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

cronsun任务管理器部署文档的更多相关文章

  1. PPTP部署文档

    PPTP部署文档 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.       欢迎加入:高级运维工程师之路 598432640 前言:这款VPN部署起来特别简单,想对OPENVON配 ...

  2. hadoop2.6.0汇总:新增功能最新编译 32位、64位安装、源码包、API下载及部署文档

    相关内容: hadoop2.5.2汇总:新增功能最新编译 32位.64位安装.源码包.API.eclipse插件下载Hadoop2.5 Eclipse插件制作.连接集群视频.及hadoop-eclip ...

  3. supervisor 部署文档

    supervisor 部署文档 supervisor 需要Python支持,如果不用系统的supervisor,单独安装python python 安装 #依赖 yum install python- ...

  4. centos6 Cacti部署文档

    centos6 Cacti部署文档 1.安装依赖 yum -y install mysql mysql-server mysql-devel httpd php php-pdo php-snmp ph ...

  5. HP DL160 Gen9服务器集群部署文档

    HP DL160 Gen9服务器集群部署文档 硬件配置=======================================================Server        Memo ...

  6. Sqlserver2008安装部署文档

    Sqlserver2008部署文档 注意事项: 如果你要安装的是64位的服务器,并且是新机器.那么请注意,你需要首先需要给64系统安装一个.net framework,如果已经安装此功能,请略过这一步 ...

  7. CDH简易离线部署文档

        CDH 离线简易部署文档       文档说明 本文为开发部署文档,生产环境需做相应调整. 以下操作尽量在root用户下操作,避免权限问题. 目录 文档说明 2 文档修改历史记录 2 目录 3 ...

  8. Ceph分布式存储(luminous)部署文档-ubuntu18-04

    Ceph分布式存储(luminous)部署文档 环境 ubuntu18.04 ceph version 12.2.7 luminous (stable) 三节点 配置如下 node1:1U,1G me ...

  9. rabbitmq 3.7.8基于centos7部署文档

    rabbitmq 3.7.8部署文档 安装erlang 安装依赖环境 yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel ope ...

随机推荐

  1. [USACO07DEC]Sightseeing Cows(负环,0/1分数规划)

    [USACO07DEC]Sightseeing Cows Description Farmer John has decided to reward his cows for their hard w ...

  2. java程序员必知的 8大排序

    Java常用的八种排序算法与代码实现 排序问题一直是程序员工作与面试的重点,今天特意整理研究下与大家共勉!这里列出8种常见的经典排序,基本涵盖了所有的排序算法. 1.直接插入排序 我们经常会到这样一类 ...

  3. maven 自动编译脚本

    在maven工程根目录创建windows批处理脚本文件,例如tool.bat,内容如下 @echo off color 1f :menu echo -------------------------- ...

  4. [BZOJ2600] ricehub

    问题描述 乡间有一条笔直而长的路称为"米道".沿着这条米道上 R 块稻田,每块稻田的坐标均为一个 1 到 L 之间(含 1 和 L)的整数.这些稻田按照坐标以不减的顺序给出,即对于 ...

  5. 【java】Split函数踩坑记

    先看一段代码: String line = "openssh|7.1"; String[] pkg = line.split("|"); System.out. ...

  6. 对vueloader的研究

    vue-loader是webpack的加载器,允许您以称为单文件组件(SFC)的格式创作Vue组件: <template> <div class="example" ...

  7. 19 如何在String和Byte[]对象之间进行转换?

  8. 银联高校极客挑战赛 初赛 第一场 B

    自学图论的码队弟弟 试图写非递归求解,然后TLE了一下午==,全程找不到bug,换成递归,一发AC 判断环写得很丑== #include<bits/stdc++.h> using name ...

  9. 使用sqlalchemy创建单条数据-分层管理代码

    这里主要是如何把整个流程的代码分层管理,方便维护 不拆分层次,整个流程顺下来的代码看这里:sqlAlchemy基本使用 项目结构: model.py用来描述表结构: from sqlalchemy i ...

  10. RESTful三理解

    目录 目录 前言 Web应用的会话状态 Cookie 资源的表现形式 HATEOAS RESTful 资源 URI 前言 最近看了一篇很赞的RESTful博客,传送门:http://www.cnblo ...