操作系统 / 系统运维

定时任务管理系统—Gocron安装部署与使用

温馨提示:本文最后更新于2021-03-02 18:50:06,某些文章具有时效性,若有错误或已失效,请在下方留言或提交工单提交工单
浅时光 · 7月5日 · 2020年 · 本文2562个字,预计阅读7分钟 60207次已读

一、程序介绍


文章来源(Source):浅时光博客

项目地址:https://github.com/ouqiang/gocron

使用Go语言开发的轻量级定时任务集中调度和管理系统, 用于替代Linux-crontab

二、功能特性


  • Web界面管理定时任务
  • crontab时间表达式, 精确到秒
  • 任务执行失败可重试
  • 任务执行超时文章来源(Source):浅时光博客, 强制结束
  • 任务依赖配置, A任务完成后再执行B任务
  • 账户权限控制
  • 任务类型
    • shell任务
      • 在任务节点上执行shell命令, 支持任务同时在多个节点上运行
    • HTTP任务
      • 访问指定的URL地址, 由调度器直接执行, 不依赖任务节点
  • 查看任务执行结果日文章来源(Source):https://www.dqzboy.com
  • 任务执行结果通知, 支持邮件、Slack、Webhook

支持平台

Win原文链接:https://www.dqzboy.comdows、Linux、Mac OS

三、安装部署

1、安装MySQL

1.1:下载安装

  • 需要下载以下几个包文件

mysql-community-servermysql-community-clientmysql-community-commonmysql-community-libs

定时任务管理系统—Gocron安装部署与使用-浅时光博客
  • 将下载的包文件上传到服务器,然后安装
[root@localhost ~]# rpm -ivh mysql-community*

1.2:启动服务

[root@localhost ~]# systemctl start mysqld.service
[root@localhost ~]# systemctl enable mysqld.service

1.3:重置密码

[root@localhost ~]# cat /var/log/mysqld.log | grep 'password'
[root@localhost ~]# mysql -uroot -p

##密码验证策略低要求
mysql> set global validate_password_policy=0; (0或LOW代表低级)
##密码至少要包含的小写字母个数和大写字母个数
mysql> set global validate_password_mixed_case_count=0;

##密码至少要包含的数字个数。
mysql> set global validate_password_number_count=0; 

##密码至少要包含的特殊字符数
mysql> set global validate_password_special_char_count=0; 

##密码长度
mysql> set global validate_password_length=3;

##再次设置密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

1.4:创建数据库

mysql> CREATE DATABASE `gocron` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

2、安装gocron

定时任务管理系统—Gocron安装部署与使用-浅时光博客

2.1:安装Go环境

  • 因为gocron是go语言开发的,运行需要使用到go环境
[root@localhost ~]# go env
-bash: go: 未找到命令

[root@localhost ~]# yum install golang

2.2:下载安装程序

[root@localhost ~]# wget https://github.com/ouqiang/gocron/releases/download/v1.5.3/gocron-v1.5.3-linux-amd64.tar.gz
[root@localhost ~]# tar -zxvf gocron-v1.5.3-linux-amd64.tar.gz -C /usr/local/

2.3:启动服务程序

[root@localhost ~]# cd /usr/local/gocron-linux-amd64
[root@localhost gocron-linux-amd64]# nohup ./gocron web >/tmp/gocron.log 2>&1 &

#默认监听端口为5920
[root@localhost gocron-linux-amd64]# firewall-cmd --permanent --zone=public --add-port=5920/tcp
success
[root@localhost gocron-linux-amd64]# firewall-cmd --reload
success

四、访问页面

  • http://ip:5920
文章来源(Source):浅时光博客
定时任务管理系统—Gocron安装部署与使用-浅时光博客
定时任务管理系统—Gocron安装部署与使用-浅时光博客
定时任务管理系统—Gocron安装部署与使用-浅时光博客

五、安装节点

  • 如果执行方式为shell时,必须在所需执行的主机节点上安装部署gocron-node才可以,默认监听端口为5921;
  • 注意:启动节点不允许通过root账号启动,需创建一个普通用户

1、下载安装

[root@localhost ~]# wget https://github.com/ouqiang/gocron/releases/download/v1.5.3/gocron-node-v1.5.3-linux-amd64.tar.gz

[root@localhost ~]# tar -zxvf gocron-node-v1.5.3-linux-amd64.tar.gz -C /usr/local/

[root@localhost ~]# useradd gocron-user

2、启动服务

[root@localhost ~]# chown -R gocron-user. /usr/local/gocron-node-linux-amd64/

[root@localhost ~]# firewall-cmd --permanent --zone=public --add-port=5921/tcp
success
[root@localhost ~]# firewall-cmd --reload
success

#用普通用户来启动服务
[root@localhost ~]# su - gocron-user -c " cd /usr/local/gocron-node-linux-amd64 && nohup ./gocron-node > /tmp/gocron-node.log 2>&1 &"

六、添加节点

1、加入节点

定时任务管理系统—Gocron安装部署与使用-浅时光博客
定时任务管理系统—Gocron安装部署与使用-浅时光博客
定时任务管理系统—Gocron安装部署与使用-浅时光博客
定时任务管理系统—Gocron安装部署与使用-浅时光博客

2、加入任务

定时任务管理系统—Gocron安装部署与使用-浅时光博客
定时任务管理系统—Gocron安装部署与使用-浅时光博客
定时任务管理系统—Gocron安装部署与使用-浅时光博客
定时任务管理系统—Gocron安装部署与使用-浅时光博客
定时任务管理系统—Gocron安装部署与使用-浅时光博客
定时任务管理系统—Gocron安装部署与使用-浅时光博客
定时任务管理系统—Gocron安装部署与使用-浅时光博客




本文作者:浅时光
原文链接:https://www.dqzboy.com/2720.html
版权声明:知识共享署名-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)协议进行许可
转载时请以超链接形式标明文章原始出处和作者信息

1 条回应

必须 注册 为本站用户, 登录 后才可以发表评论!

  1. boycool未知2020-7-12 · 11:43

    谢谢分享,学习了

本站已稳定运行: | 耗时 0.328 秒 | 查询 44 次 | 内存 13.74 MB